From e5f140f0c1d7daa004f2e39f26bb395fb9f0cb3e Mon Sep 17 00:00:00 2001 From: Christian Zufferey Date: Sun, 5 May 2019 11:27:42 +0200 Subject: [PATCH] =?UTF-8?q?Pleins=20d'ajouts=20;-)=20*=20Ajout=C3=A9=20le?= =?UTF-8?q?=20dossier=20zpackage=20contenant=20tout=20ce=20qu'il=20faut=20?= =?UTF-8?q?pour=20bien=20d=C3=A9buter=20un=20nouveau=20projet=20NodeMCU=20?= =?UTF-8?q?*=20Ajout=C3=A9=20un=20dossier,=20g=C3=A9n=C3=A9rateur=20de=20s?= =?UTF-8?q?ignaux=20pour=20le=20workshop=20sur=20l'oscilloscope=20*=20Rang?= =?UTF-8?q?=C3=A9=20le=20dossier=20genefunc=20*=20Ajout=C3=A9=20le=20dossi?= =?UTF-8?q?er=20AD9833=20pour=20commencer=20=C3=A0=20travailler=20avec=20l?= =?UTF-8?q?e=20module=20g=C3=A9n=C3=A9rateur=20de=20fonction=20AD9833?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Genefunc/AD9833/README.md | 15 ++ Genefunc/AD9833/boot.lua | 32 ++++ Genefunc/{ => AD9833}/flash_led_xfois.lua | 0 .../{ => AD9833}/goodies/a_tst_variables.lua | 0 Genefunc/{ => AD9833}/goodies/rm_files.lua | 0 Genefunc/{ => AD9833}/goodies/wifi_off.lua | 0 Genefunc/{ => AD9833}/initz.lua | 0 Genefunc/AD9833/led_rgb.lua | 37 ++++ Genefunc/{ => AD9833}/set_time.lua | 0 .../Capture d’écran 2019-04-19 à 22.20.27.png | Bin 0 -> 77436 bytes .../Capture d’écran 2019-04-20 à 09.05.41.png | Bin 0 -> 43654 bytes Genefunc/AD9833/simulation/échelle sonde.xlsx | Bin 0 -> 9125 bytes Genefunc/AD9833/t1.csv | 27 +++ Genefunc/{ => AD9833}/telnet_srv2.lua | 0 Genefunc/{ => AD9833}/web_ide2.lua | 0 Genefunc/AD9833/web_srv2.lua | 77 +++++++++ Genefunc/{ => AD9833}/wifi_ap_start.lua | 0 Genefunc/{ => AD9833}/wifi_cli_conf.lua | 0 Genefunc/{ => AD9833}/wifi_cli_start.lua | 0 Genefunc/{ => AD9833}/wifi_get_ip.lua | 0 Genefunc/{ => AD9833}/wifi_info.lua | 0 Genefunc/AD9833/z_index.html | 20 +++ Genefunc/AD9833/z_page1.html | 26 +++ Genefunc/AD9833/z_page2.html | 51 ++++++ Genefunc/AD9833/z_page3.html | 51 ++++++ Genefunc/{ => serout}/a_gene1.lua | 0 Genefunc/{ => serout}/boot.lua | 0 Genefunc/serout/flash_led_xfois.lua | 37 ++++ Genefunc/serout/goodies/a_tst_variables.lua | 6 + Genefunc/serout/goodies/rm_files.lua | 12 ++ Genefunc/serout/goodies/wifi_off.lua | 9 + Genefunc/serout/initz.lua | 52 ++++++ Genefunc/serout/set_time.lua | 29 ++++ Genefunc/serout/telnet_srv2.lua | 87 ++++++++++ Genefunc/serout/web_ide2.lua | 159 ++++++++++++++++++ Genefunc/{ => serout}/web_srv2.lua | 0 Genefunc/serout/wifi_ap_start.lua | 19 +++ Genefunc/serout/wifi_cli_conf.lua | 20 +++ Genefunc/serout/wifi_cli_start.lua | 20 +++ Genefunc/serout/wifi_get_ip.lua | 12 ++ Genefunc/serout/wifi_info.lua | 31 ++++ .../guirlandes noël/a_guirlande.lua | 4 +- LED_RGB_WS2812/guirlandes noël/boot.lua | 13 +- .../Capture d’écran 2019-04-19 à 22.20.27.png | Bin 0 -> 77436 bytes .../Capture d’écran 2019-04-20 à 09.05.41.png | Bin 0 -> 43654 bytes No_linear/simulation/échelle sonde.xlsx | Bin 0 -> 9125 bytes Tests/a_tst1_serial.lua | 17 ++ Workshop/oscilloscope/tst_oscillo/README.md | 21 +++ Workshop/oscilloscope/tst_oscillo/a_gene1.lua | 27 +++ .../tst_oscillo/a_tst1_serial.lua | 21 +++ Workshop/oscilloscope/tst_oscillo/boot.lua | 35 ++++ .../tst_oscillo/flash_led_xfois.lua | 37 ++++ .../tst_oscillo/goodies/a_tst_variables.lua | 6 + .../tst_oscillo/goodies/rm_files.lua | 12 ++ .../tst_oscillo/goodies/set_time.lua | 29 ++++ .../oscilloscope/tst_oscillo/goodies/t1.csv | 27 +++ .../tst_oscillo/goodies/telnet_srv2.lua | 87 ++++++++++ .../tst_oscillo/goodies/web_ide2.lua | 159 ++++++++++++++++++ .../tst_oscillo/goodies/web_srv2.lua | 77 +++++++++ .../tst_oscillo/goodies/wifi_ap_start.lua | 19 +++ .../tst_oscillo/goodies/wifi_cli_conf.lua | 20 +++ .../tst_oscillo/goodies/wifi_cli_start.lua | 20 +++ .../tst_oscillo/goodies/wifi_get_ip.lua | 12 ++ .../tst_oscillo/goodies/z_index.html | 20 +++ .../tst_oscillo/goodies/z_page1.html | 26 +++ .../tst_oscillo/goodies/z_page2.html | 51 ++++++ .../tst_oscillo/goodies/z_page3.html | 51 ++++++ Workshop/oscilloscope/tst_oscillo/initz.lua | 52 ++++++ Workshop/oscilloscope/tst_oscillo/led_rgb.lua | 37 ++++ .../Capture d’écran 2019-04-19 à 22.20.27.png | Bin 0 -> 77436 bytes .../Capture d’écran 2019-04-20 à 09.05.41.png | Bin 0 -> 43654 bytes .../tst_oscillo/simulation/échelle sonde.xlsx | Bin 0 -> 9125 bytes .../oscilloscope/tst_oscillo/wifi_info.lua | 31 ++++ .../oscilloscope/tst_oscillo/wifi_off.lua | 9 + zpackage/README.md | 12 ++ zpackage/boot.lua | 32 ++++ zpackage/flash_led_xfois.lua | 37 ++++ zpackage/goodies/a_tst_variables.lua | 6 + zpackage/goodies/rm_files.lua | 12 ++ zpackage/goodies/wifi_off.lua | 9 + zpackage/initz.lua | 52 ++++++ zpackage/led_rgb.lua | 37 ++++ zpackage/set_time.lua | 29 ++++ .../Capture d’écran 2019-04-19 à 22.20.27.png | Bin 0 -> 77436 bytes .../Capture d’écran 2019-04-20 à 09.05.41.png | Bin 0 -> 43654 bytes zpackage/simulation/échelle sonde.xlsx | Bin 0 -> 9125 bytes zpackage/t1.csv | 27 +++ zpackage/telnet_srv2.lua | 87 ++++++++++ zpackage/web_ide2.lua | 159 ++++++++++++++++++ zpackage/web_srv2.lua | 77 +++++++++ zpackage/wifi_ap_start.lua | 19 +++ zpackage/wifi_cli_conf.lua | 20 +++ zpackage/wifi_cli_start.lua | 20 +++ zpackage/wifi_get_ip.lua | 12 ++ zpackage/wifi_info.lua | 31 ++++ zpackage/z_index.html | 20 +++ zpackage/z_page1.html | 26 +++ zpackage/z_page2.html | 51 ++++++ zpackage/z_page3.html | 51 ++++++ 99 files changed, 2567 insertions(+), 8 deletions(-) create mode 100644 Genefunc/AD9833/README.md create mode 100644 Genefunc/AD9833/boot.lua rename Genefunc/{ => AD9833}/flash_led_xfois.lua (100%) rename Genefunc/{ => AD9833}/goodies/a_tst_variables.lua (100%) rename Genefunc/{ => AD9833}/goodies/rm_files.lua (100%) rename Genefunc/{ => AD9833}/goodies/wifi_off.lua (100%) rename Genefunc/{ => AD9833}/initz.lua (100%) create mode 100644 Genefunc/AD9833/led_rgb.lua rename Genefunc/{ => AD9833}/set_time.lua (100%) create mode 100644 Genefunc/AD9833/simulation/Capture d’écran 2019-04-19 à 22.20.27.png create mode 100644 Genefunc/AD9833/simulation/Capture d’écran 2019-04-20 à 09.05.41.png create mode 100644 Genefunc/AD9833/simulation/échelle sonde.xlsx create mode 100644 Genefunc/AD9833/t1.csv rename Genefunc/{ => AD9833}/telnet_srv2.lua (100%) rename Genefunc/{ => AD9833}/web_ide2.lua (100%) create mode 100644 Genefunc/AD9833/web_srv2.lua rename Genefunc/{ => AD9833}/wifi_ap_start.lua (100%) rename Genefunc/{ => AD9833}/wifi_cli_conf.lua (100%) rename Genefunc/{ => AD9833}/wifi_cli_start.lua (100%) rename Genefunc/{ => AD9833}/wifi_get_ip.lua (100%) rename Genefunc/{ => AD9833}/wifi_info.lua (100%) create mode 100644 Genefunc/AD9833/z_index.html create mode 100644 Genefunc/AD9833/z_page1.html create mode 100644 Genefunc/AD9833/z_page2.html create mode 100644 Genefunc/AD9833/z_page3.html rename Genefunc/{ => serout}/a_gene1.lua (100%) rename Genefunc/{ => serout}/boot.lua (100%) create mode 100644 Genefunc/serout/flash_led_xfois.lua create mode 100644 Genefunc/serout/goodies/a_tst_variables.lua create mode 100644 Genefunc/serout/goodies/rm_files.lua create mode 100644 Genefunc/serout/goodies/wifi_off.lua create mode 100644 Genefunc/serout/initz.lua create mode 100644 Genefunc/serout/set_time.lua create mode 100644 Genefunc/serout/telnet_srv2.lua create mode 100644 Genefunc/serout/web_ide2.lua rename Genefunc/{ => serout}/web_srv2.lua (100%) create mode 100644 Genefunc/serout/wifi_ap_start.lua create mode 100644 Genefunc/serout/wifi_cli_conf.lua create mode 100644 Genefunc/serout/wifi_cli_start.lua create mode 100644 Genefunc/serout/wifi_get_ip.lua create mode 100644 Genefunc/serout/wifi_info.lua create mode 100644 No_linear/simulation/Capture d’écran 2019-04-19 à 22.20.27.png create mode 100644 No_linear/simulation/Capture d’écran 2019-04-20 à 09.05.41.png create mode 100644 No_linear/simulation/échelle sonde.xlsx create mode 100644 Tests/a_tst1_serial.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/README.md create mode 100644 Workshop/oscilloscope/tst_oscillo/a_gene1.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/a_tst1_serial.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/boot.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/flash_led_xfois.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/a_tst_variables.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/rm_files.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/set_time.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/t1.csv create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/telnet_srv2.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/web_ide2.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/web_srv2.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/wifi_ap_start.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/wifi_cli_conf.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/wifi_cli_start.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/wifi_get_ip.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/z_index.html create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/z_page1.html create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/z_page2.html create mode 100644 Workshop/oscilloscope/tst_oscillo/goodies/z_page3.html create mode 100644 Workshop/oscilloscope/tst_oscillo/initz.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/led_rgb.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/simulation/Capture d’écran 2019-04-19 à 22.20.27.png create mode 100644 Workshop/oscilloscope/tst_oscillo/simulation/Capture d’écran 2019-04-20 à 09.05.41.png create mode 100644 Workshop/oscilloscope/tst_oscillo/simulation/échelle sonde.xlsx create mode 100644 Workshop/oscilloscope/tst_oscillo/wifi_info.lua create mode 100644 Workshop/oscilloscope/tst_oscillo/wifi_off.lua create mode 100644 zpackage/README.md create mode 100644 zpackage/boot.lua create mode 100644 zpackage/flash_led_xfois.lua create mode 100644 zpackage/goodies/a_tst_variables.lua create mode 100644 zpackage/goodies/rm_files.lua create mode 100644 zpackage/goodies/wifi_off.lua create mode 100644 zpackage/initz.lua create mode 100644 zpackage/led_rgb.lua create mode 100644 zpackage/set_time.lua create mode 100644 zpackage/simulation/Capture d’écran 2019-04-19 à 22.20.27.png create mode 100644 zpackage/simulation/Capture d’écran 2019-04-20 à 09.05.41.png create mode 100644 zpackage/simulation/échelle sonde.xlsx create mode 100644 zpackage/t1.csv create mode 100644 zpackage/telnet_srv2.lua create mode 100644 zpackage/web_ide2.lua create mode 100644 zpackage/web_srv2.lua create mode 100644 zpackage/wifi_ap_start.lua create mode 100644 zpackage/wifi_cli_conf.lua create mode 100644 zpackage/wifi_cli_start.lua create mode 100644 zpackage/wifi_get_ip.lua create mode 100644 zpackage/wifi_info.lua create mode 100644 zpackage/z_index.html create mode 100644 zpackage/z_page1.html create mode 100644 zpackage/z_page2.html create mode 100644 zpackage/z_page3.html diff --git a/Genefunc/AD9833/README.md b/Genefunc/AD9833/README.md new file mode 100644 index 0000000..e034f1f --- /dev/null +++ b/Genefunc/AD9833/README.md @@ -0,0 +1,15 @@ +# AD9833, générateur de fonctions sinus, triangle et carré + +## Essais de pilotage d'un AD9833 via le bus SPI du NodeMCU + +Il n'y a pas de lib NodeMCU pour le AD9833, mais c'est relativement simple de le piloter par le bus SPI + + + + + + + + + +zf190504.1126 diff --git a/Genefunc/AD9833/boot.lua b/Genefunc/AD9833/boot.lua new file mode 100644 index 0000000..917e172 --- /dev/null +++ b/Genefunc/AD9833/boot.lua @@ -0,0 +1,32 @@ +-- Scripts à charger après le boot pour démarrer son appli + +print("\n boot.lua zf19422.1102 \n") + +function heartbeat() + f= "flash_led_xfois.lua" if file.exists(f) then dofile(f) end + flash_led_xfois() + boottimer1=tmr.create() + tmr.alarm(boottimer1, 1*1000, tmr.ALARM_AUTO, function() + xfois =2 + blink_LED () + end) +end + +f= "led_rgb.lua" if file.exists(f) then dofile(f) end +f= "wifi_ap_start.lua" if file.exists(f) then dofile(f) end +f= "wifi_cli_conf.lua" if file.exists(f) then dofile(f) end +f= "wifi_cli_start.lua" if file.exists(f) then dofile(f) end +f= "telnet_srv2.lua" if file.exists(f) then dofile(f) end +f= "web_ide2.lua" if file.exists(f) then dofile(f) end +f= "web_srv2.lua" if file.exists(f) then dofile(f) end +--f= "set_time.lua" if file.exists(f) then dofile(f) end +--f= "dsleep.lua" if file.exists(f) then dofile(f) end +f= "a_no_linear.lua" if file.exists(f) then dofile(f) end + +f=nil +heartbeat=nil +--heartbeat() + + + + diff --git a/Genefunc/flash_led_xfois.lua b/Genefunc/AD9833/flash_led_xfois.lua similarity index 100% rename from Genefunc/flash_led_xfois.lua rename to Genefunc/AD9833/flash_led_xfois.lua diff --git a/Genefunc/goodies/a_tst_variables.lua b/Genefunc/AD9833/goodies/a_tst_variables.lua similarity index 100% rename from Genefunc/goodies/a_tst_variables.lua rename to Genefunc/AD9833/goodies/a_tst_variables.lua diff --git a/Genefunc/goodies/rm_files.lua b/Genefunc/AD9833/goodies/rm_files.lua similarity index 100% rename from Genefunc/goodies/rm_files.lua rename to Genefunc/AD9833/goodies/rm_files.lua diff --git a/Genefunc/goodies/wifi_off.lua b/Genefunc/AD9833/goodies/wifi_off.lua similarity index 100% rename from Genefunc/goodies/wifi_off.lua rename to Genefunc/AD9833/goodies/wifi_off.lua diff --git a/Genefunc/initz.lua b/Genefunc/AD9833/initz.lua similarity index 100% rename from Genefunc/initz.lua rename to Genefunc/AD9833/initz.lua diff --git a/Genefunc/AD9833/led_rgb.lua b/Genefunc/AD9833/led_rgb.lua new file mode 100644 index 0000000..7a5d396 --- /dev/null +++ b/Genefunc/AD9833/led_rgb.lua @@ -0,0 +1,37 @@ +-- Scripts juste pour allumer ou éteindre une LED sur un ruban RGB +-- tout sur la couleur: https://www.w3schools.com/colors/default.asp +-- roue des couleurs: https://iro.js.org/?ref=oldsite + +print("\n led_rgb.lua zf190303.1436 \n") + +nbleds=3 +ws2812.init() +myLedStrip = ws2812.newBuffer(nbleds, 3) + +function RGB_clear() + myLedStrip:fill(0, 0, 0) ws2812.write(myLedStrip) +end + +function RGB_reform(R1, G1, B1) --conversion de RGB à BRG + rR1=B1 rG1=R1 rB1=G1 +end + +function zled_rgb(num_led, R1, G1, B1, zpower) + RGB_reform(R1, G1, B1) + myLedStrip:set(num_led, rR1*zpower, rG1*zpower, rB1*zpower) + ws2812.write(myLedStrip) +end + +function zled_write() + ws2812.write(myLedStrip) +end + + +RGB_clear() + +--[[ +zled_rgb(1,255,0,0,1) +zled_rgb(2,0,255,0,1) +zled_rgb(2,0,255,0,0.05) +zled_rgb(3,0,0,255,1) +]] diff --git a/Genefunc/set_time.lua b/Genefunc/AD9833/set_time.lua similarity index 100% rename from Genefunc/set_time.lua rename to Genefunc/AD9833/set_time.lua diff --git a/Genefunc/AD9833/simulation/Capture d’écran 2019-04-19 à 22.20.27.png b/Genefunc/AD9833/simulation/Capture d’écran 2019-04-19 à 22.20.27.png new file mode 100644 index 0000000000000000000000000000000000000000..f906daa3d6111b3261fa0e180baf91dcb27da2de GIT binary patch literal 77436 zcmb5Uby!@@vo4AT4;I`#xVuY$;10nF?(Po3-QC^Y-Q9z`ySofr^4sU^{gLmS=iWPi z%rmpr>h4w5C2zgeK{8SzaL}00KtMon-$jMwfPlczfPg?OAV0ldIp#kC0RlozFcuV) z`7S7kFJohAU~Hxj1f=2@rvk1pJ5jTKZoVa#aAtuJDcsy5e>A;HfKNyu_7#Z`GTRHp z$1B)N8<8+u^lKIp()3q+0`l{x>!6M|=lxd4wbYvXXLegdLqkUcM?+MgCy|Ftd|q^L zpjTiW0)r)!6P9|1lLKQQU@<=6FF>EqF)?#Ze*Of4yxD)wsAU$4B%O4P(rSL)e|w{p zZEgx^1_4S!s0>jnEa3&_C9Wka=O@qs>hy(lD<7=P)M5+pDiVbJgk;r6d-90I`{<|P zvEA;eM>YBz>H!7_U5<;V7a1s85hR1Vdp0IBAeK(;i=tPGBM^|n3RvmRk)I=|SNfz^ zWrybmty_}UqsD9Az%{R3GxlNcHh09udDDv^I^6jrKCj#FH(T~s%d2~sH^xtBSy3*2 z2Z;d8^ZDk-Pe*v0KxjnUybH^x4U!#|%8lW>cqf>}7WWV>o6I*6Pfr*aFI~86s?8!U z-FDQk8dIGNqSms|*9{phTR;cHk;qG= zRSi)Jw?J+9-T~fIg|qW9?oi9t+Y<7ge%AH8R0#m_;kCOI}V3+~H=S~W=W8>+(QU#<9 zRkb9%hlz`HnG*1D>kHQFg)Ia6sZ%Tv&jTNX*o#RgqXbAY6C%_byb?UT6U7PG69I&< z%NPMZnjf2}D7n{bKPY2Z0!T%?Jz!k)gf1vu0!nV?XKh&u9KT_-uz~;-i{HQ;7EjDJcLm z>1c%ZDIlu5P=|_6bAdjQN&+PxzQ&8alS`+o(ntmA1c?e>38V$a)T^$0t@D!(awW+E zDR$@gjasYEjgac7<)2yom%F$(2rd{e6r5;U!8AcF{T;j4d&o9ME^xr0y#*_Ygb<)1 zaek3>qacQ|`HG6D3o77aBG4k7BgO5;_y=60&B0&4$fZ6B-k0 z6Jiu{?Tzhq>kaNj?d9pc>~-#C?#1cN={+VUCQc=`AO9*r(_AsUdtZKJaSFAF4+s>9?Mo#HC=1?)pFwaVw?VgYx>LAQ z1MmSfpq##>zO;g*fy4c;$4d zzI(Xy*fla>I_8?*5apO2kuIG;n_LlW8H+bkF^V^;)y<3Vg%pW$fzn7bNd}1=i*$oT zg>Zu61N9xo8Ab!`2u&Dz1PTH&0TMnWGPp2UC{Q6tB6vC&GmtcpCD?;9; z{k)~z&$;@!g1M%-XnKwMsru0R{`y7wl6o`xT0;c8zjwBF(g#lm#YX~$cq6rB5o9kE z3l$Q1yBxa#y=BNV!KuMceLwr4NE}EE^HRi+hp~s9c9C|;QD{(D;~3)D6@eA;W?PEa zfA{_t_ow;tQNlP(~|8P|C}0-EfPP_T99p6zweV! ztz14|-Ozl`e9nxAlYzy<>lWrd;tmfe1(*QnU&mi1ffaz;foVa0fJ%ekK|q0%KuCg( zKxjc}!cD=G!}tl{2;lk2A|s`pS-oD^ZpI*rA%Y_=M=3?w7krflPdy4p3Ka`V4w(yX z$MFrc4m0K)v*vic(JM7EyTmvM9Z9NZD{stgOsZKjq}&SHcHdqn4J6ScF(XzbV| zPLoXLDR3{RNTOmVc7AB>e#AmUKx?JF$;Fl)l737&ihtseq@rdu=Urt6+F2}Cazq4Xa!3-sKQ?>ZIE%$ zHFhG+lil+zdA_a-q|RqaV6Qv28*hHKyn|AXytt{$hUm2aO!7PhFSsrQOUy~!MqD-z zF|Vef)WUu(zRkTLw2G?iB$F%CExWsPs}CoM(~%;HlCfA@aZ?e-@$~#o(NuxA7_o@F zJg-c$1>($aU9I)p&GW$f)wiBwu{k+_3m)d!`nCv8Mo^*0Bu9C>muOi8An77$J_bE@ z8}SV#tp`JPC8H71%e&hv*Kk5 zr)kA$6I$f$F4H9Ivp1@D_S;y8tZ=JxtGAYUYjgLa_e?j#H#|o%$EIhzQ*S3}S1oh* znCDub4?eeIFkznHRbxNVnelR6cAfUTh;&4lW)Sk6hNa?s3(pUi4c!fAj7V@peNg8l z;J&nz)2((Lb~DjivUfQYKS%&1<^DJ^JHuXHNplW*B!f|faStIwGmQ6%zl)FQkn^B^ z>3=)j3?3G{FCIG@RUKT~yuY#czrBJR3agil8M~x@D{I3mT83Rl;jHFNYnf}Yb&YyH z0JMU7`|f2t@ru9$;Ng8Q2p&A;fZ4LTxVV5GG^GZS&44=*uMDY` zs@K*%H{rb*yV-49aG`Kff6=y&hn$F-ikOUqi~NZH^t#|$#eXS{BtNiEoRHTpZaHK& za)u<8W$uSZ#`2|uvW(KQ@T9P7c8D3Bsj2Q)9f|#pUED3xO�~EL@mGSeZnsBw+04 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
uewGScSO#WZA^CS8k*LA4^6*`Thh0Y(?B&CO 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

S9vEo=FH;p%dQjkVh_k!o-!v!4|10gqN` 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 s>s$5Up_1wa6dgH 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 Sx&Qzw^yLRtZ!F-?PyYv15AI0- literal 0 HcmV?d00001 diff --git a/Genefunc/AD9833/t1.csv b/Genefunc/AD9833/t1.csv new file mode 100644 index 0000000..7dc8514 --- /dev/null +++ b/Genefunc/AD9833/t1.csv @@ -0,0 +1,27 @@ +ohm,% +33,100 +36,96.77419355 +41,92.74193548 +45,88.70967742 +52,84.67741935 +56,80.64516129 +61,76.61290323 +67,72.58064516 +72,68.5483871 +79,64.51612903 +83,60.48387097 +91,56.4516129 +97,52.41935484 +104,48.38709677 +112,44.35483871 +117,40.32258065 +121,36.29032258 +128,32.25806452 +132,28.22580645 +139,24.19354839 +150,20.16129032 +166,16.12903226 +191,12.09677419 +207,8.064516129 +224,4.032258065 +240,0 \ No newline at end of file diff --git a/Genefunc/telnet_srv2.lua b/Genefunc/AD9833/telnet_srv2.lua similarity index 100% rename from Genefunc/telnet_srv2.lua rename to Genefunc/AD9833/telnet_srv2.lua diff --git a/Genefunc/web_ide2.lua b/Genefunc/AD9833/web_ide2.lua similarity index 100% rename from Genefunc/web_ide2.lua rename to Genefunc/AD9833/web_ide2.lua diff --git a/Genefunc/AD9833/web_srv2.lua b/Genefunc/AD9833/web_srv2.lua new file mode 100644 index 0000000..a7b5953 --- /dev/null +++ b/Genefunc/AD9833/web_srv2.lua @@ -0,0 +1,77 @@ +-- petit script de serveur WEB avec Active Server Page ZYX + +print("\n web_srv2.lua zf190422.1135 \n") + +ztemp=12 + +-- envoie sur le port ouvert mais depuis l'environnement global ! +function zout(zstring) + zzclient:send(zstring) -- envoie le résultat du code lua inline +end + +-- envoie un fichier HTML sur le port. ATTENTION: longueur de la ligne maximale de 1'024 bytes ! +function send_file(zclient, zfilename) + print("start send html...") + zclient:send("HTTP/1.1 200 OK\n") + zclient:send("Content-Type: text/html\n\n") + zzclient = zclient -- export le port sur l'environnement global ! + if zfilename == "" then zfilename = "z_index.html" end + file_web = file.open(zfilename, "r") + if file_web then + repeat + local line = file_web:read('\n') + if line then + if string.find(line, "<%%") then +-- print("start lua...") + flag_lua_code = true -- bascule sur le code lua inline + lua_code = "" + elseif string.find(line, "%%>") then +-- print("stop lua...") + flag_lua_code = false -- revient sur le code HTML +-- print("Et voici le code lua inline:\n"..lua_code) + loadstring(lua_code)() --on exécute ici le code lua inline ! + elseif flag_lua_code then +-- print(line) + lua_code = lua_code..line -- récupère le code lua inline + else + zclient:send(line) -- envoie le code HTML + end + end + until not line + file_web:close() file_web = nil + else + zclient:send("

"..zfilename.." not found - 404 error

Home
") + end +end + + +srv = net.createServer() +srv:listen(80, function(conn) + conn:on("receive", function(client, request) + _, _, method, path, vars = string.find(request, "([A-Z]+) (.+)?(.+) HTTP") + + print("request: \n---\n"..request.."---") +-- print("method: ", method) print("path: ", path) print("vars: ", vars) + + if not string.find(request, "/favicon.ico") then + print("coucou") + if (method == nil) then + _, _, method, path = string.find(request, "([A-Z]+) (.+) HTTP") + end + print("method: ", method) print("path: ", path) print("vars: ", vars) + _GET = {} + if (vars ~= nil) then + for k, v in string.gmatch(vars, "(%w+)=(%w+)&*") do + _GET[k] = v + print(k..": "..v) + end + end + file_html=string.gsub(path, "/", "") + -- print("file_html: ",file_html) + send_file(client, file_html) + end + end) + conn:on("sent", function(c) c:close() end) +end) + + diff --git a/Genefunc/wifi_ap_start.lua b/Genefunc/AD9833/wifi_ap_start.lua similarity index 100% rename from Genefunc/wifi_ap_start.lua rename to Genefunc/AD9833/wifi_ap_start.lua diff --git a/Genefunc/wifi_cli_conf.lua b/Genefunc/AD9833/wifi_cli_conf.lua similarity index 100% rename from Genefunc/wifi_cli_conf.lua rename to Genefunc/AD9833/wifi_cli_conf.lua diff --git a/Genefunc/wifi_cli_start.lua b/Genefunc/AD9833/wifi_cli_start.lua similarity index 100% rename from Genefunc/wifi_cli_start.lua rename to Genefunc/AD9833/wifi_cli_start.lua diff --git a/Genefunc/wifi_get_ip.lua b/Genefunc/AD9833/wifi_get_ip.lua similarity index 100% rename from Genefunc/wifi_get_ip.lua rename to Genefunc/AD9833/wifi_get_ip.lua diff --git a/Genefunc/wifi_info.lua b/Genefunc/AD9833/wifi_info.lua similarity index 100% rename from Genefunc/wifi_info.lua rename to Genefunc/AD9833/wifi_info.lua diff --git a/Genefunc/AD9833/z_index.html b/Genefunc/AD9833/z_index.html new file mode 100644 index 0000000..dd689c8 --- /dev/null +++ b/Genefunc/AD9833/z_index.html @@ -0,0 +1,20 @@ + + + + + + ESP8266 home page + + + +

ESP8266 home page 190422.1052

+

Différentes pages HTML:

+

+ Page 1, affichage de la température dynamique en code Lua inline.
+ Page 2, tableau dynamique écrit en Lua inline.
+ Page 3, affichage du capteur non linéaire corrigé.
+ Page qui n'existe pas !
+

+ + + diff --git a/Genefunc/AD9833/z_page1.html b/Genefunc/AD9833/z_page1.html new file mode 100644 index 0000000..c0bd757 --- /dev/null +++ b/Genefunc/AD9833/z_page1.html @@ -0,0 +1,26 @@ + + + + + + ESP8266 page 1 + + + +

ESP8266 page 1 190127.1445

+
+ Coucou c'est la page 1 !
+ Retour à la home page...


+ +La température est: + +<% +ztemp=ztemp+1 +zout(ztemp.."°C") +%> + +
Mais il fait encore trop froid !
+ + + + diff --git a/Genefunc/AD9833/z_page2.html b/Genefunc/AD9833/z_page2.html new file mode 100644 index 0000000..1516626 --- /dev/null +++ b/Genefunc/AD9833/z_page2.html @@ -0,0 +1,51 @@ + + + + + + ESP8266 page 2 + + + +

ESP8266 page 2 190127.1449

+
+ Coucou c'est la page 2 !
+ Retour à la home page...


+ + Voici un tableau dynamique écrit en Lua inline.

+ + Le code Lua pour créer ce tableau se trouve dans le code HTML de cette page et est exécuté sur le NodeMCU.
+ Les données du tableau viennent du NodeMCU !

+ + <% + -- création du tableau sur le NodeMCUjuste juste pour la démo ici ! + zmac_adrs={} + zmac_adrs["b8:d7:af:a6:bd:86"]={["zname"]="S7 zf", ["zrssi"]=45, ["ztime"]="12:03:36"} + zmac_adrs["cc:c0:79:7d:f5:d5"]={["zname"]="S7 Mélanie", ["zrssi"]=50, ["ztime"]="14:23:46"} + zmac_adrs["5c:f9:38:a1:f7:f0"]={["zname"]="MAC zf", ["zrssi"]=40, ["ztime"]="11:53:16"} + zmac_adrs["d8:30:62:5a:d6:3a"]={["zname"]="IMAC Maman", ["zrssi"]=55, ["ztime"]="17:07:23"} + %> + + + + + + <% + for k, v in pairs(zmac_adrs) do + zout("\n") + zout("\t\n") + zout("\t\n") + zout("\t\n") + zout("\t\n") + zout("\n") + end + %> +
MACNameRSSITime
" .. k .. "" .. tostring(zmac_adrs[k]["zname"]) .. "" .. tostring(zmac_adrs[k]["zrssi"]) .. "" .. tostring(zmac_adrs[k]["ztime"]) .. "
+ + <% + -- libère la mémoire du tableau sur le NodeMCU qui avait été créé pour la démo ici ! + zmac_adrs=nil + %> + + + diff --git a/Genefunc/AD9833/z_page3.html b/Genefunc/AD9833/z_page3.html new file mode 100644 index 0000000..f0be1e9 --- /dev/null +++ b/Genefunc/AD9833/z_page3.html @@ -0,0 +1,51 @@ + + + + + + ESP8266 page 3 + + + +

ESP8266 page 3 190422.1200

+
+ Coucou c'est la page 3 !
+ Retour à la home page...


+ + Voici le résultat du capteur non linéaire corrigé avec une table + d'interpolation dans un fichier .csv sur la flash.

+ + Le code Lua pour afficher ce résultat se trouve dans le code HTML de cette page et est exécuté sur le NodeMCU.
+ Les données viennent du NodeMCU !

+ + <% + zout("Il reste: "..node.heap().." de RAM !

\n") + %> + + <% + zx0=83 + get_correction(zx0) + zout("la valeur corrigée de "..zx0.." est "..zy0.."
") + %> + + <% + zx0=91 + get_correction(zx0) + zout("la valeur corrigée de "..zx0.." est "..zy0.."
") + %> + + <% + zx0=100 + get_correction(zx0) + zout("la valeur corrigée de "..zx0.." est "..zy0.."
") + %> + +
Yeah... cela fonctionne vachement bien !

+ + <% + zout("Il reste: "..node.heap().." de RAM !

\n") + %> + + + + diff --git a/Genefunc/a_gene1.lua b/Genefunc/serout/a_gene1.lua similarity index 100% rename from Genefunc/a_gene1.lua rename to Genefunc/serout/a_gene1.lua diff --git a/Genefunc/boot.lua b/Genefunc/serout/boot.lua similarity index 100% rename from Genefunc/boot.lua rename to Genefunc/serout/boot.lua diff --git a/Genefunc/serout/flash_led_xfois.lua b/Genefunc/serout/flash_led_xfois.lua new file mode 100644 index 0000000..ffea9b0 --- /dev/null +++ b/Genefunc/serout/flash_led_xfois.lua @@ -0,0 +1,37 @@ +-- programme pour faire clignoter x fois une LED avec un rapport on/off + +function flash_led_xfois() + print("\n flash_led_xfois.lua zf190310.1533 \n") + + --zLED=0 --NodeMCU + zLED=4 --EPS-M3 + zTm_On_LED = 50 --> en ms + zTm_Off_LED = 100 --> en ms + nbfois = 0 + gpio.write(zLED, gpio.HIGH) + gpio.mode(zLED, gpio.OUTPUT) + ztmr_Flash_LED = tmr.create() + + function blink_LED () + if nbfois >= xfois then + -- print(nbfois) + nbfois = 0 + else + if gpio.read(zLED)==gpio.HIGH then + gpio.write(zLED, gpio.LOW) + tmr.alarm(ztmr_Flash_LED, zTm_Off_LED, tmr.ALARM_SINGLE, blink_LED) + else + gpio.write(zLED, gpio.HIGH) + nbfois = nbfois+1 + tmr.alarm(ztmr_Flash_LED, zTm_On_LED, tmr.ALARM_SINGLE, blink_LED) + end + end + end + +-- xfois =2 +-- blink_LED () +end + + + + diff --git a/Genefunc/serout/goodies/a_tst_variables.lua b/Genefunc/serout/goodies/a_tst_variables.lua new file mode 100644 index 0000000..bbae700 --- /dev/null +++ b/Genefunc/serout/goodies/a_tst_variables.lua @@ -0,0 +1,6 @@ +-- Scripts pour afficher toutes les variables et fonctions en cours dans le système + +print("\n a_tst_variable.lua zf190310.1525 \n") + +for n in pairs (_G) do print(n) end + diff --git a/Genefunc/serout/goodies/rm_files.lua b/Genefunc/serout/goodies/rm_files.lua new file mode 100644 index 0000000..81241cb --- /dev/null +++ b/Genefunc/serout/goodies/rm_files.lua @@ -0,0 +1,12 @@ +-- pour effacer TOUS les fichiers qui se trouve dans la flash du NodeMCU + +print("\n rm_files.lua zf180907.1511 \n") + + +l=file.list() i=0 +for k,v in pairs(l) do + i=i+v + file.remove(k) +end +print("-------------------------------") +print("\nC'est tout effaced :-) \n") diff --git a/Genefunc/serout/goodies/wifi_off.lua b/Genefunc/serout/goodies/wifi_off.lua new file mode 100644 index 0000000..c1c7235 --- /dev/null +++ b/Genefunc/serout/goodies/wifi_off.lua @@ -0,0 +1,9 @@ +-- Déconnecte le WIFI +print("\n wifi_off.lua zf180822.0959 \n") + +wifi.setmode(wifi.NULLMODE) + +--[[ +print(wifi.NULLMODE, wifi.STATION, wifi.SOFTAP, wifi.STATIONAP) +print(wifi.getmode()) +]] diff --git a/Genefunc/serout/initz.lua b/Genefunc/serout/initz.lua new file mode 100644 index 0000000..771f253 --- /dev/null +++ b/Genefunc/serout/initz.lua @@ -0,0 +1,52 @@ +--Script de bootstrap, test au moment du boot qui a été la cause de boot. +-- Si la cause est un power on ou une connexion depuis l'IDE, alors +-- le script repair.lua pendant xx secondes avant de continuer +--Source: https://nodemcu.readthedocs.io/en/master/en/modules/node/#nodebootreason + +print("\n init.lua zf190310.1549 \n") + +zswitch=3 --switch flash +gpio.mode(zswitch, gpio.INT, gpio.PULLUP) + +function hvbouton() +-- gpio.trig(zswitch, "none") + tmr.unregister(initalarme) + f= "boot.lua" if file.exists(f) then dofile(f) end +end + +gpio.trig(zswitch, "both", hvbouton) + +function second_chance() + print("seconde chance...") + f= "repair.lua" if file.exists(f) then dofile(f) end + initalarme=tmr.create() + tmr.alarm(initalarme, 4*1000, tmr.ALARM_SINGLE, function() + f= "boot.lua" if file.exists(f) then dofile(f) end + end) +end + +_, reset_reason = node.bootreason() +print("reset_reason:",reset_reason) +if reset_reason == 0 then + print("power on") + second_chance() +elseif reset_reason == 4 then + print("node.restart") + gpio.trig(zswitch) + hvbouton=nil + second_chance=nil + zswitch=nil + reset_reason=nil + f= "boot.lua" if file.exists(f) then dofile(f) end +elseif reset_reason == 5 then + print("dsleep wake up") + f= "boot.lua" if file.exists(f) then dofile(f) end +elseif reset_reason == 6 then + print("external reset") + second_chance() +-- f= "boot.lua" if file.exists(f) then dofile(f) end +else + print("autre raison") + second_chance() +end + diff --git a/Genefunc/serout/set_time.lua b/Genefunc/serout/set_time.lua new file mode 100644 index 0000000..748cc95 --- /dev/null +++ b/Genefunc/serout/set_time.lua @@ -0,0 +1,29 @@ +-- Scripts pour régler l'horloge quand on est connecté en WIFI +-- Permet aussi de 'compresser' le unix time afin de prendre moins de place dans les strings + +print("\n set_time.lua zf190217.1426 \n") + +--source: https://www.freeformatter.com/epoch-timestamp-to-date-converter.html + +ztime2019 = 1546300800 -- Unix time pour le 1.1.2019 + +function set_time() + sntp.sync(nil, nil, nil, 1) +end + +function ztime_compress(ztime_long) + return ztime_long - ztime2019 +end + +function ztime_uncompress(ztime_short) + return ztime_short + ztime2019 +end + +function ztime_format(ztime) + tm = rtctime.epoch2cal(ztime + 3600) + return(string.format("%04d/%02d/%02d %02d:%02d:%02d", tm["year"], tm["mon"], tm["day"], tm["hour"], tm["min"], tm["sec"])) +end + +set_time() +print(ztime_format(rtctime.get())) + diff --git a/Genefunc/serout/telnet_srv2.lua b/Genefunc/serout/telnet_srv2.lua new file mode 100644 index 0000000..821358c --- /dev/null +++ b/Genefunc/serout/telnet_srv2.lua @@ -0,0 +1,87 @@ +-- Serveur telnet pour connexion en remote WIFI, NOUVELLE VERSION ! +-- source: https://github.com/nodemcu/nodemcu-firmware/blob/master/lua_examples/telnet/telnet.lua + +print("\n telnet_srv2.lua zf181215.1326 \n") + +local node, table, tmr, wifi, uwrite, tostring = + node, table, tmr, wifi, uart.write, tostring + +local function telnet_listener(socket) + local insert, remove, concat, heap, gc = + table.insert, table.remove, table.concat, node.heap, collectgarbage + local fifo1, fifo1l, fifo2, fifo2l = {}, 0, {}, 0 + local s -- s is a copy of the TCP socket if and only if sending is in progress + local wdclr, cnt = tmr.wdclr, 0 + local function debug(fmt, ...) + if (...) then fmt = fmt:format(...) end + uwrite(0, "\r\nDBG: ",fmt,"\r\n" ) + cnt = cnt + 1 + if cnt % 10 then wdclr() end + end + + local function flushGarbage() + if heap() < 13440 then gc() end + end + + local function sendLine() + if not s then return end + + if fifo2l + fifo1l == 0 then -- both FIFOs empty, so clear down s + s = nil + return + end + flushGarbage() + if #fifo2 < 4 then -- Flush FIFO1 into FIFO2 + insert(fifo2,concat(fifo1)) + fifo2l, fifo1, fifo1l = fifo2l + fifo1l, {}, 0 + end + local rec = remove(fifo2,1) .. (remove(fifo2,1) or '') .. + (remove(fifo2,1) or '') .. (remove(fifo2,1) or '') + fifo2l = fifo2l - #rec + flushGarbage() + s:send(rec) + end + + local F1_SIZE = 256 + + local function queueLine(str) + while #str > 0 do -- this is because str might be longer than the packet size! + local k, l = F1_SIZE - fifo1l, #str + local chunk + if #fifo1 >= 32 or (k < l and k < 16) then + insert(fifo2, concat(fifo1)) + fifo2l, fifo1, fifo1l, k = fifo2l + fifo1l, {}, 0, F1_SIZE + end + if l > k+16 then -- also tolerate a size overrun of 16 bytes to avoid a split + chunk, str = str:sub(1,k), str:sub(k+1) + else + chunk, str = str, '' + end + insert(fifo1, chunk) + fifo1l = fifo1l + #chunk + end + if not s and socket then + s = socket + sendLine() + else + flushGarbage() + end + end + + local function receiveLine(s, line) + node.input(line) + end + + local function disconnect(s) + fifo1, fifo1l, fifo2, fifo2l, s = {}, 0, {}, 0, nil + node.output(nil) + end + + socket:on("receive", receiveLine) + socket:on("disconnection", disconnect) + socket:on("sent", sendLine) + node.output(queueLine, 0) +end + +net.createServer(net.TCP, 180):listen(23, telnet_listener) +print("Telnet server running...\nUsage: telnet -rN ip\n") diff --git a/Genefunc/serout/web_ide2.lua b/Genefunc/serout/web_ide2.lua new file mode 100644 index 0000000..16d00f2 --- /dev/null +++ b/Genefunc/serout/web_ide2.lua @@ -0,0 +1,159 @@ +-- Petit WEB IDE tout simple autonome +-- ATTENTION: tourne sur le port 88 ! + +print("\n _web_ide2.lua zf181210.1516 \n") + +--[[ +XChip's NodeMCU IDE + +Create, Edit and run NodeMCU files using your webbrowser. +Examples: +http:/// will list all the files in the MCU +http:///newfile.lua displays the file on your browser +http:///newfile.lua?edit allows to creates or edits the specified script in your browser +http:///newfile.lua?run it will run the specified script and will show the returned value +]]-- + +srv=net.createServer(net.TCP) +srv:listen(88,function(conn) + + local rnrn=0 + local Status = 0 + local DataToGet = 0 + local method="" + local url="" + local vars="" + + conn:on("receive",function(conn,payload) + + if Status==0 then + _, _, method, url, vars = string.find(payload, "([A-Z]+) /([^?]*)%??(.*) HTTP") + print(method, url, vars) + end + + if method=="POST" then + + if Status==0 then + --print("status", Status) + _,_,DataToGet, payload = string.find(payload, "Content%-Length: (%d+)(.+)") + if DataToGet~=nil then + DataToGet = tonumber(DataToGet) + --print(DataToGet) + rnrn=1 + Status = 1 + else + print("bad length") + end + end + + -- find /r/n/r/n + if Status==1 then + --print("status", Status) + local payloadlen = string.len(payload) + local mark = "\r\n\r\n" + local i + for i=1, payloadlen do + if string.byte(mark, rnrn) == string.byte(payload, i) then + rnrn=rnrn+1 + if rnrn==5 then + payload = string.sub(payload, i+1,payloadlen) + file.open(url, "w") + file.close() + Status=2 + break + end + else + rnrn=1 + end + end + if Status==1 then + return + end + end + + if Status==2 then + --print("status", Status) + if payload~=nil then + DataToGet=DataToGet-string.len(payload) + --print("DataToGet:", DataToGet, "payload len:", string.len(payload)) + file.open(url, "a+") + file.write(payload) + file.close() + else + conn:send("HTTP/1.1 200 OK\r\n\r\nERROR") + Status=0 + end + + if DataToGet==0 then + conn:send("HTTP/1.1 200 OK\r\n\r\nOK") + Status=0 + end + end + + return + end + + DataToGet = -1 + + if url == "favicon.ico" then + conn:send("HTTP/1.1 404 file not found") + return + end + + conn:send("HTTP/1.1 200 OK\r\n\r\n") + + -- it wants a file in particular + if url~="" and vars=="" then + DataToGet = 0 + return + end + + conn:send("

NodeMCU IDE

") + + if vars=="edit" then + conn:send("") + conn:send("

Back to file list\n") + conn:send("

run") + conn:send("



") + end + + if vars=="run" then + conn:send("") + local st, result=pcall(dofile, url) + conn:send(tostring(result)) + conn:send("") + end + + if url=="" then + local l = file.list(); + for k,v in pairs(l) do + conn:send(""..k..", size:"..v.."
") + end + end + + conn:send("") + + end) + conn:on("sent",function(conn) + if DataToGet>=0 and method=="GET" then + if file.open(url, "r") then + file.seek("set", DataToGet) + local line=file.read(512) + file.close() + if line then + conn:send(line) + DataToGet = DataToGet + 512 + + if (string.len(line)==512) then + return + end + end + end + end + + conn:close() + end) +end) +print("listening, free:", node.heap()) + diff --git a/Genefunc/web_srv2.lua b/Genefunc/serout/web_srv2.lua similarity index 100% rename from Genefunc/web_srv2.lua rename to Genefunc/serout/web_srv2.lua diff --git a/Genefunc/serout/wifi_ap_start.lua b/Genefunc/serout/wifi_ap_start.lua new file mode 100644 index 0000000..f7ade0d --- /dev/null +++ b/Genefunc/serout/wifi_ap_start.lua @@ -0,0 +1,19 @@ +-- Démarre le WIFI en mode AP + +function wifi_ap_start() + print("\n wifi_ap_start.lua zf190310.1511 \n") + + local zmodewifi=wifi.getmode() + if zmodewifi == wifi.NULLMODE then + print("WIFI mode AP only") + wifi.setmode(wifi.SOFTAP) + elseif zmodewifi == wifi.STATION then + print("WIFI mode AP+CLI") + wifi.setmode(wifi.STATIONAP) + end + wifi.ap.config({ ssid = "NodeMCU "..wifi.ap.getmac(), pwd = "12345678" }) + --f= "wifi_info.lua" if file.exists(f) then dofile(f) end +end + +wifi_ap_start() +wifi_ap_start=nil diff --git a/Genefunc/serout/wifi_cli_conf.lua b/Genefunc/serout/wifi_cli_conf.lua new file mode 100644 index 0000000..99b5767 --- /dev/null +++ b/Genefunc/serout/wifi_cli_conf.lua @@ -0,0 +1,20 @@ +-- Petit script pour configurer le client WIFI du NodeMCU + +function wifi_cli_conf() + print("\n wifi_cli_conf.lua zf190310.1527 \n") + + --credentials par défaut + --cli_ssid="3g-s7" + cli_ssid="3G-zf" + cli_pwd="12234567" + + --ses propre credentials + f= "credentials.lua" if file.exists(f) then dofile(f) end + + wifi.sta.config{ssid=cli_ssid, pwd=cli_pwd, save=true} +end + +wifi_cli_conf() +wifi_cli_conf=nil +cli_ssid=nil +cli_pwd=nil diff --git a/Genefunc/serout/wifi_cli_start.lua b/Genefunc/serout/wifi_cli_start.lua new file mode 100644 index 0000000..045957e --- /dev/null +++ b/Genefunc/serout/wifi_cli_start.lua @@ -0,0 +1,20 @@ +-- Petit script pour connecter le NodeMCU sur un AP Wifi avec l'accompte sauvé en EEPROM + +function wifi_cli_start() + print("\n wifi_cli_start.lua zf190310.1519 \n") + + local zmodewifi=wifi.getmode() + if zmodewifi == wifi.NULLMODE then + print("WIFI mode CLI only") + wifi.setmode(wifi.STATION) + elseif zmodewifi == wifi.SOFTAP then + print("WIFI mode AP+CLI") + wifi.setmode(wifi.STATIONAP) + end + wifi.sta.autoconnect(1) + wifi.sta.connect() + --f= "wifi_get_ip.lua" if file.exists(f) then dofile(f) end +end + +wifi_cli_start() +wifi_cli_start=nil diff --git a/Genefunc/serout/wifi_get_ip.lua b/Genefunc/serout/wifi_get_ip.lua new file mode 100644 index 0000000..82bcdc2 --- /dev/null +++ b/Genefunc/serout/wifi_get_ip.lua @@ -0,0 +1,12 @@ +-- Petit script pour obtenir l'adresse IP du NodeMCU connecté sur un AP Wifi +print("\n wifi_get_ip.lua zf181119.2318 \n") + +wifitimer1=tmr.create() +tmr.alarm(wifitimer1, 1000, tmr.ALARM_AUTO , function() + if wifi.sta.getip() == nil then + print("Connecting to AP...") + else + tmr.stop(wifitimer1) + f= "wifi_info.lua" if file.exists(f) then dofile(f) end + end +end) diff --git a/Genefunc/serout/wifi_info.lua b/Genefunc/serout/wifi_info.lua new file mode 100644 index 0000000..5062fcf --- /dev/null +++ b/Genefunc/serout/wifi_info.lua @@ -0,0 +1,31 @@ +-- Petit script pour afficher les infos actuel du WIFI +print("\n wifi_info.lua zf181119.0014 \n") + +local zmodewifi=wifi.getmode() + +--wifi.NULLMODE, wifi.STATION, wifi.SOFTAP, wifi.STATIONAP + +if zmodewifi == wifi.NULLMODE then + print("WIFI OFF") +elseif zmodewifi == wifi.STATION then + print("WIFI mode CLI") + print("Connected IP:\n",wifi.sta.getip()) + do + local sta_config=wifi.sta.getconfig(true) + print(string.format("Current client config:\n\tssid:\"%s\"\tpassword:\"%s\"\n\tbssid:\"%s\"\tbssid_set:%s", sta_config.ssid, sta_config.pwd, sta_config.bssid, (sta_config.bssid_set and "true" or "false"))) + end +elseif zmodewifi == wifi.SOFTAP then + print("WIFI mode AP") + print("AP MAC:\n",wifi.ap.getmac()) + print("AP IP:\n",wifi.ap.getip()) + print("AP Connect:\n",wifi.ap.getconfig()) +elseif zmodewifi == wifi.STATIONAP then + print("WIFI mode CLI+AP") + print("Connected IP:\n",wifi.sta.getip()) + do + local sta_config=wifi.sta.getconfig(true) + print(string.format("Current client config:\n\tssid:\"%s\"\tpassword:\"%s\"\n\tbssid:\"%s\"\tbssid_set:%s", sta_config.ssid, sta_config.pwd, sta_config.bssid, (sta_config.bssid_set and "true" or "false"))) + end + print("AP MAC: "..wifi.ap.getmac()) + print("AP IP: "..wifi.ap.getip()) +end diff --git a/LED_RGB_WS2812/guirlandes noël/a_guirlande.lua b/LED_RGB_WS2812/guirlandes noël/a_guirlande.lua index 828e65d..9664a47 100644 --- a/LED_RGB_WS2812/guirlandes noël/a_guirlande.lua +++ b/LED_RGB_WS2812/guirlandes noël/a_guirlande.lua @@ -2,11 +2,11 @@ -- tout sur la couleur: https://www.w3schools.com/colors/default.asp -- roue des couleurs: https://iro.js.org/?ref=oldsite -print("\n a_guirlande.lua zf181216.0131 \n") +print("\n a_guirlande.lua zf190428.1824 \n") znbleds_max=300 znbleds=300 -zstep=5 +zstep=3 zpower=1 zleds={} diff --git a/LED_RGB_WS2812/guirlandes noël/boot.lua b/LED_RGB_WS2812/guirlandes noël/boot.lua index eb5bbdd..6c7e8fb 100644 --- a/LED_RGB_WS2812/guirlandes noël/boot.lua +++ b/LED_RGB_WS2812/guirlandes noël/boot.lua @@ -1,6 +1,6 @@ -- Scripts à charger après le boot pour démarrer son appli -print("\n boot.lua zf181216.0028 \n") +print("\n boot.lua zf190428.1823 \n") function heartbeat() f= "flash_led_xfois.lua" if file.exists(f) then dofile(f) end @@ -11,11 +11,12 @@ function heartbeat() end) end -f= "wifi_ap_stop.lua" if file.exists(f) then dofile(f) end -f= "wifi_cli_conf.lua" if file.exists(f) then dofile(f) end -f= "wifi_cli_start.lua" if file.exists(f) then dofile(f) end -f= "telnet_srv2.lua" if file.exists(f) then dofile(f) end -f= "web_ide2.lua" if file.exists(f) then dofile(f) end +--f= "wifi_ap_stop.lua" if file.exists(f) then dofile(f) end +f= "wifi_stop.lua" if file.exists(f) then dofile(f) end +--f= "wifi_cli_conf.lua" if file.exists(f) then dofile(f) end +--f= "wifi_cli_start.lua" if file.exists(f) then dofile(f) end +--f= "telnet_srv2.lua" if file.exists(f) then dofile(f) end +--f= "web_ide2.lua" if file.exists(f) then dofile(f) end --f= "az_init_led.lua" if file.exists(f) then dofile(f) end --f= "webleds.lua" if file.exists(f) then dofile(f) end f= "a_guirlande.lua" if file.exists(f) then dofile(f) end diff --git a/No_linear/simulation/Capture d’écran 2019-04-19 à 22.20.27.png b/No_linear/simulation/Capture d’écran 2019-04-19 à 22.20.27.png new file mode 100644 index 0000000000000000000000000000000000000000..f906daa3d6111b3261fa0e180baf91dcb27da2de GIT binary patch literal 77436 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�~EL@mGSeZnsBw+04 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
uewGScSO#WZA^CS8k*LA4^6*`Thh0Y(?B&CO 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

S9vEo=FH;p%dQjkVh_k!o-!v!4|10gqN` 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 s>s$5Up_1wa6dgH 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 Sx&Qzw^yLRtZ!F-?PyYv15AI0- literal 0 HcmV?d00001 diff --git a/Tests/a_tst1_serial.lua b/Tests/a_tst1_serial.lua new file mode 100644 index 0000000..4458540 --- /dev/null +++ b/Tests/a_tst1_serial.lua @@ -0,0 +1,17 @@ +-- Juste pour tester le port série, envoie le caractères U toute les seconde +--- U en binaire c'est 1010101, parfait pour le 'voir' avec un oscilloscope + +print("\n a_tst1_serial.lua zf190504.1316 \n") + + +test_1=tmr.create() +tmr.alarm(test_1, 1*1000, tmr.ALARM_AUTO, function() +--tmr.alarm(test_1, 2.5*1000, tmr.ALARM_SINGLE, function() + print("U") +end) + +--[[ +tmr.stop(test_1) +tmr.start(test_1) +]] + diff --git a/Workshop/oscilloscope/tst_oscillo/README.md b/Workshop/oscilloscope/tst_oscillo/README.md new file mode 100644 index 0000000..f5c8c5b --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/README.md @@ -0,0 +1,21 @@ +# Petit banc tests pour tester un oscilloscope low cost + +## Buts + +Quand on achète un oscilloscope à 25 balles on ne sait pas trop l'utiliser et encore moins ce qu'il vaut !
+ +On va utiliser un NodeMCU pour: + +- envoyer le caractère U (u majuscule) sur la console. Le U à l'avantage d'avoir la suite 1010101 en ASCII. Facile donc de pouvoir le repérer à l'oscilloscope + +- envoyer la fréquence xx sur la pin x + +- envoyer un signal PWM de 30/70% sur la pin y + + + +zf190504.1335 + + + + diff --git a/Workshop/oscilloscope/tst_oscillo/a_gene1.lua b/Workshop/oscilloscope/tst_oscillo/a_gene1.lua new file mode 100644 index 0000000..af9a5b6 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/a_gene1.lua @@ -0,0 +1,27 @@ +-- Générerateur de fonction signal carré de fréquence variable et de rqtio variable + +print("\n a_gene1.lua zf190504.1912 \n") + +pin_gene = 5 +gpio.mode(pin_gene,gpio.OUTPUT) +gpio.write(pin_gene,gpio.LOW) + +function genepulse(zpulse) + print("tutu") + gpio.serout(pin_gene,gpio.HIGH,{zpulse/2,zpulse},1000000,genesquare) +end + +function genesquare() + print("toto") + zdemieperiode=1/zfreq*1000000/2 + print("Demie période: ",zdemieperiode) + genepulse(zdemieperiode) + print("titi") +end + +zfreq=5000*(10/9.43) +genesquare() + +--[[ +genesquare(0) +]] diff --git a/Workshop/oscilloscope/tst_oscillo/a_tst1_serial.lua b/Workshop/oscilloscope/tst_oscillo/a_tst1_serial.lua new file mode 100644 index 0000000..fc59470 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/a_tst1_serial.lua @@ -0,0 +1,21 @@ +-- Juste pour tester le port série, envoie une suite de caractère ASCCI toutes les seconde +-- On envoie 5x le caractère U +-- U en binaire c'est 1010101 +-- on peut ainsi bien 'voir' avec un oscilloscope le port série + +print("\n a_tst1_serial.lua zf190504.1502 \n") + + +test_1=tmr.create() +tmr.alarm(test_1, 0.020*1000, tmr.ALARM_AUTO, function() +--tmr.alarm(test_1, 2.5*1000, tmr.ALARM_SINGLE, function() +-- print(" ### ") +-- uart.write(0, string.char(0)..string.char(0)..string.char(1)..string.char(3)..string.char(0).."U") + uart.write(0, "UUUUU") +end) + +--[[ +tmr.stop(test_1) +tmr.start(test_1) +]] + diff --git a/Workshop/oscilloscope/tst_oscillo/boot.lua b/Workshop/oscilloscope/tst_oscillo/boot.lua new file mode 100644 index 0000000..4e7f874 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/boot.lua @@ -0,0 +1,35 @@ +-- Scripts à charger après le boot pour démarrer son appli + +print("\n boot.lua zf190504.1918 \n") + +function heartbeat() + f= "flash_led_xfois.lua" if file.exists(f) then dofile(f) end + flash_led_xfois() + boottimer1=tmr.create() + tmr.alarm(boottimer1, 1*1000, tmr.ALARM_AUTO, function() + xfois =2 + blink_LED () + end) +end + +f= "led_rgb.lua" if file.exists(f) then dofile(f) end +f= "wifi_off.lua" if file.exists(f) then dofile(f) end +--f= "wifi_ap_start.lua" if file.exists(f) then dofile(f) end +--f= "wifi_cli_conf.lua" if file.exists(f) then dofile(f) end +--f= "wifi_cli_start.lua" if file.exists(f) then dofile(f) end +--f= "telnet_srv2.lua" if file.exists(f) then dofile(f) end +--f= "web_ide2.lua" if file.exists(f) then dofile(f) end +--f= "web_srv2.lua" if file.exists(f) then dofile(f) end +--f= "set_time.lua" if file.exists(f) then dofile(f) end +--f= "dsleep.lua" if file.exists(f) then dofile(f) end +--f= "a_no_linear.lua" if file.exists(f) then dofile(f) end +f= "a_tst1_serial.lua" if file.exists(f) then dofile(f) end +f= "a_gene1.lua" if file.exists(f) then dofile(f) end + +f=nil +heartbeat=nil +--heartbeat() + + + + diff --git a/Workshop/oscilloscope/tst_oscillo/flash_led_xfois.lua b/Workshop/oscilloscope/tst_oscillo/flash_led_xfois.lua new file mode 100644 index 0000000..ffea9b0 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/flash_led_xfois.lua @@ -0,0 +1,37 @@ +-- programme pour faire clignoter x fois une LED avec un rapport on/off + +function flash_led_xfois() + print("\n flash_led_xfois.lua zf190310.1533 \n") + + --zLED=0 --NodeMCU + zLED=4 --EPS-M3 + zTm_On_LED = 50 --> en ms + zTm_Off_LED = 100 --> en ms + nbfois = 0 + gpio.write(zLED, gpio.HIGH) + gpio.mode(zLED, gpio.OUTPUT) + ztmr_Flash_LED = tmr.create() + + function blink_LED () + if nbfois >= xfois then + -- print(nbfois) + nbfois = 0 + else + if gpio.read(zLED)==gpio.HIGH then + gpio.write(zLED, gpio.LOW) + tmr.alarm(ztmr_Flash_LED, zTm_Off_LED, tmr.ALARM_SINGLE, blink_LED) + else + gpio.write(zLED, gpio.HIGH) + nbfois = nbfois+1 + tmr.alarm(ztmr_Flash_LED, zTm_On_LED, tmr.ALARM_SINGLE, blink_LED) + end + end + end + +-- xfois =2 +-- blink_LED () +end + + + + diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/a_tst_variables.lua b/Workshop/oscilloscope/tst_oscillo/goodies/a_tst_variables.lua new file mode 100644 index 0000000..bbae700 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/a_tst_variables.lua @@ -0,0 +1,6 @@ +-- Scripts pour afficher toutes les variables et fonctions en cours dans le système + +print("\n a_tst_variable.lua zf190310.1525 \n") + +for n in pairs (_G) do print(n) end + diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/rm_files.lua b/Workshop/oscilloscope/tst_oscillo/goodies/rm_files.lua new file mode 100644 index 0000000..81241cb --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/rm_files.lua @@ -0,0 +1,12 @@ +-- pour effacer TOUS les fichiers qui se trouve dans la flash du NodeMCU + +print("\n rm_files.lua zf180907.1511 \n") + + +l=file.list() i=0 +for k,v in pairs(l) do + i=i+v + file.remove(k) +end +print("-------------------------------") +print("\nC'est tout effaced :-) \n") diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/set_time.lua b/Workshop/oscilloscope/tst_oscillo/goodies/set_time.lua new file mode 100644 index 0000000..748cc95 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/set_time.lua @@ -0,0 +1,29 @@ +-- Scripts pour régler l'horloge quand on est connecté en WIFI +-- Permet aussi de 'compresser' le unix time afin de prendre moins de place dans les strings + +print("\n set_time.lua zf190217.1426 \n") + +--source: https://www.freeformatter.com/epoch-timestamp-to-date-converter.html + +ztime2019 = 1546300800 -- Unix time pour le 1.1.2019 + +function set_time() + sntp.sync(nil, nil, nil, 1) +end + +function ztime_compress(ztime_long) + return ztime_long - ztime2019 +end + +function ztime_uncompress(ztime_short) + return ztime_short + ztime2019 +end + +function ztime_format(ztime) + tm = rtctime.epoch2cal(ztime + 3600) + return(string.format("%04d/%02d/%02d %02d:%02d:%02d", tm["year"], tm["mon"], tm["day"], tm["hour"], tm["min"], tm["sec"])) +end + +set_time() +print(ztime_format(rtctime.get())) + diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/t1.csv b/Workshop/oscilloscope/tst_oscillo/goodies/t1.csv new file mode 100644 index 0000000..7dc8514 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/t1.csv @@ -0,0 +1,27 @@ +ohm,% +33,100 +36,96.77419355 +41,92.74193548 +45,88.70967742 +52,84.67741935 +56,80.64516129 +61,76.61290323 +67,72.58064516 +72,68.5483871 +79,64.51612903 +83,60.48387097 +91,56.4516129 +97,52.41935484 +104,48.38709677 +112,44.35483871 +117,40.32258065 +121,36.29032258 +128,32.25806452 +132,28.22580645 +139,24.19354839 +150,20.16129032 +166,16.12903226 +191,12.09677419 +207,8.064516129 +224,4.032258065 +240,0 \ No newline at end of file diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/telnet_srv2.lua b/Workshop/oscilloscope/tst_oscillo/goodies/telnet_srv2.lua new file mode 100644 index 0000000..821358c --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/telnet_srv2.lua @@ -0,0 +1,87 @@ +-- Serveur telnet pour connexion en remote WIFI, NOUVELLE VERSION ! +-- source: https://github.com/nodemcu/nodemcu-firmware/blob/master/lua_examples/telnet/telnet.lua + +print("\n telnet_srv2.lua zf181215.1326 \n") + +local node, table, tmr, wifi, uwrite, tostring = + node, table, tmr, wifi, uart.write, tostring + +local function telnet_listener(socket) + local insert, remove, concat, heap, gc = + table.insert, table.remove, table.concat, node.heap, collectgarbage + local fifo1, fifo1l, fifo2, fifo2l = {}, 0, {}, 0 + local s -- s is a copy of the TCP socket if and only if sending is in progress + local wdclr, cnt = tmr.wdclr, 0 + local function debug(fmt, ...) + if (...) then fmt = fmt:format(...) end + uwrite(0, "\r\nDBG: ",fmt,"\r\n" ) + cnt = cnt + 1 + if cnt % 10 then wdclr() end + end + + local function flushGarbage() + if heap() < 13440 then gc() end + end + + local function sendLine() + if not s then return end + + if fifo2l + fifo1l == 0 then -- both FIFOs empty, so clear down s + s = nil + return + end + flushGarbage() + if #fifo2 < 4 then -- Flush FIFO1 into FIFO2 + insert(fifo2,concat(fifo1)) + fifo2l, fifo1, fifo1l = fifo2l + fifo1l, {}, 0 + end + local rec = remove(fifo2,1) .. (remove(fifo2,1) or '') .. + (remove(fifo2,1) or '') .. (remove(fifo2,1) or '') + fifo2l = fifo2l - #rec + flushGarbage() + s:send(rec) + end + + local F1_SIZE = 256 + + local function queueLine(str) + while #str > 0 do -- this is because str might be longer than the packet size! + local k, l = F1_SIZE - fifo1l, #str + local chunk + if #fifo1 >= 32 or (k < l and k < 16) then + insert(fifo2, concat(fifo1)) + fifo2l, fifo1, fifo1l, k = fifo2l + fifo1l, {}, 0, F1_SIZE + end + if l > k+16 then -- also tolerate a size overrun of 16 bytes to avoid a split + chunk, str = str:sub(1,k), str:sub(k+1) + else + chunk, str = str, '' + end + insert(fifo1, chunk) + fifo1l = fifo1l + #chunk + end + if not s and socket then + s = socket + sendLine() + else + flushGarbage() + end + end + + local function receiveLine(s, line) + node.input(line) + end + + local function disconnect(s) + fifo1, fifo1l, fifo2, fifo2l, s = {}, 0, {}, 0, nil + node.output(nil) + end + + socket:on("receive", receiveLine) + socket:on("disconnection", disconnect) + socket:on("sent", sendLine) + node.output(queueLine, 0) +end + +net.createServer(net.TCP, 180):listen(23, telnet_listener) +print("Telnet server running...\nUsage: telnet -rN ip\n") diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/web_ide2.lua b/Workshop/oscilloscope/tst_oscillo/goodies/web_ide2.lua new file mode 100644 index 0000000..16d00f2 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/web_ide2.lua @@ -0,0 +1,159 @@ +-- Petit WEB IDE tout simple autonome +-- ATTENTION: tourne sur le port 88 ! + +print("\n _web_ide2.lua zf181210.1516 \n") + +--[[ +XChip's NodeMCU IDE + +Create, Edit and run NodeMCU files using your webbrowser. +Examples: +http:/// will list all the files in the MCU +http:///newfile.lua displays the file on your browser +http:///newfile.lua?edit allows to creates or edits the specified script in your browser +http:///newfile.lua?run it will run the specified script and will show the returned value +]]-- + +srv=net.createServer(net.TCP) +srv:listen(88,function(conn) + + local rnrn=0 + local Status = 0 + local DataToGet = 0 + local method="" + local url="" + local vars="" + + conn:on("receive",function(conn,payload) + + if Status==0 then + _, _, method, url, vars = string.find(payload, "([A-Z]+) /([^?]*)%??(.*) HTTP") + print(method, url, vars) + end + + if method=="POST" then + + if Status==0 then + --print("status", Status) + _,_,DataToGet, payload = string.find(payload, "Content%-Length: (%d+)(.+)") + if DataToGet~=nil then + DataToGet = tonumber(DataToGet) + --print(DataToGet) + rnrn=1 + Status = 1 + else + print("bad length") + end + end + + -- find /r/n/r/n + if Status==1 then + --print("status", Status) + local payloadlen = string.len(payload) + local mark = "\r\n\r\n" + local i + for i=1, payloadlen do + if string.byte(mark, rnrn) == string.byte(payload, i) then + rnrn=rnrn+1 + if rnrn==5 then + payload = string.sub(payload, i+1,payloadlen) + file.open(url, "w") + file.close() + Status=2 + break + end + else + rnrn=1 + end + end + if Status==1 then + return + end + end + + if Status==2 then + --print("status", Status) + if payload~=nil then + DataToGet=DataToGet-string.len(payload) + --print("DataToGet:", DataToGet, "payload len:", string.len(payload)) + file.open(url, "a+") + file.write(payload) + file.close() + else + conn:send("HTTP/1.1 200 OK\r\n\r\nERROR") + Status=0 + end + + if DataToGet==0 then + conn:send("HTTP/1.1 200 OK\r\n\r\nOK") + Status=0 + end + end + + return + end + + DataToGet = -1 + + if url == "favicon.ico" then + conn:send("HTTP/1.1 404 file not found") + return + end + + conn:send("HTTP/1.1 200 OK\r\n\r\n") + + -- it wants a file in particular + if url~="" and vars=="" then + DataToGet = 0 + return + end + + conn:send("

NodeMCU IDE

") + + if vars=="edit" then + conn:send("") + conn:send("

Back to file list\n") + conn:send("

run") + conn:send("



") + end + + if vars=="run" then + conn:send("") + local st, result=pcall(dofile, url) + conn:send(tostring(result)) + conn:send("") + end + + if url=="" then + local l = file.list(); + for k,v in pairs(l) do + conn:send(""..k..", size:"..v.."
") + end + end + + conn:send("") + + end) + conn:on("sent",function(conn) + if DataToGet>=0 and method=="GET" then + if file.open(url, "r") then + file.seek("set", DataToGet) + local line=file.read(512) + file.close() + if line then + conn:send(line) + DataToGet = DataToGet + 512 + + if (string.len(line)==512) then + return + end + end + end + end + + conn:close() + end) +end) +print("listening, free:", node.heap()) + diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/web_srv2.lua b/Workshop/oscilloscope/tst_oscillo/goodies/web_srv2.lua new file mode 100644 index 0000000..a7b5953 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/web_srv2.lua @@ -0,0 +1,77 @@ +-- petit script de serveur WEB avec Active Server Page ZYX + +print("\n web_srv2.lua zf190422.1135 \n") + +ztemp=12 + +-- envoie sur le port ouvert mais depuis l'environnement global ! +function zout(zstring) + zzclient:send(zstring) -- envoie le résultat du code lua inline +end + +-- envoie un fichier HTML sur le port. ATTENTION: longueur de la ligne maximale de 1'024 bytes ! +function send_file(zclient, zfilename) + print("start send html...") + zclient:send("HTTP/1.1 200 OK\n") + zclient:send("Content-Type: text/html\n\n") + zzclient = zclient -- export le port sur l'environnement global ! + if zfilename == "" then zfilename = "z_index.html" end + file_web = file.open(zfilename, "r") + if file_web then + repeat + local line = file_web:read('\n') + if line then + if string.find(line, "<%%") then +-- print("start lua...") + flag_lua_code = true -- bascule sur le code lua inline + lua_code = "" + elseif string.find(line, "%%>") then +-- print("stop lua...") + flag_lua_code = false -- revient sur le code HTML +-- print("Et voici le code lua inline:\n"..lua_code) + loadstring(lua_code)() --on exécute ici le code lua inline ! + elseif flag_lua_code then +-- print(line) + lua_code = lua_code..line -- récupère le code lua inline + else + zclient:send(line) -- envoie le code HTML + end + end + until not line + file_web:close() file_web = nil + else + zclient:send("

"..zfilename.." not found - 404 error

Home
") + end +end + + +srv = net.createServer() +srv:listen(80, function(conn) + conn:on("receive", function(client, request) + _, _, method, path, vars = string.find(request, "([A-Z]+) (.+)?(.+) HTTP") + + print("request: \n---\n"..request.."---") +-- print("method: ", method) print("path: ", path) print("vars: ", vars) + + if not string.find(request, "/favicon.ico") then + print("coucou") + if (method == nil) then + _, _, method, path = string.find(request, "([A-Z]+) (.+) HTTP") + end + print("method: ", method) print("path: ", path) print("vars: ", vars) + _GET = {} + if (vars ~= nil) then + for k, v in string.gmatch(vars, "(%w+)=(%w+)&*") do + _GET[k] = v + print(k..": "..v) + end + end + file_html=string.gsub(path, "/", "") + -- print("file_html: ",file_html) + send_file(client, file_html) + end + end) + conn:on("sent", function(c) c:close() end) +end) + + diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/wifi_ap_start.lua b/Workshop/oscilloscope/tst_oscillo/goodies/wifi_ap_start.lua new file mode 100644 index 0000000..f7ade0d --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/wifi_ap_start.lua @@ -0,0 +1,19 @@ +-- Démarre le WIFI en mode AP + +function wifi_ap_start() + print("\n wifi_ap_start.lua zf190310.1511 \n") + + local zmodewifi=wifi.getmode() + if zmodewifi == wifi.NULLMODE then + print("WIFI mode AP only") + wifi.setmode(wifi.SOFTAP) + elseif zmodewifi == wifi.STATION then + print("WIFI mode AP+CLI") + wifi.setmode(wifi.STATIONAP) + end + wifi.ap.config({ ssid = "NodeMCU "..wifi.ap.getmac(), pwd = "12345678" }) + --f= "wifi_info.lua" if file.exists(f) then dofile(f) end +end + +wifi_ap_start() +wifi_ap_start=nil diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/wifi_cli_conf.lua b/Workshop/oscilloscope/tst_oscillo/goodies/wifi_cli_conf.lua new file mode 100644 index 0000000..99b5767 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/wifi_cli_conf.lua @@ -0,0 +1,20 @@ +-- Petit script pour configurer le client WIFI du NodeMCU + +function wifi_cli_conf() + print("\n wifi_cli_conf.lua zf190310.1527 \n") + + --credentials par défaut + --cli_ssid="3g-s7" + cli_ssid="3G-zf" + cli_pwd="12234567" + + --ses propre credentials + f= "credentials.lua" if file.exists(f) then dofile(f) end + + wifi.sta.config{ssid=cli_ssid, pwd=cli_pwd, save=true} +end + +wifi_cli_conf() +wifi_cli_conf=nil +cli_ssid=nil +cli_pwd=nil diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/wifi_cli_start.lua b/Workshop/oscilloscope/tst_oscillo/goodies/wifi_cli_start.lua new file mode 100644 index 0000000..045957e --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/wifi_cli_start.lua @@ -0,0 +1,20 @@ +-- Petit script pour connecter le NodeMCU sur un AP Wifi avec l'accompte sauvé en EEPROM + +function wifi_cli_start() + print("\n wifi_cli_start.lua zf190310.1519 \n") + + local zmodewifi=wifi.getmode() + if zmodewifi == wifi.NULLMODE then + print("WIFI mode CLI only") + wifi.setmode(wifi.STATION) + elseif zmodewifi == wifi.SOFTAP then + print("WIFI mode AP+CLI") + wifi.setmode(wifi.STATIONAP) + end + wifi.sta.autoconnect(1) + wifi.sta.connect() + --f= "wifi_get_ip.lua" if file.exists(f) then dofile(f) end +end + +wifi_cli_start() +wifi_cli_start=nil diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/wifi_get_ip.lua b/Workshop/oscilloscope/tst_oscillo/goodies/wifi_get_ip.lua new file mode 100644 index 0000000..82bcdc2 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/wifi_get_ip.lua @@ -0,0 +1,12 @@ +-- Petit script pour obtenir l'adresse IP du NodeMCU connecté sur un AP Wifi +print("\n wifi_get_ip.lua zf181119.2318 \n") + +wifitimer1=tmr.create() +tmr.alarm(wifitimer1, 1000, tmr.ALARM_AUTO , function() + if wifi.sta.getip() == nil then + print("Connecting to AP...") + else + tmr.stop(wifitimer1) + f= "wifi_info.lua" if file.exists(f) then dofile(f) end + end +end) diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/z_index.html b/Workshop/oscilloscope/tst_oscillo/goodies/z_index.html new file mode 100644 index 0000000..dd689c8 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/z_index.html @@ -0,0 +1,20 @@ + + + + + + ESP8266 home page + + + +

ESP8266 home page 190422.1052

+

Différentes pages HTML:

+

+ Page 1, affichage de la température dynamique en code Lua inline.
+ Page 2, tableau dynamique écrit en Lua inline.
+ Page 3, affichage du capteur non linéaire corrigé.
+ Page qui n'existe pas !
+

+ + + diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/z_page1.html b/Workshop/oscilloscope/tst_oscillo/goodies/z_page1.html new file mode 100644 index 0000000..c0bd757 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/z_page1.html @@ -0,0 +1,26 @@ + + + + + + ESP8266 page 1 + + + +

ESP8266 page 1 190127.1445

+
+ Coucou c'est la page 1 !
+ Retour à la home page...


+ +La température est: + +<% +ztemp=ztemp+1 +zout(ztemp.."°C") +%> + +
Mais il fait encore trop froid !
+ + + + diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/z_page2.html b/Workshop/oscilloscope/tst_oscillo/goodies/z_page2.html new file mode 100644 index 0000000..1516626 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/z_page2.html @@ -0,0 +1,51 @@ + + + + + + ESP8266 page 2 + + + +

ESP8266 page 2 190127.1449

+
+ Coucou c'est la page 2 !
+ Retour à la home page...


+ + Voici un tableau dynamique écrit en Lua inline.

+ + Le code Lua pour créer ce tableau se trouve dans le code HTML de cette page et est exécuté sur le NodeMCU.
+ Les données du tableau viennent du NodeMCU !

+ + <% + -- création du tableau sur le NodeMCUjuste juste pour la démo ici ! + zmac_adrs={} + zmac_adrs["b8:d7:af:a6:bd:86"]={["zname"]="S7 zf", ["zrssi"]=45, ["ztime"]="12:03:36"} + zmac_adrs["cc:c0:79:7d:f5:d5"]={["zname"]="S7 Mélanie", ["zrssi"]=50, ["ztime"]="14:23:46"} + zmac_adrs["5c:f9:38:a1:f7:f0"]={["zname"]="MAC zf", ["zrssi"]=40, ["ztime"]="11:53:16"} + zmac_adrs["d8:30:62:5a:d6:3a"]={["zname"]="IMAC Maman", ["zrssi"]=55, ["ztime"]="17:07:23"} + %> + + + + + + <% + for k, v in pairs(zmac_adrs) do + zout("\n") + zout("\t\n") + zout("\t\n") + zout("\t\n") + zout("\t\n") + zout("\n") + end + %> +
MACNameRSSITime
" .. k .. "" .. tostring(zmac_adrs[k]["zname"]) .. "" .. tostring(zmac_adrs[k]["zrssi"]) .. "" .. tostring(zmac_adrs[k]["ztime"]) .. "
+ + <% + -- libère la mémoire du tableau sur le NodeMCU qui avait été créé pour la démo ici ! + zmac_adrs=nil + %> + + + diff --git a/Workshop/oscilloscope/tst_oscillo/goodies/z_page3.html b/Workshop/oscilloscope/tst_oscillo/goodies/z_page3.html new file mode 100644 index 0000000..f0be1e9 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/goodies/z_page3.html @@ -0,0 +1,51 @@ + + + + + + ESP8266 page 3 + + + +

ESP8266 page 3 190422.1200

+
+ Coucou c'est la page 3 !
+ Retour à la home page...


+ + Voici le résultat du capteur non linéaire corrigé avec une table + d'interpolation dans un fichier .csv sur la flash.

+ + Le code Lua pour afficher ce résultat se trouve dans le code HTML de cette page et est exécuté sur le NodeMCU.
+ Les données viennent du NodeMCU !

+ + <% + zout("Il reste: "..node.heap().." de RAM !

\n") + %> + + <% + zx0=83 + get_correction(zx0) + zout("la valeur corrigée de "..zx0.." est "..zy0.."
") + %> + + <% + zx0=91 + get_correction(zx0) + zout("la valeur corrigée de "..zx0.." est "..zy0.."
") + %> + + <% + zx0=100 + get_correction(zx0) + zout("la valeur corrigée de "..zx0.." est "..zy0.."
") + %> + +
Yeah... cela fonctionne vachement bien !

+ + <% + zout("Il reste: "..node.heap().." de RAM !

\n") + %> + + + + diff --git a/Workshop/oscilloscope/tst_oscillo/initz.lua b/Workshop/oscilloscope/tst_oscillo/initz.lua new file mode 100644 index 0000000..771f253 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/initz.lua @@ -0,0 +1,52 @@ +--Script de bootstrap, test au moment du boot qui a été la cause de boot. +-- Si la cause est un power on ou une connexion depuis l'IDE, alors +-- le script repair.lua pendant xx secondes avant de continuer +--Source: https://nodemcu.readthedocs.io/en/master/en/modules/node/#nodebootreason + +print("\n init.lua zf190310.1549 \n") + +zswitch=3 --switch flash +gpio.mode(zswitch, gpio.INT, gpio.PULLUP) + +function hvbouton() +-- gpio.trig(zswitch, "none") + tmr.unregister(initalarme) + f= "boot.lua" if file.exists(f) then dofile(f) end +end + +gpio.trig(zswitch, "both", hvbouton) + +function second_chance() + print("seconde chance...") + f= "repair.lua" if file.exists(f) then dofile(f) end + initalarme=tmr.create() + tmr.alarm(initalarme, 4*1000, tmr.ALARM_SINGLE, function() + f= "boot.lua" if file.exists(f) then dofile(f) end + end) +end + +_, reset_reason = node.bootreason() +print("reset_reason:",reset_reason) +if reset_reason == 0 then + print("power on") + second_chance() +elseif reset_reason == 4 then + print("node.restart") + gpio.trig(zswitch) + hvbouton=nil + second_chance=nil + zswitch=nil + reset_reason=nil + f= "boot.lua" if file.exists(f) then dofile(f) end +elseif reset_reason == 5 then + print("dsleep wake up") + f= "boot.lua" if file.exists(f) then dofile(f) end +elseif reset_reason == 6 then + print("external reset") + second_chance() +-- f= "boot.lua" if file.exists(f) then dofile(f) end +else + print("autre raison") + second_chance() +end + diff --git a/Workshop/oscilloscope/tst_oscillo/led_rgb.lua b/Workshop/oscilloscope/tst_oscillo/led_rgb.lua new file mode 100644 index 0000000..7a5d396 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/led_rgb.lua @@ -0,0 +1,37 @@ +-- Scripts juste pour allumer ou éteindre une LED sur un ruban RGB +-- tout sur la couleur: https://www.w3schools.com/colors/default.asp +-- roue des couleurs: https://iro.js.org/?ref=oldsite + +print("\n led_rgb.lua zf190303.1436 \n") + +nbleds=3 +ws2812.init() +myLedStrip = ws2812.newBuffer(nbleds, 3) + +function RGB_clear() + myLedStrip:fill(0, 0, 0) ws2812.write(myLedStrip) +end + +function RGB_reform(R1, G1, B1) --conversion de RGB à BRG + rR1=B1 rG1=R1 rB1=G1 +end + +function zled_rgb(num_led, R1, G1, B1, zpower) + RGB_reform(R1, G1, B1) + myLedStrip:set(num_led, rR1*zpower, rG1*zpower, rB1*zpower) + ws2812.write(myLedStrip) +end + +function zled_write() + ws2812.write(myLedStrip) +end + + +RGB_clear() + +--[[ +zled_rgb(1,255,0,0,1) +zled_rgb(2,0,255,0,1) +zled_rgb(2,0,255,0,0.05) +zled_rgb(3,0,0,255,1) +]] diff --git a/Workshop/oscilloscope/tst_oscillo/simulation/Capture d’écran 2019-04-19 à 22.20.27.png b/Workshop/oscilloscope/tst_oscillo/simulation/Capture d’écran 2019-04-19 à 22.20.27.png new file mode 100644 index 0000000000000000000000000000000000000000..f906daa3d6111b3261fa0e180baf91dcb27da2de GIT binary patch literal 77436 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�~EL@mGSeZnsBw+04 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
uewGScSO#WZA^CS8k*LA4^6*`Thh0Y(?B&CO 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

S9vEo=FH;p%dQjkVh_k!o-!v!4|10gqN` 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 s>s$5Up_1wa6dgH z;yiK6Tx8^FNGz{rjD2s%u8!@gK( zd4f15*aE^J+2LPYIct>etX6G`+9No{F12}pY~5nLjedT{!g}q-U)N|6^XPG+d*6%^ zs3Unh&rRF+W#rqvP}}NADizylIl(`Qysxc(4;SlFlpi zGiv{k;JM1({RDrgb^Bu(W#2gWWys)b85b&*;Zo zqZC%$Mu0CZKi*s}T9)`m5Q32UvFK-)0ZHdTM*4$SgGY6txdHnkf)IC`BO=5J zVmHB6`dMy5P=cf7VDkWd--I>;XXwV6goNmZN&#ZlgDwxCtA-Rr#O@K|2n99>bR#4Z z2Z;+xAe0^i`W$FQWIBif0 z+f$-X%c!%+ltTLztq7sckF$$Mzq{H@4fzzA7C{B171q+PzGuA)LLa4?Y>^zdOJeh< z9efj%7J4N-d+vJgHHio!3>4lsvK};~ zNRB{pF)d*wLTp3^#0#YOP~|>ZQuLunRH0!K=U6szStHWVSg8@T!t*5DF@b|vyXY`M zd7@XjMsi$~nh6Nh5Q$MOQKh2wInVMlCDJU|V}9sDGO6NGztHqM5@Fi;28=N%sRq4EJrv;Do6Gka#)%O zHYr3YJ}K^z&op#pFl7jq@F&dk;B2_*$m#5w@GFiDqAu7j$}ar(Jogx>t&R;$6Q#m!|+{8xxqgV%0XT6;&kPu(K} zmSdh-jj^s-(OI&|3~5#2wh06yRigx>x;^}ae#kLsmuOA&lN3-W3COp|w1}r@0nie# z?y%Yz#~5E=MxY^~lA#bHV!}(pMM9OrzJ^bSV~3K5vW5F_|MDI^SKF@{H{|ax=zHz6 z3Hu(Z7CAKfn7?BgClq%cCmKgkV5bnQa8S5h0AFBS zAY5QsfML{RoM8-O9Bll2&@n#_gFv@l%~Wf*tZZ4Y^m3XL9(J@IoQr!ufI!CY(U#%$lL(CqP? zPsvExKxv~{7wb<}1y&E1A1rjNRpwEa_7?6I%H|aoQsx6@jfaHJx6YrPgPql#w4E;w zE02c``;XfvDdyN0I*a&?3C$1Ge}Abz#{TKZ*3?nT~B9xW|j zL|z15RA;hnQar{rX1_19pSZ7yZh?-4PLlMRw3TG7va52h;#%&bW~pYXF1v_Z7gq0X zIAV5U{W1t|ZECD)(&(;mvzr*te6MgnbT16=1z(KYf{TUshMUb5%e|F(oDn-dKb|=L z;%4Xt?K2~~P&jEkr@VGodJ>l&t{Jrw(33#fN8dwRq1DF9s9aI+l9ugXy3{o0w1X34T=hGAd z6>N|Yo)AHhJPLB=x!wDv<5oP9Boa8%N~}t(b1|hXc*b!Qa-?KfTEu*K2VP*P{daTj zF?+7}TcdIdt1GO-$dS|rj>@KjrqsG+Q=09t9q*kD@=!7(GAmLI3O0%w(oE?zzGCl6 z>Qq`zQuoKUo+lg(M2t3u+X7tKA=#(Y#0R2zLww26wIFp_p;X zmdF-dJ9kP&&N||V&oo??Tq}&NL?OHstfo8RGl`X2L#sHdVO7DpnS;!Oo(U6~zMQ@v zX$$q;AoT&uLi;@lJp>DDm7O#SRHe<`4kTy4&ZRHX3Bv0ma3tNN9Hit6kqYY?%Wa(3 zliIzDBWq|YPIGv2yz+X=xBKx@xm~GKX_!m(l(&>&UC%D=l`WO{OObw1RTfrAw?du= zZD_V#c=;aszXvvOEw!YD@F2jR*x&v5BqyxYYmu+I(?_x*_9pEiZ9N7vb{8#5kj%g3 zrf`|CZ~lvU+f-r#K3j}`!wT9$-R90J)5g&P$Gp*;z)k--uUNQqXHKdj`7EG@Z3Dye# zAa+RHET_f-2TDRrUPOUJKG)|FYaHLGV5Mlklkr2!oNtC{W`!A*S%%56Cc~(`XMVze zD`Bh0vG`Kyvf;A*fB+>0Jp(BX86V||@cDhwvqtbr7FluNfHb+VL&|o@YUCVQCf7QM zfPxLRlcs{kw&b*=dv1solcl--TRoZcu2bS2%WeIqTewf(zkaXynj!r*W-!K}nV>eW zUa$GE61hUZ^j00hsfTxz>6Srug-y>^>2Gte3d?iu-f{W7*?w4eAa*=~Oo(2Bwu_33 z;XrdMz32g^Sg=eLU6OEEn!;Y3Jf5?|F)rC(MsY}iO@@`tEW^fW>(x!#Pddjk#ig>JZ_76oZe(uC=AY{C zuRUK|UZ0o0EET<>d#H(CEUE6m*1KH)vpS@GHRzwF+fSQT#X?e%@yKY+o#b-AgP4Mkkm$LVZGRN>ufO&^tg3 zsTfRkSx!eTRUuO@T`qezWj}+q@b@ zHA2-X#WDAVX5j)^wQf#)?s&bfli-rDl72^D-rKo%=U1gzue5GjC;$6X!Yk)z_cA zwcIWIE{r~x?xqIL4i=@hEl*NMUze>8GuGOc1G7yH+1E(4I;&K+mgoJ2~j z;6h8QnI)ac-krzsvn8J=ohdtpeIji%efAr+Z+DGQ>WQSN279FKGJ0$BwW0+c_8B8v+x04{{5310fC36MU@E zERlSet=u~A%|>~8pG~Q~xvr#czh0IfWc0Q@1)S$iPhT0oSJ7^is7%tll$BY|Y=q3~ zTC>=$ueH3B7`~j!Ow#*IIO*OAyi&Xn^)q~Y_)t8FQknzV@DqW3;{bvn0H!2UD&s-^ z_7W)PnWhI^9RoVaZUN*x4^$HTeE9AM6-0rQyI%l$Du5^stgHui>dz2Lq?EWINM{Dx ztCuRrJS}VxL%$2tFZ3h_$^vBFWv2I;ky{P79Bv+V#s8*3#EkW29E35~Q#NZBF55pz@{NMg)T)|`OtYw`O<}k1!YC5`5%3V!{Xy={RO=&BN=@? zL(}8O<6lPa{oY6+)AIdi;v-_qlDWggvP^>-zfA-X^ly+N5)P7Z&?^yIQS^|077RTj zWD>P^xZ(^;9=MR)m(Y%hiiM85i|ZZXrp(~cuR1K)EjrCdF2F8Auf#7x%EKy0%fqWg z$xkmx&eb)Nvs^S`v1&62XWC&@t*)+xYZ$JstU0P%;}|llI!8QoTl;~5;3{wT-O2JA zC<{U-Xx*}d%ZKcp9~3VjE66UWDA-zLlf*M`H{Ujs{QD<9W+xS*4i=l}6tYgUYP zo{f$d$!mY(I>)+7xcEk6!J^Se)|&s|rIe^Fx}0QXCqLd=xAdTr!Nhk=ZA^n?4loYB6 zi?~-nQzV!evTW^_aEh~mQe+t_omvnF>T4$$xPEs@;^7D-j#439g32h3#Fl6X**Y1| zEICKE$@J+eMk7W^Mjt&csS<(^HDvXEwSh&2CF7+7j%$ujO?p~mt6MzCJeF|QS7Zp>Pk=4*q@1MM7o^Q3&N}gH7yiW=1BPCqMcmk5nwh|PN zdS46gHV`2*HXcDwTWMlLb$*uBCDqT}eUL~{*l8$WjYzx5wkwFK-sCGXK^0cghPi0| zu^7v-R`&@SH;hVxW+>@^pxCZZM{=d}(ARvsR@ub1!DswLE5D53+8YKjXit=!-3NUk zsb$@S7N>l$l%-Wlkyk_0g+Fh+NvAfpG3=n`P_gh}zryDXgX`Ss-pSh8@lNfwuE%Tx5F_8Mpu$p;FkWEWIZ7gG+9lOO9PQ0yiM zB@k;4o)^#tA!;AYkdTQSPy)o7zm6a*BXSDmC@wlUjlXkm1GMJ`b{34Szby$VQg`S} zsB;1BXZWSCJR#29Qh7)-lv}!6{9ho7QkR|l@&q+3_DIl35*$Mq3b51g(d}!HsL~QargNC3<^>9 zMa@tjMR-Q9j^~Cg!d9hx{uf(VgR~3HeH%P{lxoKMHWNK|Wta^E4`bFB9o6lS5Vm{H6K9+u%Y%1On-0WoWbSJXZXD<^NwmTjo!?5#)&vTUP`E8wY3p%>1DT}*Li@QIz z9j8>zU6SB`$rRByu(#RvdnUd}Z?q!(0tmzk6AOPOdo#24F^=cO$j4IR+Hz5H#?`FX z?&SIYIO|^Uis2)~12_5c;Mq@n4oD!10Kf7E#BUsAlkn!!u4?!4GABXKDiUOJ`{Cv6 zExR=s#IL7Dx1`SJ!MDx-1B08(TL1;G+Us|{+FVJ^Nlp4Im!YjSy}psHfibj>v>c(Zt%ETkD?JN6 zBQYNgAt51;gOLfBg2N#2xVpO1yE4<;I+!vradL7pFn(tE{Fx5$ z2A!k3jg!6`osA>O-;?|^kBG6Op@X@dlew)8;qQ6%4Q!pAc!`OBFZA!v-*g(gng6$v zjpHA-01Ptx{)T~xo{{0-xdB6Yem~`sGj}t#QWG(^HnwpDtii{|!ol;``~S~3|E>5x zBh~*K$->0^za#(Wn?ECY7=APGKMegXt-qcE#Ki~0!|<=@`CveMF%N-&1b`$&1eM%? zPctFCW<{TWWm_M$#|Z!d3noyPgn*Cu2Pqoj6EddrM4p?Wl{PV7_>X>Lvom zr%X*%9~?Z~^iKn=lB~6OPKiTPXU!Ctxo}!|u$V7b$K?0%n!&mE=Z1vG4V^1feeol+ zwiTNDbvNjFZd-l61g)sW!_{_;J{l%rZL7u$3m6gz3<@#Jy|dQ1H`g`5zf^5j|H&OP z^O}ft-mh%Ddb73zT_o6J0pHiGqGF)DFfx+PJ7yvl2s#FE2@oPdao4ji^WL+-G1ZjN z(F=`}DC&(Y5r}JBIqN0>wb{gg-%yBd#?lB+F|UQLB14+cHX7VU?4@+fhMyWlk8;;9 zyQoa^fS`ts?ew=w_<@Q0fq|s>6&jlU^!31=UDmj}r=!exL#9^oMF<%~?`pSEU!doi zi#*!txw;tedO;vB(+JoU~sfIbZpKT~N;M+q1qeS#Jz%&EK}ZEaND)QA462%7^5dpuin<3dUqP*3G!xTkI%BxFggN0}mBob4vdzG8`^0r=|qrDDV zbPs;??N@kNvGV4UY*`J(#(Da$nNnc@?+Ce@ILL&+zb}rjU5MzxKRbC~h0Q2S*(yS$ zlTyAjF_oa%mn3DBHQMlbF>kPnZ{GtNQVSr!Hk6X+fM#+Q(mJ#1GP$L64z3wdKS-<{tTEX8{Wy!9( z)ZO{|JP8G`CpfwJB>vtLMqtDf_>oOzl{4+*KG#HxC(~<~v~h$Uo9a*mcI0|&1ZmO* zwgxwygj;cDnq%1SrUqc|pQ+*6nIi|2y|Yby&HGsy5_X#V=LTsnWifv2&zQARP$I5G z@oJL)Wy+VrAQC9#BtJc6C99d#38gmvdxS zR&+O|qPf}mps8FKrDe=3+B8AH^aVFx(*9*;K+r6bgl9vhdXbUS@1a3)??paaRtDbK z=k8T`nFP4_rTN*)s7^+dm-(T+{9)p4M~N_Aw0SjY+|SLBF4}acp*H$xB~qB zIH|DC@O>m*>o3QaO0*jHQ*0dBt}sa}_;Rl)N_oO9xH~=RKZ(A$f!4y{rI3$|FSM&g zEf`_7R7Z|XR6x+7$q}{$5}*9NVWGG{kWAr(dKNXEI_o~J5iKHMqV>C$`V3>5_C!j+ zSP}TwBH1ZKHYKhUPv^QrrzQ2Wz-qN_E?{`*{OML4nlg1Q^%Mykg7LG-{*oG$1qk%c zFOs$kprxv2)FoNIMM~Ila<=fIIgD{M{(cM}f~aI$_>kf3l3|R_`OT;W8vBX##77N< z{c4tMAaH}5)GO$Je2EC*SxvEixYVRXo$_<~FG<6?u+^DnCWA5V4PggzJ{M)o{WUCq zK-?f41+f~e-5Gi)W85!#`yNjmw`-a(- zV#Z&g;yNhwQ;`7x;oOMn2r&O?ysaS9ALGdR(#Pw*Sls zce;J6s8wHquDD*=^SD4=vx~7m$eG3lzC9)KnEKm}0GEciKw$?H8TrW9O>)#Wu6Bv~ zlBK?CMNe*16hi~Os&av5t2tG&7j8$k8VRU$uNlAiua5)H`fg_pc3R5|&7C(JM0-X|IJvn}Re%R2EJI;-SQAvCN2c&0`|I--y~=s%fN?Ur&fAoU zt)00vPPqBo^y)^?08bTl*^Bq^RjF*l-9@Ib^R63S<=keE&!ZCTdb8uGlJ?F(w5>nd zm~S6dcKXMveRk7X!%CEACdS`t{+qWnF#+iw_cFV%CC!2*_&;(4z=%g^U>Fg8EXuUM zy~tm|Wt~{S|B!ClD&&t`05iOP0|L*>hC>}A{mZKV+AFq5jHV_g?qzfh!hd<7zs8bo zLV}HAVd1@YeN7Yp-^X+yS_b#%=KuSykB}e8lq^KJN!;Iv25|Rlgpwolh+tVE`fnY6 zA^fi46_kEKN0B+Wa$6WrF!S8#Q zEMS4>A%Ur{e|8msl}mJh3~Xafxc_G)1z>?UqZ~8xf93~*E?-hUL4z`>`q}g4zxe=G zBfaVGS~|(O6lyt9yBWuq6>pza);tHL1`NPxn#gt>xQh+eIG;a%M#RToPb#XmW=AZk zto(Jp)@pw}MA2)uyB&)YQwxJ^h5{mibZyJYfI8u&@I5&>Y3DSG%mJ0CM`1_BlM-<) zJU%g2U=y*Vq@>HTsy(=@ssr0J%iUztiB{aR)^dTq?fv=0?Xnv(HYR4$2 z3`M_Q!~Swpkd&O9?a6%|ppi`-kPmiF;0>Fyeoy}8Y8UouC(k@S`ZLSmDY629=Tu-s0Sx$I*6uD1ulSyy+C{*xj3SY`G~JDR?c z(H&ymd@UEp(V)&UiKC-mN3(cw6pLke4bZO-O>f6u1px~)fdtC13F3KPpQ$~ze;Q$* z-Mq=p6#EzlgzO^lz?M{vIX-ZMvdb%d-FVr{5r$4eE-sA;OqbI|dDpLD zVXT((dQaDTCFSLPg~>YM0Q{_XcRc6uv}DtGvOurhvbi0>@GDO=A|^dOLQ$3%O;y_& zEn)DsFz=bmcAdxRa1yvor9#Nej4~L3APS$?!;Cp1JpA(g<-(GvAZfm;^_)vYL_}|^ zCrDgYcA)tnE26ZNdNh+;RX5`M_c>ZN>*a4Xh6DISXgwuh)q4I7oK#dtF%l>9 z6}=A|zR}Ce8YN6hb%ETj=Y3)X-UX&mbC?J?Y+oP5#_*GplTThcAGcw>KLCtHrrWeg zwBma`ZUN4+Ea=9@#RZ&Hb>fFZ!vZ#fD^$r+&xrI-h7sCg`s#a5{MccPotw(#A>`cXL?jk-&bK}^ zRW1K)-*+sA_FH6f*{sONM>pP;g1%^E-(%&l?*L;Y;pWD%T&NVy=JU22=R7b2Zr1OG zcxwhIQLV-x2wmw|!&368v`T*^dv2GS7%~%5>Lv2ag{pzro#D=}?;5A2d?m&UREkA} z;37#Bht3@jLo~Ex*Ab91U?9RwBCx_<*X-i0WPWVNg3WR=&-PH@#seL)AOolb

A5q&I_J)%5hNZ9=knN|2f>bspB0;-pU$(rE>O@(DSffGvHsm#k~B zI~eO>Za-ThzYJ+VnIrf(qWcb#K2`)CpXQCjY!Zq7MUrv<;9w^h$7XVZvZl%TM1`(I zBe2ftsF?C&Lsh!6CvN_|31o^jpVQ;kjP4r*0)8Y#mKzBF`(u9AlS06gtnV`lEjp|W z_ZiEYE*Vs!nF8|<3kZcUGv$OPr8cDvW$y~AsI<>&>}wml)Nn*p6sV!4vKA0(VY+0C zvv7IHy`?1+;r;Co>t(v8;~76pm2EqoOuV(B2iP~fP%OSEuNAvxI895m@bw!G#t>0b zQciAU+VA`_*Z<*0h&9l z`x@|z!t^y@@i$0<@CoJ=6o{$W2})AVM*CD;j1-w{9Q&$F zP|0sah%ObuD<_NrXb%2LS6{k)oUfswGPNR!TAIr2tOKn}=2zLgkKK;i?tWv^{&l57 zll`rn;f<1pW@f+XS3g;lHe2bH`~oWM9dBrOxP$hz!Ibmaq=b9ET2r_|(QpQ*<89fA zn7w_?37sw=tSrX}WJi6uJ;Dq=HGo`C_DkyL=cd2}p!zVy=}2N!x~9X~U&c9{%*tfp<6+9|Ks2|BBY3CCh4K+xy(vVXoxIn);&2#;Z0s@ zdRSIgTh%A&qU|OMU13rfOgFGJmAHD{ zd&QcF-by@qoFw^yrgVm908(v8a=c*XYV8%Je%ZewDC1>vyUxEm+P2@J+qB=QoTVox zCx^h&H|6}0cDwB;se=@z!(p#io0fh3NJaLe77zw6qU_{k^>leYDz+pL*)wf&yD~Vl zE%ri86jzWcE4@8m(_~05D^y}lFY$VqeS3Sp<0hp}w>X%3!1{_*?PUIp%=|UP^d+it zdf_McK;?_mVW)U)%U*qL#MvALk{@bdoxr zM-h!kv43uTpP+kI=`{NUaHfcu)IMawYvMvuxa>EtuKbb{M95&bSs+5{0f#q*2XNt^iqwAA7%4jl)xIRtcUC1u(K1 z7O<>&dCzA^bcwW#Xy4l0pVQ_zrihwsU%bM>K%xW`!M=66YJ}mC`6cAY^EuJ;w>-Zo z9DsxcAzMqM*+@565!u}J8+a#q$pW-W0EV0g*R=PF=(T~5y*1IeyZ^A{|L3n=rnjfy!H0aQyjQ5u)jH5V zIM%K5t$24|X#Z^*f9J7)J4ce=1Z-bk9&y{-{mNpiYgK~}z=AMYEl?xBkhq*J2dUSY z96cQ8jhXbOFd0r(>GE5xw_!Q%kNU6Kh>3`Rk$+9`o1L9CgueW{HuN{n?m_|^1=K;s zGA;`dEFkRePnUipQf=3@AOP(94P_4JD{y4^-vH;1XL);rKh0cNT3W_tWkp?II{>TLInwpl_+aatN=XEE209m6c!Y?U}wrvd>2kb$54%`t+$kM=&raDMou_P_w~mD!?8PcS9p1`$CaO7!7~HX{!ne z^&nYag8q*Ubj5;sd4zG&(!%`)s75tuShTdXeKADBx6K(DxJoK2+ue`^v)giG=%tqA z@z6v>L{JC_3lC%z6ps6sh@u_;WhVYRD3|8`Y8y`V2|V7CIO0dxSNDbqJ?f_Rra3{%KIQQ9n40|VewR+gyJLAt_h*VE1>YoV>R z`$QV6C8J)KUjvK3HG3@3KxtTx*DhOBax|O>%IKyVD{x%&YEKQ91K}$%!gfy(EWm*! zP$}k^d{UOrv%lKz9~>U$nk9+o&)Xqm0>Ks3Qdx$(h{;g0fuMh~S0!bgXwyqpG!@0KI~OhrZI1^}VX z>%wTEd3jmdqGYq@8=aj1pC4AMO=YLG@Fe*^N$Mmca5j4Ar*yAV^~96v+&mFO!v*Y? z?1TTDg&!DD_JiOq;h!4(UlMUk2IR)B?scsHQE}-GNId!YMOb3~W3^2RknOg%En)vB z$VVPP;+aiAjQww>yr~O@YfuTw&F&2|o7BAEBmqp>8r0M{4q*WsO1Tg5+^_hb#cYa# z$V{0qyh1d*-N@It5-H$4Egn7+$nf4-H7?cM97`ci*#Z$yv;$3H=)eu_95l3?sEYWj zWkYNLLct$p3dBRthV{f{%f+_?vA(SP=Tj?Yu?bkezbGE{hYDE4TUri(zpo9Xd@%{) zyEbj}TijA5xxc2-50{-hV=Ig*S{3$RM3rp&pGpBdl3ka4jW*a8&td{4?S_JDzu(*a z%$51Q^J9w}OK|2Cd}9{2!y%Px+YzHR`f%qP1X(t{khMJ#%!ZdT!IUt)@ao(G(N9a) z#!+eo!WP4yYLNdD>xY6UuU1dM`mzyg$ahL+dHihYNAyan7GE_`XZdBP^-bIO9nozw zTuy6sFm0k*fs(A_GWEA<@+PAlI=ShWHQ6N*dbLh(fP1^Xvg8S3bg2hCjO=_ zf=l#2sv=Z_8bq$GkV}fj82*|Y+S5~Y%tenpiHqR4%v$Z#1l(#d-kp7*O4K>(Um~|z zwGf=|8ho(hmmi`7;jDDA7#@d!zPXt^Qm;1p_EI&N{gg+`8!d8*rdn_Iw3LyWibk71 z>hoX4qYD};l(L*oOnRL7Oi?ZUL4EDbLT3_4@iw z{Q3#7Ch>ofA)6#8KpMAX>`8!uU}4t>Zjt7soTUrX7oPTPpeKV5ySk5{)@SR1t?fEU z+4nrvW_FvA>vYmMy3Kykicw7oYP6;w6OGO%bm1i5;O>F)>5wfVd~f$A9~ zmV^wi^EwMa^e_5Un6c9PjiTzl`tvLuFl4e%cnmzAKIadbuS_-0rqSMEm~QB^@{WY6 zCa4=?M+XG?9xEohd@riI6KPQ?`Xq=HNRvfuN*b>Yf53;Bnc&Cj9OUa^i(&90p!--y8tcsISI z{&6sfgJ4EjPhAwmaM@zk-Qg`!!^jS^=8Lv1$l4R$$4!|NRL+~SH`KAphm*0xz8#-Y zF*1*}sS01AD_UK9(wZUb3&~1epD5_y>4=eKS;{cIr^t}kyr9du8*(3egE$`hkrTY% zbiKbh9R+`5Vi$(~vR8b#rh|vU&G4VK`L#k12H07HTd6zht=!oTsW;VE0z-31bcl$| z8NF$={Yq>o+PY^yZ`|4XC=>b7L{81$TU>c1Q*b>sk4Zx8TpcFqY#6UD;yjDGdx9m( zT4n|pJy{oyt{!YNs>)PwG9=!7F(KaahA)wLLlxeyI@Mwc>F^Gyzv}CU^7%pm%B`DE z|CC$B2@#< zT=IGZ8Rqwn3aLsv7dx3DXoZL+`>!}2DS)pSXtiNiqI{1F=EwQOCnZW~yIskX3{9ebZ-%U7an<_GPe5SILI$aYq zX8HJZ@4oUp#jhp;Yb$cl{BK`NNS?Czb5BPK0gFQ+|I@t%R9 zhSXMG85x#ibS0NWr<*OFopy+`3c+x{*IS^|@m6LI%3YJ43XwKJvvjC+zP4hmD}mq3 zKGevwq11*?PHE@TvWom?6Xx83^>tP|M8k8{7VtIqexoGuEjCm131hgn^buWyi|V7NmphYX;k-U>MQ)FSHrXv<(N5g}9}m7>Skh3m zFrD-Ab;C&@w1uKzWJtXILGW9agN9-B&*xV^U{DS1kWzud!J6|``1Dcoyf1Y5QaS^# zr@c~>Hs(Qz|GLB&zX2$YTXeSu?QLDPS7B`$fDLd96#tM9tI*W+84Mq2l`3^&#Y4&T zq;8C`=1^E7diMsm9shFWd2#qM_f>zpX$6VfK*@6Ka{0zWowIENC=`C)C!9?^z=e*# zOm&>l!N}m4>$RG#ONJW9XKzuR52%Vz6>e+V0Os8T_iSv{rONhdEpo;so@kvo@#FReTFin-d z*$c^8FXCD`Aypnmq$|SK1_Sq&DtGBhk zvs!AVl&f2tSn%p~+rq159_xo!oAr&Arz?r;@`il9PiCdED0%Vf3u2GViDQ7u>p?BN zRV<#e&>o=PpKYIC_-7@=uHRO5Nt0Pr#P-nJ;uG$xuSS6scLI8m3PGTl)SV zxcVC9_lR-+5`7v?`yN!tKc~*{9%OII`35^9*4i$%r?Q#*l=#Rx5=E&lsnSh3*K91- zKr%A4N25w;`-^3E7jJT8NIo!x&^@nUT*AyF?~H`zE?X8g^qpDdXTl$Y1o`GSx-m5G zD)Z5kyj8NUyTEY8@U`{JD=bAXCjTIbHyy32xm9U3%|uimCFnaR8!k1avGn=YzLLWU zXl;g8^LR6V9a%f5LJ?2oCEpvu2I}SoB_gPo-xBX1YdeIiv)2O?^hS}2- z!?^Szf8&bWvBS6tWKjr6|U}8cnh5E5T)O?r(D@x#xL6wSeC}+}j-#42<9~fhRJA`kTAp*v$o+3H1+;dybtz*98?+g^d@hq)zVvr8zH3QP({*^oRsO;eCF}Ar z5=1Mt>gtNmFt_T_;ywtg(toF6AiREilB*fr|LIh)>da3(&a;A3^kjvz9|<=hz4vTY zWsdpJcJT`V_=enJ-6qc#sNN$xHSKY4h?JSCWaC{=vhF(pgnDnQdR?i6>v-gf^5LN3 zw5!3y5ER^bqYJTn-H*uQiuAj?Cd*%vGQASd-qjzQ$d1*%po_kL^k4_;-|`mg%17}8 z+aEHK*f|+TC^gvFJ*|F?5nR|>SXiV|3pfhIK%W?6Or;86tv5|Z6oOBu`$XpOepNua zS&7<>9TKRz;b*h3VRz_J-I*%@cW(>y0;r<=)rG4dCVYaGTIgwcyAV5%#S;Mt) z?Pq3R4rn>T>-4|7dw}~S2ne!U+)E8Z6z*~_*AdK&wZ0Qrs;od`L34&PYb zL`WB=BZ!d>jo?+&4{A<~GP2K{XlMAT;ni8~Jf@M^3t#;Y4?x9l{&Ww!Zoou5e)P?^ z>Q09+Uy58qYQ*UsIkf@=1TJj0QWVHZX-|p3z|qD%%wLHxKy~y5>6`MP=MiTD{kynf z_~RI-*~4Z$;};LMil~EuzB)QUyE2Kv@*m>)$v0tmo-nLD$u0}%0UN5exZp=Ku@% z(BBz>`^*QG{ID`I`Tk5g+J(^VwsllCJpZV-VSnAKVo0L3lRk zA3aozUowvs3uezLeLaei3ljws5@;_u378U+Sftdh5 zKbb}$NWn0C6%LlWE45eqDNBT?>@{dVlE0~rsd4^p<2!3gONqw94_7fPBw|6z2vW>F z_ajACp_Z)3TZ%0IX6-c1l}|;(l!$@mKbKVh7#_gA<7*)Rz+kS)M!GZ4UzjMBE(1*Q zx}R_Cu+EwFalur^-tEkm7V`rKr#9OSb+3#RBY&4I5{DH+qH*JF#`_X-2hcaxPcS3- zBZ{ACzh`{}Ysj3D)4bF*wf+SKaD?*2aTh^EwPIzOmqy?gL|)5)z*pPwg`L@69I8@$ zF^G5P<6GLQRl9bUq%I26C9P~45{t7UA;g$mUH;!j(Jdxml-RED3VYDiauOu`9uz$3 zbj6TC$Q+D9nyjBUVMrAZ-8-;R(bK|P4;9Qb4Ux*n*TUj5=G;+p5LFrSyW8;FOb8i&BcwT>E4mE&Csfj_y}}wk zpRllU`Q~OjIr-LrB8*jusN{k|$3lEG1{?&)#t0P^6?J<# zYpij-(E0B8Ulnq;9*fx|r>RK|c7Vz7SI+P1S;ts9JK%qtIICCALPJBlzCokJq@^80 z3Jan9p(v;Dcbs>spe5l4n5^xBGN5%3(mQQjdm8VhFGXV$f53L$XlbuT-df-!gKWR( zi9$`_1F{G1zDhsQOJZ! zpY^YIhd6FVnVA4hV>;}Skr5`>bFJIsIatM_uYz7)JSKpqS-(LU+;;Cjn=~Fk7UKb^ zl8+}abte|#wjI7+ctG<^W@wWgP0#q_Y@`B=G z!^g`l4W9GWW)yjOc@4NITu$WJ*jNp<787g~q9)J}tVu z;Y5YwP1gbkSHoqt%Iz_Jw)O6NZVoyxGc2sZkSsY!<+{PO$)R=iczO!E_Ee=k+#3S*^KH z#bdWiF*YLR_1Q_SP%M{MMszt}QD4T`M%Wgv8qkLu!8!Zc@~OVyPu($p1OMw&?NdRV7*IsHS^b65Ae&!x93y>@b%(3^*3DYvPHL<8 zvl|7=n@h9%4ZWrNx^qQ9WQt+5Y14g}*ob5|HFCOiPyf3bOSuQA4f7bVRr@G8zCDZ~ z1uZQtEq3~LPB>nQfi9G*??jtG7LMW4d|>Lmd;lq_cOSmLf8D(o-gxosXLo03&YU?joGxfypxO2Yz;s)Y z992jKm}sDdl6L;`xcN%9kiL9YkEzs|p(>-oscRpySN5Hf3t(vv3*fhqQes=lhloBQ zKZ<@UD;6Hf8Jm05eeuqWx8%?Z_eW#*H{Y0tBQxo?y|~qrx^H1WJo0~;{F0>fDPsUW zU_6y|=_{?Ko@2-*E` z5+Zj}xQ_^13F#+U-b3^W##eofe^AQg6q?e{9 zftwC#leajmN@7;exb7Niu01c5c^)f;1j3ViY;w2K){@|@{JlFfqb%6?yIuQf{CcGzqZ8UOnJK)$#={NCZ_xJTk=prXjxhqt5huL6V;LI_gPlyxM+m?yknq`CPmYeV6I0&zyC{fN6B}$G*sH4&7@3KtTaNuE&J+C?=zX1;~U?OLj%mTKkCa zxJO$&AJaPU3YX+1t}rd$xJ{U8l6h|Va;OpRM$l+mFailz3oHrg{}j6dv9RK8A+NfV zd$CSgC+^FR-9XYr%J>kX_96O@{}#jDUF@S>lhMt@G@IE05<+cx067EU5s3$K!l$Y8 z^PCqoH`w8U{4IwBPa#_*6VrjLWnWF*?;d^`ts;1OtcUG=X<2=iOYKBPacjBjy478E z@eM-ux%>CTR@Juzi>1P|BoB=8h!N`?fk#aNK(vXJcZ%^pnBrp^i2tjR13eJ4Q&t}W z%Y~J?D7H7^mk$5%-0(sCno_qx5hfL}crj?rS}T@2og>-FWe8tD6_XqMMdhIb=fks@ zDZ~!3Ko2qT&cOf45*5XP$&I)6GCYKEY1_kIGI;g|M8+Y^jOXE6^0M|Al?zG7HM}Gwa_O8%stji`1i54{IJnnI@ zdxQI`jqKe9X-UjQwj zX!5&MDH1kl5G=*ObK|4vafL!XC6Z8;BFeqCkS!7xpZTf{)(h+VPU+zG5X%t zLRuk9#B*zkRUwagDvk?WW>IHcZe9ePLW@^9k>V z)ES;)DDSqp;YonzVdL>?U{;SX%O9T>YoTv=C=zEy!ds_?R zPqmaM%S8sEy=3-;O}QHZS_BE4#k>6UKffOP4*a?`uphq6F=NyjOLn!= zlXte4`*#5{H!a=)PZC1UeiPmi2jTDJN%jkqnnBD$1E0#7a)=1EV>ou0Uxr#VawD~W zicO^k6^+OrLX3z9dmt>QtVC#OCZE!#9or4wT5Ca8$LloJ5gOS9t?@Yz$4p2nPTW2G zlsNsCayho}rD2?cC|{F3AGL#q4-p4UKwE2Lx|{`t_pgX3M0|+9gYs|ZcqN8-Sy~y( z2N_xSBR9iIPpuUcfDDaL_CwxHo_}fWa6{Y@_x5Mt_`BDgVYJUb0T=xtn$r6zgo{c7 zQ;6zGGTYfx$?U4DIRO~aE*UsMZjVz7c!D@{w%x}lWlJJ1SdwX;rZ9yT>1L4KSe~ z76c6>-g9UBpMJ@tb1`LIy?nJNT|r9EP@5mCOyacSh&X@6PqexgE%#5Ej|fjIKyQZ* zenh0yCPQPW)uU;1Tmu8cH`o2-Fbv1{bNKCdsP8101zZ()#L5U) zJw&>e1j1Imt5z_dJZG;X@Nt{no|p-D0*BPV*9|$WklxT>g!-F4^ldlrUm9Pe#Ejgm zZPy)*&o_p$Cm!<2BpSS?ER5}H3*@}GM2J z$&GND(ce&?vVN!Kjzq7g0)Cz!!)aFkOz0c@(WQRUJSyEy;#{5SH(1*uUfvhwXacC8 z`%21-yEis}B_2RvM?FU{_2786zH+S}GDE-j8UehJFZw5Ls!6=?iTT=xiM>hTNv;`$ zjfY;a>4K(~B!Lx%i~F6ST<}hRtBelARiyv*i_7@^5J+L^>1Uyr{LTyB-Q??#-Y=Q3 z>}*2`T~FMZFge-UPn@dwH(ZH5kX~9>?#h8h3+qQQwT{ZWBGPWNlCDmon_BsIpkQj< z&qT~OR<&t@aIjLj63U`u0(^2a0-B0nn9*N;8}6^Y9s&Q?FO$*&7GK+00)Omb1U|dN zt&HHE8b6{y!d-~G&5zkl=e(_sNAjzip8S?Nk!ixAxNeLH4(sK_f_v0dt&2i56ts68 zTK|Y!f=$Q--UZ?#6pjc%-$#HF^i99m(&c&HBFH)(OWbf+9?4$70@?9K}fL?=3 z?u^fdsAmwayqq?;w9bYB6stqd1is>;U#KhX&8#XchqYGIPhmPA>lUU3O*wTZd`$c9 z=Z>2COS6O*&czzNg`i$XK3jepZ67B$DdCaei(N;7A1BZvXAGuAx~3N)m=EB z5Q8VlFpL1|SYv9Wsrhf4ztin(G_rko91t8LcpZik1)tVnMF&WHjJvO8+Ys~fout0E z;-i?{@S3ZW^*gP0yhDULnnQTG1mT0hcjeZ}Wb!!w1;QoV`G|=4Pc`k7HxIQZGJ=b`WZcsA5cVJOLWO-f})Tn@Z zT8F4TNO`NK+W@|xtoYYrO7Vd;BrZ;ZK=#j%uVogfl<7zv&05coJzot3yjFD!haUfT zXa;xm88bovZ&9E1_lT**WMU87DTTIVH(p8dMq4HOA|)KO9Cc-=rqb-#wTt03W{DYm zh9Jh5J#Qs6rt5O~igDN9dd?N)$ad&c!!QRD;v4Y**m`mX0VycN7F7TXP+R2NUb&1K z(mjN<^zjjbC}Wg`8#?rRT~uM@N4C4VWJc5_0N|UrM_}5kA2mytpJ;yQP-8-g`ACT!9ZWa-B(!b ziF8CMvlqzuM$-74sHaX}8t>{Fag{oCUo>}4NSnDQqQtfXdeimAhP%m}r$g=j9&F2Ec6I!|!J+>txPBK3Z?wehW=a z)xP-ikS*`wq>hhY?(>G)PlyEO)xh?*%_qSZ0zQ+FU}qv~!`V_~ljX5Gf>R zYWs|k^yxJ{l9L6}Qdb)NcyOQJ?KHG#fns*ef&|)wGSkODQT{qQEyna`<|7aD5|}7< zY-Dyj&C*2f{K%Uac1Ow~^7umZ31gLJmfFRg-4}i6dT+xM#_U3f#6RD3iMWKbO5GdB z`}@?WKI+_`*Bm@4M+1AQ!HT?5rbCe2I=t$NgOY1J*>$la!?eF^y+`eFexS|9?qu2~`ViW&jm~~CffJS&! zRwceEFlx#3s8DvpZ=(JN(>^_5nX%?fx>A?QckjK=;stm9}R zHR#USYf%KGDhI#6N2qdyFqa&U%`zJ^-2V?9D}f8;Br3>^;Mia=LR(;EZ0<2p;h`KS zG_~l&N>Ox&rWVhRd*WOa{78wDf9>39&#CCfm!>9F-%pFgh2;d$vwWqL^y@0dRbs6O zQaCeoSLFEl=ip0egOmuoQLzv!I_N8k?l^8odS8iC+w<@b<6SZk@B^XD zC{N7{cWD7|IoS6~QdCR3KFUjIAfX|qA0KIWF4gxz_&C!)y`~@uX(JuS%se*xDs z0`$?kUDH`eEmk>thb2>fotIe9s{ck%E&zn!YN3uwX04x4&tCZ&khKpD|8oERugYM1 zYwIuaCg{hBt=4Td21H|cOpF9z@8_KwE8qOBIv|8Le@OQVBg_Lkh*l-Nan!Pf z9TpIs(mx~4SP!>I^%3D17o5({rcHTosONF{uPR~*xWz7&y45HKOavDD?*~ykzZ4M) zA38k5c5Jtjf7xXM7KQAAu6g(twmzS|{bvvopckQl6B|U$D&2h{mCeIck5-tLy1*8DDF3kxPHiHjuZx*8v5 z5(bGMTdJBRed;MO7~OcCH5lyg97|8$;hl>@dR8bsTX&QAhxUJ8YS@VD=&XJ#^?hjE zcqNXLb#}9tTj+kW{(C0>(@WcWp2tYl#xRD0wu%Z_DYpOA!9$YoP_l$k4NUG&KcDZD zt^xs!&mhsNBM~f7<#w-SqZ~+E+u&RDA46?VZ1OJiv?y+nOyDWT9k>*Q_CyDo(`~=5 z)ZKq5=UllMp7Kd7xrU>9FrqMKY3o!WtG;h7-i_&5R{o^@*jylTsrJ6lVP=#@o`^8A z>C16U%Q(^`?aXSum0wi%eK52z(8??j>&kF6sU&<~^hpbqhzDqjmrIp$-vv2>wn4r~ z&y@xEeM?>Ritg)gGUz}b_W`E0&it@-9hhx>2{o%c)$W#E@ zaX3bRqP|~|E>l4U4E`mFfF$U&;l;Yg%BvH*^mJLY_iRGnPBOj|A&Ph+nlYwWddthu zOShd1iRX9+4j)!F!Pxtn3_kkO+7|^!d2cQ|Lt)`x&cFCB@4qua=ehI^W9%T#qplC^XHNvbN-~qN-WR`Y>}e{fW3io_SvQaFp@Tb3&{MpGb6#BG01Gm24?$aS zr1LPK@}dqKU?Y%>#Xs&x)gAv}#>Gcp zZNyVO_I#GFFPQ4mUiY2c(z;5Ef-|gwN{RpipUzIS8r2iTh5i7MfxUD4w^KJm2Tbpg z>}NDj^=QWSUsi$Zs5IvB;1sBq2^ir?FnLq9zYBG5b<^=mNTr!kPT=T!7!H6zK+ zd*XRj?d`9f+L{ZH+!w$u6rlXdB=-x&J>^6e#n(p>9LmP&2m}1NH%|jDu(~{oJWxj( zXoZ;h@>I3WdIR%5q_?y>4s7c`fuY1&y6Mv_0J*h&oaVoq;Z-6Nc_z%Eb?CT{^KegD zY`es4rIZKbIo%x%EwyGgBA-Y^_d9Ov@_JdChWLOJki!1GXDZzzz_qxrA}(E z*8&&&OrXqg3J;DBZKzD`zTz#6ZPn^q&p)Lc);wxHV&_e4(E?W#R2xEwVD5_DQ9EWR zBlqI(vK>-)zH@vAm1UvzfT&w72TM}UOPe1|TWo{XM-3d9keATjePwefW926;a{n(i z8^U1`<-dtkmwL~T3&?XSoLxn%fgXo~PNl^wNEjMAx{+4%riF~lJ#tltyVWN#@4w<_ z*;kZRdzN;b%D#+#lZn(j7u-JdTgtW(rIBMM9_#exdW%azLd0lN)F+MxyGoc4eqi)| zZ%yB%0rb!aWZf$nwA~@BvZ(#(0iBwCGx$GrQxXPyl+97JeWC(v4Qb8{Jz;)rRL_T| ztIfrGjKj4aWmbtBb?-3goi%1K3pgRRX?jz#V5oR(mYWBMUE|{Eyo0TVo+F``PYQ?x z0SF`99`H**biu%|q75hr&om}Vxd*XRPSaCn*vmv?>`va-)TCXND4dcK{t(jFjzGA4{9U`~2pCjS6A$48c@ z>`oc**7Kgo*-Ah!HhhYi;8QD3bM?_Kq;q2qcv)@uyb15;R&TL!0x-P?7o3aX14G&e}JK#B-AYL@nU5m!6?H9|O>z!x9(SG(PjKn}x5JzmwKwvs-@035hFF%ZpdD#kt{Sl>J8%q0xGzwuk2HY z)W95RK$@&^JJ_mxhBrnsT8A^X!uJR&HvH#!iODAzz%Wif9R{5JLtg1~=xAZxDXNif zyM+n9u=n(Q|vN>4RS1O!dP9Z!+w} zhQ(b|Kq~w5{oqR(W#(^# zJ<>&v_gk2s%GqDK)MgSNuB=lv21^Eyp0R_5Qjv3zmvhJAod87*gcn+dX&~fo7IwOP zT+jx@$5D;gh)j}^JkRtVQ;BF8B2Pu7a_7hV@cy@Etr?$m@Ffjh*fH&M@>++~`XIN& z&0hTc)X4f0h<#;jKh-e;t<04X!I2YK9#RY}iBSJU-_Wzi{@-4W1j_BKoB$6U^tY>GQqe0f?XqA)K_$L`vOplzoPlvHm_w!tE7iTD3 zbPVnfV(JCTN6tRwRAt>@a+{^&J~9#_99|&jw7?uAaf!&^SLWQ%)@l-13T!Lc{FHdx zj?#XWHr)zPvB(xzmk%o5wgqRqol~L}WdYtLlVKa|jr|0+@HauPJF$-OoKY;A!ggyz zA11jGxkufIql-I46Y9sG5{Y4uL?QDm`A5;|Xe8^4*H1GHG;M&y@xK*k_@L+6CIx&B zy5n^QT>gk^(HU#>>mpDso2#+azwlWFl1=>gw$}unwem^xT$!%kDbZ667H3D-^qy?y zV1-r!o`rL5;Q?bg*m|lVUNYW1=P7`n4pXN6_$y;>ny7D>^YV> zWyKaPYx&AKbYG&~e7f60_A~x;E%0uIHGgZ^z8R)u09#Ayd(bpysL@~?ck=u9f6l?| z0fN3Lvl0hsR-}T#;dt;0@@%1e4T?J$Zb0Rr2k^+DzZ9k}s19H@XHm?4eNtnLsh$b) znN2#9?hUrk=A|a~h_5_$_kCp*a$m(F_%z`>WNfhGaQK~i?ek$nd4hy-GEC3sY&ky= zPlz$+382uRg$4wIMatewfa&%T=pOqpS74QV=92yMi>kgogkb0chWm{5?vtXEf}W5f za4RdCn(XBuSa*_;&N?_sk3$r0Ej$sl> z3^++qp5KQYh}XCv1XL~4H-=32r*MH=`AnK|jYoqF1UB+VlK)cLno5jdt%e*HmH^Vm zTKvI(At;MqViSPG@?Fwj8>3p(hT!jOK}cr&9SG^-rXa3>c6IFVZeEtANVuSY zfTD8xYgJgKl6>x^HfxY^?fwNcbT+Js{3F?ipFR5X5f(ecHP4$z?)G)XeFR>g@=pE4 z;)*paMd{y~GEu=!i7fi~-0rva5H$tz9JK-pc%T0l!a@H4oUX%$F3^&U&+(h$Wa)9)*Uxi(MEGMg>=hf*@z-D%V7 znHp=tn#8VHrE#`=rI)QO=a2R<-sm;}e}1wZSTTf7>!Dz`kpP((0D^`=g?zeIpd5+u zgIZxyu+HU4+2QN9HXy+56&@gmobp~w{DW;*SFE*)YQCLwINA4L41R-t`oV*&=?J!o zV}D+;T9Po8uC;C4QC+Bb?dJwq>E8S9qafln54aGf4GK%el6;y2gJ zdv+Xur_8cIjOxRnV-&%5KGv;hfN3buz;8(N5b`Jq1=ATgK$7&67460NgLPqOc+V!7cbaJD-ExWpv>8o)ft**xR zq}Far^UQes)ha=3RW$vPGfMZbR6rn~*uLuQ9p9%d1k!3l}RCHAyfio&D8Ftq94*j2J!Q!);HNA7Pc!?5(6hh{=TYpKxR zK#$D4Y()jr;VtNNsI@7aGSo_HW5{8)qBW3* z8PapyNZPI|BkY<*!;A14ANb;5lmhMZJLYmh2TRKBJ6L0Q?Um$<&P1@X*vDgPL3Oy+17Q%0bmpoCVn2Y2 zxEMX!5&B>#5N=0pj66O?lv5wg1U{$JzaxM3c;4O!`>Ma6>?Rg2C^-NSCXCV@Q+9x| ze3KpE99v<2!lX6WGo#WndQ--ZnG&5z4N7tNef(TqeCsO|uvXab?WzaEdWyE~85xz; zkBRU!(lLX_;_7m*F>+XjwHti(gAN_Pe@w_$0z(^BuBY^f^mOo~#f_HfSPaMlKTv*{ z8u^WG<7@5@Tv>)Z$V4igsoXcm6Z;`J0Q9jc0j6KN0`!HsbjyJ#dmDm4r&HQH zn`)Gk$B+Fm*?u&Vl3xSaw4d+KsrVpt@JJY?CYz+j#968Y=esVsVRzpTVSJ^n*VK!- z{`NNDEA24)HXX6LH-o6hX22Q@;s59RA@T<^s4Tc+k~A!zvnrq=>d9OU;XDO#Ovy;nihf1==%Or z$ER+!L~XW=dtS_OkLr01m@+!pkb7EkktspM?RX&ta@hTozp73PUVBrtLupzA`kp9T zlCh!e3_4t2pLDKL;FSr$!VAZXuwgp%{w_vCPV1(XAW_5?i;^!>&2V*>E<{K%}Hh+rgV!@l4W$P{4!d8H}xzku8zl^N> zfUxc7F}XFGDMK~_t&Xn*G%c{2GDLDp6(Kd5~)EV~69HP)) z3GT8l&GGml>uB6eH-jb4com`Qb)#Uush~-kOQ%RuXceZBhr^8pUDjg?Rr`AN30rBi z)Lrvi(ESri@&xVxBlPTlCiKDPfaOwZT>s%6=aza~C+3F6yMbzeI|pQ-e*=aZ*?(E3 z(gJCrlEJD)`4#a64QZ?PRaYh-rln2`LK+GuMVXQNZ_(!a*g78xCTruBo@6tE zP;!g7p{XEJ^uehH%nNzl{{B&@n>MhQ5(=HE2yb3sgf#|cVE!q%yJeH?{l0mHnINF8 zy7(8N)9zL|ZvIhr&H2dVUarzW@qJ18W4=1<0i#(9MBdZZ4H#Etx8(8}_438`BbAg{ zGj3?Yr!1)q7+3Q~YYAT%*-mQZeRDsgij9^vO)Lt9+I#Z#GK+~z;x-!86D9tNK z2mh#VklxJ!!iRz>n`X9W=2Ky{_@-Zkh(Y^$XmQW{JazL+W9kpr4Su-D!asuMmnk3P zZ6kSOD;Sbl?!{9QHUgQwN#}zL-#w6lcE)t7)^3$sLhfRc^(U>m0yU^={8tW&Vs-H^ zC@4Uk#H?8P3MT$&L=BE6(OSdsLg&dHE@OZRA!+>XEM6D;A^GpZj34f9(s-R|NIZ8i z@M9*Wnby=JJLBM1vjPrFGrL4i;%rzSYNiMQz4M24d?d-p&fg?c7k}hsnb|h0U-efG zjL;tQ6<5vA$cN0Lw5cPQXJ)>-mxk3{MfiiHOz~zrFX~cLc@Iz!B{X^hf3sV@nmC$$ zPQVD&a?XUp>0I`t;Guw~0M6s~0~W37_ni-3KP1m){Ujt_yh1{9oKtv9E+|OcABHx( zzff84yr)PMr_NTKu0~YUF;5FPG=6j zJFPTFjKaN>x|DuEM$If!qAwYs8W?r+sPC^GTCHBAL*>GGfD*jeFhC&=`WC2kgMF53-zAK6pp8Z=85t{K*RHT3S-9tgKj8@mTPA z0$&v=5%4rMu5Xr3OmQX8J-n4YJw(fDRxb60%~tIBq?4G6$#uF}^3I~mnGBvy(_(Jb zFjo<0nA378Lf%#N?$x`J1gsgamL~L`}~*()0x`NAtWT^If-1;#s{51 zI$SYC_43NfLNLwe%tK&)b*!!T%P4Q_nu0#j4K2n53JS^??Ws?l+13P)=bm?t7B35F zQ#z-`(3pcfH!AMStc)T3i=th_W&PLq!nb(1>wPMfS1LNk0)&JmrG0vqWP>_d3%zn9 zSrcCOBxu=osg&Y>h`2jH1ZCH3Q}09!T7qW%^sw=AnAQ(JM-LvUM$PCZa|}ha8SV3{ zYQIY_HvNrS$2xaa5odRX*<~;<*(!McRqsN=6nuFfD<$Qp#Txxeid5mpJ7;QG>PYP= z8QmVgu1I5pR=eyonTfH!Gu@3p!|wG^^)Xtx6)njUl6W^N3B_8qO}ZZGjV_VL*}Hiu z)bk=s%=q6&MYH(t{WKj!sY2GRjA^S&RCeP7rPzxM{wfuK{3wCoMndXhaHi^*eOveT5|2$(yt zVa}POm@-t2>*kXg z5_6?WXe^vz|7iD@J|MwPk!Vu^t?1--BK%8|4!4ip-wLhY+AF+DyD^$THtUL_z(MMBszkn~Hj+})2nMsEkxEO*ZfxWES$*~pPKXq? zm(qgT+`(f(iu*d5y;|Y^r~zBF#O9GKk&fz{D?Ba)9~c<)XMy-MA6S{0BQ`gUK9Zp; z!7caH-ILwo2~EB4?`iNiq7^1$HCk=-M7-fYG`xP^K(&4DLC?u@riA(4eiLrdnEviB z5?V8Yxm|;n9`}IQxfc4=-qP}2u9MBXZWQ6yr+`P}=Phk$(wtbUzkJP_#mrXq1 z2SYnqd!OVLORUk_TwpD({UQw*ab1SbWw zB>!;~ti8c&IY#^re#&_-Np0*WN(XxuG0l8eu$^xuiRqTc_z2%Kj1ZHRIAx}gB?s7p z0?<=eLi25;hQZ2Mg>Fk(yg&;no07HAh9xky-h)7UnUoL(PUIQfgyJ*UZ-<=Wr^EO# zDJ;ix;AG)?9z-5;k^)cb{f$nu^@Jx2<-QkuNtT^;y$xBfd;vw?n zYhi^X*0QluMi(gaeK4XM9|m!4e6*sTE&1=86-G^!v!e1*XN_S4@i)F&xef zQ!V5)y=kbHdlwQ*4%Rfxs@T0fG}OXA63uAvug4`3`ctUc+WzN=II!77hz8R^Hoe8C zGk`fHH7jwKiSLkbW?r1xzDst}{vlHU<)T7!ZN_Izr#tZ;$(};Dg=#|bIds8mO0b~6 zb0jTC^0Or=yLDN?u!qb8%16c-&Re{am|tc)q={XBGsPFN-$`M!W=F8y1sss}bWbXD z=y%auQqAm?tSI7qOvH)E`_O{xcC@B2X~UfShO45!naylf9>*n7$X}(CY{)qPJnLRh zL=mzaJQT%%-VlU3*FOW+^XI=F$v6He1R}K|ug6PtMo&D1+%U5IHP7mJ2IkgyCZ#4A znndMa6Ubs&Z~D}jH#nsvl{74{VNP!R7;HmYQaP`zRlZ97T!ADbmo(}Zvhvn(M&=Jh z+9k^S$&bim28cwDT7JzlP70uTFEE_*zTE2WC?g#G#+dacbk{JAotHa|WV;ZvK?6nT z-_o8Aim8kSr7az8-NTp*e03U01hwgLKy`?qhE$pFoD{fd>a*t7Qx}~P71g2ckXGd( zS3`2^JeN{J^ls=5MS{=+MC9WmhD;1z!KAP?58+3_15QI)d3=a)?T5GU27Zs^Wk!Q3VwX1j6WJQ z)C{Cu{EKLGK%Zbo)#reAF!fQLV;l6(%A^BQ}64-7wH|ibD z*SNT;4Aw@w4Yi5PjQmylTjo#@1pFr%`nDzaDbpvi-m?&E3h#=?K8(>G3jbm9Zuru2 zM^v?kkju@DZQpA=RJbYxv97MRAMgAhi^3G&SW7w2F*W&Q=xZZWKclWRR{R?dP{H(30 zHe`b#bu;FsRG)J(`=K`QC(ZBqyuvR@uT;&d<1SAxk=D7JEDMxPeCi`gVv5*yw2jsjfOR~Vm^_g%vZd=mIku7hE9})a z9N4Z5*e*LSGrsyYqO|eB(x~sw+a19R@{OD$oy9j(h8}plQi9ScKxuq3yW>7jy^-LB z8_0EbHVe~&?59$y!S#()i7B|hf$2^6a>+iq($AwW1#C!Sf8=2m_mxzo2FCb>gVo`AxUwIY6srdWzM&YAKn@>Pkg!b!VP_^Jo_c$>-I7yn<7ft zTm3T}Gu@9tn4jLaps#+Ms6)_#zfioWW+FdX9U84#0=Qo15)TDAx;kWZn>In~6=$u! ztm-SYr(h*Qb_e#|KaK4kO$fv6pMMM4-YLKF{(ud-QYcwPAHu8J&I`F4wDz^cH$@E? z42IhfmQEbiUei|7j3rCBCz>v7M|zZh5y$#OfxxM@(+Q)H67RY4#q22a&MQ;El}o1- z+03v8CRZDR9lEYe zB1%614=E{yg0xOV#5e!A33qjj7Y66g3#QN%utmN2IUgk1Zlc1jZyxNbd{O0ZWNmLj z+w3$YCS(4i&AP)aNFtw^KWr9{$y{#pLQ8DX(Fh4@;qtu*N9F(#!Pua)k;9}2taBTP z`NiHN`A<`9BM3hS7oA%E(R3KHAb!b&C8X&Q#?%Mt_a)I8U+kOinNL)gL!&_6i);Mm zsz&7U>*H$;b)pZBS`4MpmJPw3zDUhg-eHCDZHM|F5Vh}K&FxMUP7E%o?c->^=EVIA z3tgXv@sI1UjZEiR~MxDiTa3%XdVNbKJ83NOQ=gYi_5kZ&y=8d&` z+h?Bn`&Sa!vM%-Eeb%(A^vt6l)Ej~)#)l@Y*FS9Zx&IRUTZVyvB7sTB~-gQJvE(VG7yO z{Wwl+e3&=$8oFFS?+f6E4bagPC3BzYW?MbvpW*$>;68WI`U#n>FZ`=(!+r;&n;9zQ zAFe_qni}@8-!JZrdH#TC+<^*ba>3-N$t5z|JT_dUdK*cIGfM4Yso8=ywbMIHXWdVs zL+9>Q*sj`c!2#W;%1oZ|F;)+}EZ{hRHHDMFAPoGjmzv(A?%fYcjr}p4V`Ov<$4XDS z&A8ITW=0j&cRQ+bX^Sc*^WAhrK1>|B=2t)x3cSEqfe_=@$%$@q9*CY_J@|`xrjdB= zXgzM0H|7+MGKKRm6-ZUqXh}~y%OM|gTCvA|>Wnl5N9&AiO2t8AX@Ce7f(V&p5W_LA zG%OPbA8I4rUA3$ovnU6{E%ywt>9-@<@twTq#t2TV@>*iAt@wDh>GxKHYedBs zu`RwbO>bOoWT}yjX(uZrlnWz7KU)^L#rKZf)#j$EbtjuMVs@9s)aXn2Y)ys|?gPnx zFSb_zyx2)jO-BJ$XyTuDgO}sM1Y@O#mMHBp`q&j_i`OD0z{DUWWHOVgJc47EtlbMe|26!fn3C4W>Zmhi#Y3kvrPcj}=<;1o1LSr6>Fw)-W<2p^selmhA9fs6i!W#S}{?{|$*hwYS0K z>rt`7tj^zP-;Ck+fQlE|E#8p-%^Qqh=4|n`SdX%;@YGfVzHbFhBs`Qq#H3lM!O-+z{kDrSFg+zAIXRz!vCFB?{ zLDyoKdNWqsfdqviyzrYn)(L%Z_PABi)(8~$UOZbKtx>7b&x0T{5$k3q34V&G+&Su2 zg#<*dObNrG^8%>FQz>F6O$aaveO> zO`OVsRsHt3C3ED(hi|i%|2dxJ_%O23fFRr*b&o_!X1)6tpTOcejJ!bEip1VR^vh?% ze9MnTZ!tntSM9voXb@-{d0YtZBTQB3Mk}-V8AmSqNXu_~4G1z8wXkL99shlQkz5bF z6eq_8=Q7lopCJtJ!W2Fd4e}}qGE5%(Wb?iK-v40Tam_YPKCG;$0`8Xbm{LyF z==;}Myl`Ruonj>h!Mih6wJ<+*tl$@iQf0ab7RhV$oP>@I?jcxHCy;>!2N zS*1h2F>`{fb|3kYey8aTkqxX0zPoUV2N~3^e&c~R>}S*`aZlN6JmMSai}YA#(C?)f zuXKkrH&kgwdpT>5u3eZP{_pL-uX@yHO0p}qLOb~i@PbY02gGu+gqFtS6VfypQ+~mm zJaytJF;NA|qv9x`5=OMTh-=#DV`ufH4@G=clA{GPf@d5IdjD`fSI(q-Cgur4dGcK% z1pxZX&!?juI5z^}py*^ze3Gv9q}WmHxaCOGqe9Caj?oeG>RT+8AwgPakC_@+~lD2s})Uy z%OM@Ti6~Fp-0VbgGX3enZTWUD?tgFx0);!%ETS9b+9d)td+Ns4{%b6TqLVK)t zB+!4FlOsrV3Ex9^ZO@7*;LQGLiRT|AUml)`8`EcL*%Vg-Heg%xO=>Ll*%yU7L|$rz zy-Q{ef$DlXd2{l#sUYRxd<60T;yt)vG_cDDlcq0-?mIB6X6f6ao{syAjur7`*8)T&|)a?}=;{=AlV-xDW`Y{}9RS=(~ z=}wBBFr|NB3fy_9|i>lo0BdE!)FP_J8DeyZMs z?%{*9a+Xrhw)1bqb19uLg5|Nr@mC@jzrbGt_{`rp^5PH0d=chxn2h-`HAJ?h*bnOv zTnO!9*>zSs4@%56j+^H3Qs~!$nVi(=@{hO-Drp?sPW@qFsQ<0F755Cz_-@iNEhqdQ ziPs*$DSMu{P488~>T-~h=YoeUMU*bUEq{;i{aPRWxEytdcBjG3yKT1~Y}DMD9Iqa8 zY_?ttxo~zs_IE`=tZlB^?XD6Jtfy{n#<0vbZF%wbJY!8kk%~zHhq%itsH-4D?}0mH z(R95NBF?c1fYTDX;Tzrd3iOJ-QPoUwWbMUV2RbHe@M)d=x|yYr&M2 z={VBp0$|65;uZCX_&^?9x;#_;n32hABr$(YTBJT^BE2($=JRni&B_>2X5vz{RgH7r zEf3VZE~=4yN36biH`Uv#6wFzF0}~$3Bxo!{2s0DxeYf z4ai;$&SJ`Zq!|;9pWMAt|ANbazR2Nl7VEf+B(-N=i4<-3Zbp z-3Zd5aA~Bw8w4)hzm0ws-~0Qm_ttu>^T%ELa?aUz_Uwtz%$|8T^-_xTD6Q%K^@gPu zfTt=aj)}uN%?`Ri*Qwm&gcU)p&okjr57`#Kwuj(|l23$5XQfbiszj)73uI|QXxbMc zIv5AEKiIyBb7v~%Sqph7Oaym@hD7&`j7x0kh`bO#uEzD5ro~y9)Wp_~h-7#_ZYB?e zwG`=u?|T32IL+~Idcz^e03FC3V54{d1R|ZDx_^O7FtNQMb85Z`iT}CMA)B*1b58n8 z({f`>8KhKhIdLk3;(0&cZ!e0-qpT^>+6c9tXbI*Ra8@v*d8*uMR%mrD?A1mA=bTjEYQ>;} zacu|v=nyC?YUPk3B0sT1QPDol zf#x_>U{?Q_IXv5+%+8OToF*DZ^(Yw^{YrdTXSKR-;q>Hq8X%c_8dh#6Ot8UAs-4fw z8a@{&D564Q!;=oGZqCmzhI!7kFdTCtq-QT1HJs57Xt@}RgbFQ%d}4#?Vv5-)&Tv9l z{hCWTu4*0Dm2>yGA{=F;QXg}oKDaz7%gD%0i5Se`qW4Co_|b>7_8jGx{A{E~Qe?pn zCE=Io723nlDu`FHsF|{9Bem-*HyK!M^g!HiMrRA_T}dAteEjuj+9@X`rIC8TilN2u zs(IYaDn5QDY=zuGd3x_i3?>{L|hwMkWR((`pg@zp}%X+d3_4yGCGxlMjhYnK|L z)`3n1`=I*%09B|E?wv^5PkHDVACY6SX~23r!R+oYz4;dLr0|3=#>Mvnor`Vfawi!V zI8Z`r+n2S_AfvZfLStWu-*rB}9he?al1*6~Qz=s;sji&2LSi zRV$ z;)R06*kli4m#X(hvYu62(FlX$OrXM*6lgkN$^Q0~3Yde&_-BNdF?)m}z2fu*&Ypln zS6-i>qni)0ahoy0%&A7$^}ci}B`{_-qaE2c)L2aQRz>zs%P1j`cl z71HH}V_?!3Vr73)oJ^^qb!n8=$eJOyeLzNnv4# zfS};ooG+Qiyh^@zAR!xVLbuGL>_|1Wavo@HZ7p9JNvYf1n$o8%pU&B#3#J_^D31fW zxjHzI`qu30oqo;e_afRgos!$z;2bK|Mgd=2Go?xyMu4{kh7MX{|7i~Tao!<`h*aX) zk;+K@)ZlvyvcQe>QwxVYEl4CQarOz0RjVbM4&+-A_HTy)4hh#=to-t^ueZ6aZDlET zA&Ay6GBKHKjaNiPM@xgoI@F!rj(AP4FS9;=6{@&WMov18|MEH%929v4Ks(P3s_dw{ zhjEJ{pe3o!Z>N_A1q7mMB(lP4R0+ zbdvnhv${Q-OG71#j5KFfVPmGGFrsYm%Ml0kLX`#dvTX81re-tYGU_6a?UZ&p+)Q=Y zTV`NN6X*}UF5mW8U40;wDc#z?dq#eY^h$DU>x$fW8wsmfLbwvwRK6xLUhUm13~Dwt zP8VKI(O-^pFBj61`2J&gg+L^u@<9N7%{N&*^l=j-Rj%O9H|U3Ys;W4Xp~skk5;{|s zrB6sHCQ4eyA8gM}iim ziA9rEotLK|&CbisO`qJlryAuSSO*0`u#gsD6%cnf^wDip0>B0T8ssu*d6)HRPgo@` zG?0E$okgMj-RbKF-+iQ^d1b!TQF(K*AxBREPOv0QACH)MCDtX8JDAeklY~WjGL|a5%*5e#z@gq)h*`mbK@GmXDC9Uvngj>(bLI+b;>Gk2-Od zQnPW@*pke$U#XKmj$`5EXl5zao$S8!oF3LNeRdV1&3QPO_~PJ|`0LIdRdMPFQyJ9e z5!{5mJ2c! zleHlK0-i;XSaj%<`^m9BwA+KOK4we%Xn0V}Wzn}v1olwUXAp{-%Uc|+a*k$qf8$_5 z@x{XCq@}HPN3(?hT~3H5x?j_MJ=&jzld{kBNemmBTn4-Ay|t7c;E*K< zq%X%}TDQJi{~N;tjtmhW`~aGi!{GV3^C?u>H4S!Oo?M=jj(K_%Y4qm(OMbjBw~{JwJ+QX%cE)NgFX)3#*m%3}~8iHOWn z)CKsD-pUM`!X@w?3HqX5TIoq9Vgt{y%I_c{jb|4~6eSkXaq+1>JN-+tJCV&Df=DSs zx=_+0sTUw%R5$V*>zCrX&L=Rt)?M$>Kq(SkC8>pzp2Q8ug%E$YIg0ggPWvGsJp}+u zMm&f~H*u3XEWHXCRguCzw9kn5*I3Y8C*dtWt61d?EKCs9+y$M0PVoH?7K!>e_fQyr ziyYp0D6A91#d<7MP8&0rlTnDuR?Aki&?`!vrVfku89&o?P~Ie*gTnx1DDj(1TZEs= z*vtK?6;^6{M-;!-h6p47!9N%Gqy-{9Lco7sC+n4TV6& zD=`^4_+mOoq|*!aw)_4HZhuAKZO@k#LAgUWdKoFlM!pL6rQf%QEfgasJyb3gVy+0m zA{l9&b)EJZ79ilDFT!z98)sFS4$1qd`yDkOWeB0O^=G{4I=^Gw*HCBZ1Y7hIcCQOa zUP40o#JYjS;;Sg`0DWepNQY|8m>|_?LzTr{+CN&32)?HC328|J-C?j+VYM>DjKont z9dw531ie~o0KtO}OHXaqpH|R6m)OA}uE5ja?qr+6PA6X7u=v{&4IR$=cxv5J9TPOS z_Zx1(Q_y!d$wNvZQ32Fb%m}YGw%3M}lRcXL@WCmsZjd1UFtiA|$d~9(qx*xE9MVQOL7&cRyK+vtYK$PE0z(a; zDNZQx6gI=(BoJ@cF&{9w=t#jXH!@U%WiUi>8*m3Uazt^Ta=H%pQ}btjm!`%t*v9@l zMSmFp+dfbcR7>k_f=i0MK;IZCW_SK{fiZ$SZJavY7&(Mk6&tXkGO{hOoSyhZFNE{3 zkCnjZ;oW9-I5?a&IVthSj(8g>QuxYD3j%GQ^0iSVDlrHQ*K8#(I;`Jny<4YkZ(OUy z8aW7PqVjE5r^6YdP{O*;z?w;|M{65$uOP-RaVfn$Ngvya!uGc;0^EBY=iQAkQc>4R zda1m}xnT~SaV59l#T0_p`A|iWt=i4{7mgTyv?oMwek)t2Ti2SG?_;GN?jrev#pZ;b zSc$cQA-O61gb+r&iSJP#f@xI~5>a!=*I@eD7g4&^SOr1mR0=z<-&*;{U33X3+bT0z zj@}O8V~ZW+|Mm{9C$NcAvOW$B+KiOA&5;4Qp}zTM6uTqWjN2NqIWo#+3EVs!- zk5&;VRnojjU$sD+GMA-}`L&K2C^R1{9(p!gHxSDHWeTxb5&*39!b=ObO7wKrI}NcF zv!9cKJdaz2i|5{wgppoMNu#is98D}G7!Ik(8r29xGOo8?a`N=#&(!Y^lC9Pvd9$l^ zOd>KvjEn~d_}WkzS97Q)R0%wihd!r-#rHkt@R*L0O!+KF;EBtUpYPhz3d`0)h{iS) ze@)EEeT=yYoa6tl#!L`h77Dz7Mrb<(fbn(fK@wLrirEpEoH4hC%ux-^^@@ z%aqLr={XJp@3t{DzKpyO&KhFq+z1KkN+R%mdKeiG6H_*A3A~=0j7C3tP~zo9d{tBD{n$Z0`_Lyu7W zPz%!Q$cB0I+uWM~neW;wJ0bEE>O8y~A}oGRnr;2rQkH+rR)8V)L7$py;*?{7TPc!R zCzQrX4}Q$rC(LD4<*h#9hfQJ-wy-*6u|WEx5dmlu1cyYa{LomzT7|@x6q*`B+Vc5K zlVHrSR1?whQ_flO%Zf^A;YUy7 zEKb=CZ=MDb^*|poMRzl=qWVMC>$pP~9!OI-VQ7ZCVY^06!1~`|GUosJde^wn9w5<6 z*8q00n+LMTfXIAFZU66p&2QNE8h?ySro_O$p+*qRbGz!?;4PfG>-hSg3nTtNq=$1A zem?l-MQ{k;aoHtmUigoV@=O1pngE=~Yi9HPTQ_v#PzFkRIU9obJL>am%fAF1cCVB8 zpIQFjpw0h_sku)rmTKEnHbl2MV7lAzE=Ic{K_-3`ydd7$I@DR^i; zdsfgotHe8%k?+Iww2&GnSV>8VFw3LtUq-qUi_mXW7Cx|+5fycZ=NoA1Xjt)mDScj+ z=!Q9)ACbRv!LHLY$Buz~53J~Oj|qGhxOYKCuGm!JmY?Q=zsxw!#a?{Lp^vzL-<`+t zv_C_%xSopVsnP9-U>%Q9GS$ylt3sfd`~GHG@A}MNcNEOy1;tL{wzIEBksfJ`(_M$i zsyluL!ZtNigF{1^lySuO?y(Z3P~sVXhjPJCkX`=n4Qfn}Dw{4QhW^}^eEo(b;QpIT zeSP0S$HBzJWNAd8{0BD#Z}6hVjwNUIIy^=aI0lPTfy{_n>JA3#SCtv$kWJP@)0xpH1ko}Xe3$7LF{mJT{&Jufb zY`*my*YIk=>oJe)!2#r@?3bH=&w_;`7{srQ7zB>ZZL zvCrik_o_OR_VwzXY-HI2qE4=4_{?7U8;>asK zqKjViayRtJ*z{}@(rA;iF@j=gf9UGo$sk+%QfF-5z65NJk&%(pk!W?B1ZmOjTd3$I z-_X!dP8lfIkE(~S-Qo-?JMF_d+4Al!gO;NYRW?!BzK2jCO}iXD17U=+{r!Cr4NT`A zjE|nKc9fnM!MxKcpehUFl^qV5+vQ&JTE8q=CPuCraH&k5*?nPVE) z$)?1;fC|bz4Y(Xl$qEY#?`Ml%vy2Wg=uLL_!HQ?Bqgl0+JT)?WBw2P zOAc#6(S1h8^U8^L>aM<^Wql@#PG##jJ4cc=Hg=%T^z*SkIVm@%!s^Bq=F>f^dYsLv zn%Gt{RoL!&8vFjZb+_@V!zQt8N@k|_FHy$vQl_s>MMF`lb;k8(hkSF6$O(9ojJVm(!S)X9(H-8;r#B6Ts_pDr6c z8@9BlLN@am3j>ia(EXV55*FL=xLGCUVTWEIj<$gA`NEVQGO$+_g z91=BS3JMjaHvO)e`($KDtwIe(-S^^!95~l#ut+gworQEiiF#{dp{TV8^;ov--1tqS58im4#R0?7-Q8drl`1wEHciw4A z$$aXmrss0-M7zYmTYzql+M3|amBWK;JV@iHC)Y+n>tNXvqyJ%^>4}C$Oc-<5 ze&5#=+1u9EUH3$cOL&wckj0RErD{O??x06WLUOp9QlC*p`cea`3)SfH-%j{f_g~Ov)YqLAl5FUFY zvetDsP#+1!ey^LC=_sD5u*y@?2k&; zEd+#0r@;ZXLiq7cKZ!2{9DAE0Uhc$4ExZ8wYMBP{(&xzojs+>wSnXhevh?#A= zG1(eE_~Ng8R2OK)Kjd_s(KQH-GxXs#1pEWdo7U%p_L&;x=`43yG@pG6*L{&uSh|yO ze8!va@r(vDN+v%X%j|K91CQo`n_eSY{;6`x)zkTv|NR3f)ap&MeA$aycw^E2@}T3e z2ZDV68M_4L{-!9CF6xajjC!4wLXmYB>z}a;IyjF}H;pRX8z#6$2n-|?x$gfnb_(q1 zlB;}+f7pi_={f}=&Pa&*hNbqC!L3(XbMiO#$U_M5F;F?W?H}HZt%_d9^~;*0Z)h2Y z4Hy*9AbvOOW~|Q*+yD)^+3V?lewtf(5tWPJjRb65N7x`;?j@96UY%5r7N;0Du7FgA7YU7yuv^9ss}tAj9fQ z+1ojp**O`#aCa~R8?d{*wWZF1hh@qJz(TM8-}Ya82TBtMRJu5^pI^$|Nv*Ld%vXsc z^X>=q;XY9pZSPL#EjH25w6c2448O&e{77KUUx_+&P8Hm6m6ac_~2OIrNJY;BB4-9YDqvS>bIIP+oz4Q z)Z2hwtXK4`f39O$MSBrP;OnPx?A1}c32Q56Ps7tyHhK6+8qaw`7sGrt;7d(rV~qyT zO|oJunCZ*Y$=4>Zi<}{`Etm`6mJpj-`6-ooNUJ_YoE7W!#@ev7dA;)TXk&U8d8T&L z$VXsl#HODq?hgzY`wmdEiL4f1Phmggi$J^Tz6rUPUBM{Q8vOICNBj$%?Z(q~No+_vkj^`Ff4P5K z$a8OGT|e;P`2Dso_X8pT@c0M^Q2QG#YqdCO&!D-c1Z5o>l$J&yGg~kR`_KLV==fjE z!N2_U(s*UnE>852L%F-q{>#aQSZql}R|&Z$;0qr=`FX6`=v+Fog*HZV>=&egaI(HF zK6hW|7KEdB`hgcecuFI2@r7vXT+2d|ZycSGo-lyk%Q%*8o=;w+$SSxqxwOPQ zDfv?LQ4z94D>Hs9U5P!+u0x7~mrou-D3ao@*Q>0%Xna);GbyRLUl#JYoS9w^^6u-xiwEtX|3Y`vm9c*scn%kQ;bP*qse9+JU#tpr1E^w z(=!#|EG6}UTi5w2vbFx(xb!7g$+0HH&c!#z`*dDXS8w10`7_|l`DJUHVD8E4LbeBFz=EMCjW z@{AYRJs|WOa+g~hUQneiPXfiHExjOypm6tjQ>uPC>_stQw!?13J--7ayHeZ;nia_H3jZ>Jv&Tj!;}j%Z-x6boY8)&!FWEU*q7GxDeL+g6x>{a z9gLnJIU+F~ic2=wKyfAJaIfr|fRt;xyncGEx^?6@c(=fL-I^*lWaiQ}qb(BI!CJOJ zw3uX!hI^!jydtc!3y|%utINGa<8a0Rq0(SOIxdJ-FL~8^MI$T0Y$lwn+K#bj>}y z??kzRpoUp|&YYXfF)EHIjl#B&BazY~mH^2^Kzx8C0uHIn`v<)G-ZS-O&u>rqn|V{p zs+|>-{0CdI?x^aQiVjR~q_|jZo}Aa_^&mckl)p^UK+u>)g7-3tSC&ttp<+UOhRC}@ z{LG3J5fcK+8g!`B!|Pv{o(eMZJ~{}WKYlB74)C_p1HEE2AH)ySGveWyNkz>=v|#P)^r07Xq9aCk~oDtz9f+NDcEG1MsQO*%H~4MuV4A ziX3qEA?}AmeJ+>0m_Oj~&O2C&B5>h7@N5r-5bTFehv1Nn_sb{)WD)Ri_jYzm_R%m? z!FUa#@%^ls_yQYOO!Oq7xdk-RXANT^Jl5Yhow=>SBNShu)q0?2&F>~ibFVC*roNs! zmDzm#u|aC?0x>JVooe)y1VvsL!yPcXH34L~>Ue&EeA0YpuI&EJrX%+TeVx2Sk+PUq z#4E&!I<#Mw%9lAFyq=TNq;QsKd=1h!xddJ5f2K@%)m`s3v{(m2 zD>X6nia&}q*wW0*3C!`^f$L}0PS??o*=4}?shD_teJxViQBSAfRU==s<6iXQ{Om-@ zHa@#H8qL;4N9)lONy_d*50!;JUS#=t!(=1y&Gmjuc{3hC{IU6ZuGN-j4YM00wd?ES zY0M^M@G_4^S^ml5NYbN3{v+Gtb>TW05yy$#r;~OmTAc^=PcAs{RRUwF{mk}OaI~K6 z);Y^s#EExgYC|%aAYzXiH1no%HLuUuYA> zd?^WcbAQW-P@(ToX+oe$m7%#*64`Sp)rByl)qYFSlXtX;aL0L<`&7w-ih8mX`_)NH zYQScDw{V^q)&>kSduGTT6)5nB_z2!ON^@hU5gH0TkrGDe*$*X-}LEDO?1J=jEx_)YESsZwI0U(+i3yt zL_u?#PiMh8qirbmvUCeaJNDYewBi9Eg+|7Tq??Skd&!xVqV`k(*g!Dy#6-~yh8OLl zk|PLMMIW)I*s&zsFV@YbpEDUm=rJUE&uv8Lae$|UXo2gN0jfb)!M1(VH&t)4a{qn9 z1>L9@7I_6X)G#h|wVeT${L+~7f@!B?ZhM8dRLC;>UckxpqbL4!FJ*pKb)*5cF`R!q zrI1NX1)6Uk?AU`qWVhs*F0rTA^VUE)18NO8oD1kDZVki~G--3-4QrGL2_#t5kg~i+ z7m4dIfpf!&jsQ#))F811=G@@9ZO*JYqcAOT&CwLytp;$+W=5~UHtb{c`<;dRC1aY3 zc6Q5O^~*gY(0l;3b5bfSi1 z(0*KThHEk6V9cjw*@hu#LddSX0pSW&6;nD?HUUWWxfok$bNA9HJ_}t>O}#sMd6K~s z6VBdvvy zi-zdnlt%{~`^AK+>^uBDI`0n)ylQalQ=)Yp;%J*=v>CjMhjCF9p|lk`}cu}4eQqx!hlU{Fa9q`J|BMR|Ke>yby|nOB>>Taafq{n>5p zkeng|e6~F}dL8L%yhHJZ9a&M&=lT`o(t+F9Bwk7XA$lcy5}1bE#I-z+^c!o=knl zkvTE?PLh)Qy8zplX343>owyCm)5cC|$1ni=SQ>d;Rd#c?0GZfc18E2h<058?Osw0} zL{6Bld<84D;!fXllrw$`^_t)~VA&q5V)txpRUaO$ih0$#5n@>@jQhnJWc)TJYw_`X zI}l0r@G*U;OiLFu$CQ!^;%I$5IkXo$eYja~BEo7@C=?ARVtBY#%@TXuzfArVO0Ze( zc5$A&8ABy$NqqxUtn9ge4ypTpt?KvdbERAh_3ubT>p7f@+%GpSU z(81on2yMEf4$U6)nuO?R?5@si*Qa|kUckH+w};RnnQQjV{I(y9HG5ZAmpiw!>bFgX z13^jI@`fg+O4#|VVL!ugMKk`+_bJm%3UsMI;1yNxdoj6ON)HHu?~Pm`VNW|4#+sft zW74Q3qeJ|YWlx-y=|^d})ov-exWs+>NQkW=|<0pR$3!N9BwX+G}#cnUiCOd{o@TG#-?` z`2L1p@_5kdsXPtdZMZ-X{_{m%27@C5^F!=&bVqSWufr1Echt+0@MXl<5-W{N>Ye0g zuH7fN<`+J%Mo>E0-&>u2H=gEW{I<6>Sg37%_*!X{i_~Oq;i~(MMCcG})~1ZnJ3ppgoRIWO=BAiJ+dz?~NWAW9arvk#h9OUEXBOv`M6kxTmY^Vy zzbE{TSU*vrW;yD}8#-6tgee=Gs&DM)tn=56%i4E_7BL;I&G!YjxTZ&B1Axl5I{T0? zJ-juPr_yS#zibgommY1>?7W&Z1{cnEFV?sdXLDBVWPG5jVD(W+6j^E0y!e9lL6gaC zK4K|xx|^V3z3-GXasUz2URi{OCSv~$cKL>vQiY8JjXdIz)^MC&(>ffjP@MC1YUvd-nXROZ2m<9$0*rhg zl43J_opQjqwz|KL9hTvQz7KI8g{ft)guAG=qe2>FV5@jJ-8zr|Swboafc}CT?nI71 zsf;YSP&>I`)<$}kyHk#T4w)8%)(z)d)wpd#mU(HKyBynTBFpjP&=+$?jY_Jc7L`3j;6=?Yb@)rT7!bNhtFDUvrx|zO=m<3TTLnTZZ zQriMK)yQUy5%L?%uM)PtlHb>y_#Y>hk&rhYbOwGBe7$r%;eD=NCTtOF?qjZ3nxmr3 zpVHbUwfOmom^537#?I8?1kGmSM*J?ddPZS4i^{^Z05Cy|7PC$5?kjtX#iY+SZl;o`3 z5d&{LjKus{&>Q>h_Rp_ohrFAc^Plk>JH~CZT<7q;TAEL0nHuu;z&OO19BMwqq0VTk z{hF=&*2Oy5yjFw>zC|T>WN%6^*sx6h5W{2P^C-7sGjUT+na;M}6R+PGdu?e-U-fW7!661mJBEu*;i*LOTw<<1% z1u*O)L3Tll>FQ|;0+#r~kOKT^hL^-5Ql%NBhcDJawXe7eSZJ4zc zvec$nHivfc#cUAhr^eT%znO{vtefYS-%qmp5WrE(7ccld6{9lxO-9rVjeClQ$iUJ$i&Q&Vf!G#E+Ox3G-`$Rq`Ha}}3Wy|nJOKana6qESHTbh`) z{88=c15}6bavQ^{WT#D26-##+*tKcka}<=-$XTINg*+54+rAbr0acr_^ym3@NpM{L zMfM#(bhi(SkFuJoqTc10o-_@w7GI;KNzKc_0NUjzzW zyffUFN?#lCJfzF)dsFEUhUREY;0e3juNgbcm5cg4JMg~7p1LJKp6vC_7hh?6^aWW* zZb9*zAos?pf&hr<wwCDZ(yi3oz~m8o@|A{nCQSGK;!1omcL5jUN# zv**|(qH|b=pDcI4pTCK`B<6UjZsQi>yT~RssN?#ae6Vw!^~0-bx(|#4TCqxY$t7A` zSgS`D(_1i5PwQ~0L^wFI_A@Lc3Yh6a?Z@g&^2(@r_R=uZ2qieHZ~VvvH(0`vLZ-u1 z!J@;~BLn_9ZcoX!se3X$B+T>Vs|5|6I*+hGrdO52EAEa-^^#mk6OJ(Wxi)->cM7qm zSrQLq|CY{Gn(+Dg&@`TczVZJ^XUjJrGgD0`kd>XqZ&_{nP6D;_=b$6N6&a45S4%=V z-U;XiDwe@W6G=e4z31 z#8o-Ao*RwS{>IZTR_j?@{VP@ZfxPmpkkUg``kCXFQTV(IT;)Pm16=!@C z#VJyg!9~+oqs^ZS>*EmWf{-}Uo9FhB-1o+y`kEh?Y;7ld{;L&=o`nss20h~sWhxHT zkTJD4Q3KgKfH_R;L1upp@&4z-K-W7eUR|+^6F+zf;ZX|WnN|Sak(}#b@C0!>X7!Ni=~Q` z6Z=|tw#$<*86&(y*&w#_f5VGCio$&5S1PJB3IpG#<_Eja%7D|cWQZg)V}vAVw)SF- zH|fwRLdYC#F*5Mha{YDbu3#~v0eV)}^7Q$trVejn;{pLvVqt)$onOP)8W~D7M;#zH z1*aok7bzG%;YZvj1Iv}9+NFDyfR{YJg9aY=o(3%s>e&8RO1B;s>te>7s>wI*=llNE8b<|B^jRMgq zSsXiA56&lvYE^*7G?5Lj(Xv=786y;#t7lBm+d&BIzO8Id_+B>Xm7ecpDeI3I#U?WMnKrvCOK_VY%v zK*jwlHPzXU-C%Z!OcugCEl4(L++-tEA^vO%Tb z-yewh&w~Bu_%Dw~s44zEz~4u={{j9yCPP{AmqG5Yz+cB%e?ps~z1J_ptzW@^cjW(s z0swrdzk&Zh{`{|Tezj@;jAVuW|GvaOOxs_h{OaEP8RY}^zj`^p2Kcq>{4)R$Y92%H z#h*Rsuh3r={!i!;>F>~A_5Rlge;3m~@lZDk+Ee^PT7QNAy$Jplu0r`2_#Y)vO%VaQ Sx&Qzw^yLRtZ!F-?PyYv15AI0- literal 0 HcmV?d00001 diff --git a/Workshop/oscilloscope/tst_oscillo/wifi_info.lua b/Workshop/oscilloscope/tst_oscillo/wifi_info.lua new file mode 100644 index 0000000..5062fcf --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/wifi_info.lua @@ -0,0 +1,31 @@ +-- Petit script pour afficher les infos actuel du WIFI +print("\n wifi_info.lua zf181119.0014 \n") + +local zmodewifi=wifi.getmode() + +--wifi.NULLMODE, wifi.STATION, wifi.SOFTAP, wifi.STATIONAP + +if zmodewifi == wifi.NULLMODE then + print("WIFI OFF") +elseif zmodewifi == wifi.STATION then + print("WIFI mode CLI") + print("Connected IP:\n",wifi.sta.getip()) + do + local sta_config=wifi.sta.getconfig(true) + print(string.format("Current client config:\n\tssid:\"%s\"\tpassword:\"%s\"\n\tbssid:\"%s\"\tbssid_set:%s", sta_config.ssid, sta_config.pwd, sta_config.bssid, (sta_config.bssid_set and "true" or "false"))) + end +elseif zmodewifi == wifi.SOFTAP then + print("WIFI mode AP") + print("AP MAC:\n",wifi.ap.getmac()) + print("AP IP:\n",wifi.ap.getip()) + print("AP Connect:\n",wifi.ap.getconfig()) +elseif zmodewifi == wifi.STATIONAP then + print("WIFI mode CLI+AP") + print("Connected IP:\n",wifi.sta.getip()) + do + local sta_config=wifi.sta.getconfig(true) + print(string.format("Current client config:\n\tssid:\"%s\"\tpassword:\"%s\"\n\tbssid:\"%s\"\tbssid_set:%s", sta_config.ssid, sta_config.pwd, sta_config.bssid, (sta_config.bssid_set and "true" or "false"))) + end + print("AP MAC: "..wifi.ap.getmac()) + print("AP IP: "..wifi.ap.getip()) +end diff --git a/Workshop/oscilloscope/tst_oscillo/wifi_off.lua b/Workshop/oscilloscope/tst_oscillo/wifi_off.lua new file mode 100644 index 0000000..c1c7235 --- /dev/null +++ b/Workshop/oscilloscope/tst_oscillo/wifi_off.lua @@ -0,0 +1,9 @@ +-- Déconnecte le WIFI +print("\n wifi_off.lua zf180822.0959 \n") + +wifi.setmode(wifi.NULLMODE) + +--[[ +print(wifi.NULLMODE, wifi.STATION, wifi.SOFTAP, wifi.STATIONAP) +print(wifi.getmode()) +]] diff --git a/zpackage/README.md b/zpackage/README.md new file mode 100644 index 0000000..1dfd9b6 --- /dev/null +++ b/zpackage/README.md @@ -0,0 +1,12 @@ +# zPackage + +## Environnement complet à installer dans un NodeMCU pour pouvoir bien travailler + + + + + + + + +zf190504.1325 diff --git a/zpackage/boot.lua b/zpackage/boot.lua new file mode 100644 index 0000000..917e172 --- /dev/null +++ b/zpackage/boot.lua @@ -0,0 +1,32 @@ +-- Scripts à charger après le boot pour démarrer son appli + +print("\n boot.lua zf19422.1102 \n") + +function heartbeat() + f= "flash_led_xfois.lua" if file.exists(f) then dofile(f) end + flash_led_xfois() + boottimer1=tmr.create() + tmr.alarm(boottimer1, 1*1000, tmr.ALARM_AUTO, function() + xfois =2 + blink_LED () + end) +end + +f= "led_rgb.lua" if file.exists(f) then dofile(f) end +f= "wifi_ap_start.lua" if file.exists(f) then dofile(f) end +f= "wifi_cli_conf.lua" if file.exists(f) then dofile(f) end +f= "wifi_cli_start.lua" if file.exists(f) then dofile(f) end +f= "telnet_srv2.lua" if file.exists(f) then dofile(f) end +f= "web_ide2.lua" if file.exists(f) then dofile(f) end +f= "web_srv2.lua" if file.exists(f) then dofile(f) end +--f= "set_time.lua" if file.exists(f) then dofile(f) end +--f= "dsleep.lua" if file.exists(f) then dofile(f) end +f= "a_no_linear.lua" if file.exists(f) then dofile(f) end + +f=nil +heartbeat=nil +--heartbeat() + + + + diff --git a/zpackage/flash_led_xfois.lua b/zpackage/flash_led_xfois.lua new file mode 100644 index 0000000..ffea9b0 --- /dev/null +++ b/zpackage/flash_led_xfois.lua @@ -0,0 +1,37 @@ +-- programme pour faire clignoter x fois une LED avec un rapport on/off + +function flash_led_xfois() + print("\n flash_led_xfois.lua zf190310.1533 \n") + + --zLED=0 --NodeMCU + zLED=4 --EPS-M3 + zTm_On_LED = 50 --> en ms + zTm_Off_LED = 100 --> en ms + nbfois = 0 + gpio.write(zLED, gpio.HIGH) + gpio.mode(zLED, gpio.OUTPUT) + ztmr_Flash_LED = tmr.create() + + function blink_LED () + if nbfois >= xfois then + -- print(nbfois) + nbfois = 0 + else + if gpio.read(zLED)==gpio.HIGH then + gpio.write(zLED, gpio.LOW) + tmr.alarm(ztmr_Flash_LED, zTm_Off_LED, tmr.ALARM_SINGLE, blink_LED) + else + gpio.write(zLED, gpio.HIGH) + nbfois = nbfois+1 + tmr.alarm(ztmr_Flash_LED, zTm_On_LED, tmr.ALARM_SINGLE, blink_LED) + end + end + end + +-- xfois =2 +-- blink_LED () +end + + + + diff --git a/zpackage/goodies/a_tst_variables.lua b/zpackage/goodies/a_tst_variables.lua new file mode 100644 index 0000000..bbae700 --- /dev/null +++ b/zpackage/goodies/a_tst_variables.lua @@ -0,0 +1,6 @@ +-- Scripts pour afficher toutes les variables et fonctions en cours dans le système + +print("\n a_tst_variable.lua zf190310.1525 \n") + +for n in pairs (_G) do print(n) end + diff --git a/zpackage/goodies/rm_files.lua b/zpackage/goodies/rm_files.lua new file mode 100644 index 0000000..81241cb --- /dev/null +++ b/zpackage/goodies/rm_files.lua @@ -0,0 +1,12 @@ +-- pour effacer TOUS les fichiers qui se trouve dans la flash du NodeMCU + +print("\n rm_files.lua zf180907.1511 \n") + + +l=file.list() i=0 +for k,v in pairs(l) do + i=i+v + file.remove(k) +end +print("-------------------------------") +print("\nC'est tout effaced :-) \n") diff --git a/zpackage/goodies/wifi_off.lua b/zpackage/goodies/wifi_off.lua new file mode 100644 index 0000000..c1c7235 --- /dev/null +++ b/zpackage/goodies/wifi_off.lua @@ -0,0 +1,9 @@ +-- Déconnecte le WIFI +print("\n wifi_off.lua zf180822.0959 \n") + +wifi.setmode(wifi.NULLMODE) + +--[[ +print(wifi.NULLMODE, wifi.STATION, wifi.SOFTAP, wifi.STATIONAP) +print(wifi.getmode()) +]] diff --git a/zpackage/initz.lua b/zpackage/initz.lua new file mode 100644 index 0000000..771f253 --- /dev/null +++ b/zpackage/initz.lua @@ -0,0 +1,52 @@ +--Script de bootstrap, test au moment du boot qui a été la cause de boot. +-- Si la cause est un power on ou une connexion depuis l'IDE, alors +-- le script repair.lua pendant xx secondes avant de continuer +--Source: https://nodemcu.readthedocs.io/en/master/en/modules/node/#nodebootreason + +print("\n init.lua zf190310.1549 \n") + +zswitch=3 --switch flash +gpio.mode(zswitch, gpio.INT, gpio.PULLUP) + +function hvbouton() +-- gpio.trig(zswitch, "none") + tmr.unregister(initalarme) + f= "boot.lua" if file.exists(f) then dofile(f) end +end + +gpio.trig(zswitch, "both", hvbouton) + +function second_chance() + print("seconde chance...") + f= "repair.lua" if file.exists(f) then dofile(f) end + initalarme=tmr.create() + tmr.alarm(initalarme, 4*1000, tmr.ALARM_SINGLE, function() + f= "boot.lua" if file.exists(f) then dofile(f) end + end) +end + +_, reset_reason = node.bootreason() +print("reset_reason:",reset_reason) +if reset_reason == 0 then + print("power on") + second_chance() +elseif reset_reason == 4 then + print("node.restart") + gpio.trig(zswitch) + hvbouton=nil + second_chance=nil + zswitch=nil + reset_reason=nil + f= "boot.lua" if file.exists(f) then dofile(f) end +elseif reset_reason == 5 then + print("dsleep wake up") + f= "boot.lua" if file.exists(f) then dofile(f) end +elseif reset_reason == 6 then + print("external reset") + second_chance() +-- f= "boot.lua" if file.exists(f) then dofile(f) end +else + print("autre raison") + second_chance() +end + diff --git a/zpackage/led_rgb.lua b/zpackage/led_rgb.lua new file mode 100644 index 0000000..7a5d396 --- /dev/null +++ b/zpackage/led_rgb.lua @@ -0,0 +1,37 @@ +-- Scripts juste pour allumer ou éteindre une LED sur un ruban RGB +-- tout sur la couleur: https://www.w3schools.com/colors/default.asp +-- roue des couleurs: https://iro.js.org/?ref=oldsite + +print("\n led_rgb.lua zf190303.1436 \n") + +nbleds=3 +ws2812.init() +myLedStrip = ws2812.newBuffer(nbleds, 3) + +function RGB_clear() + myLedStrip:fill(0, 0, 0) ws2812.write(myLedStrip) +end + +function RGB_reform(R1, G1, B1) --conversion de RGB à BRG + rR1=B1 rG1=R1 rB1=G1 +end + +function zled_rgb(num_led, R1, G1, B1, zpower) + RGB_reform(R1, G1, B1) + myLedStrip:set(num_led, rR1*zpower, rG1*zpower, rB1*zpower) + ws2812.write(myLedStrip) +end + +function zled_write() + ws2812.write(myLedStrip) +end + + +RGB_clear() + +--[[ +zled_rgb(1,255,0,0,1) +zled_rgb(2,0,255,0,1) +zled_rgb(2,0,255,0,0.05) +zled_rgb(3,0,0,255,1) +]] diff --git a/zpackage/set_time.lua b/zpackage/set_time.lua new file mode 100644 index 0000000..748cc95 --- /dev/null +++ b/zpackage/set_time.lua @@ -0,0 +1,29 @@ +-- Scripts pour régler l'horloge quand on est connecté en WIFI +-- Permet aussi de 'compresser' le unix time afin de prendre moins de place dans les strings + +print("\n set_time.lua zf190217.1426 \n") + +--source: https://www.freeformatter.com/epoch-timestamp-to-date-converter.html + +ztime2019 = 1546300800 -- Unix time pour le 1.1.2019 + +function set_time() + sntp.sync(nil, nil, nil, 1) +end + +function ztime_compress(ztime_long) + return ztime_long - ztime2019 +end + +function ztime_uncompress(ztime_short) + return ztime_short + ztime2019 +end + +function ztime_format(ztime) + tm = rtctime.epoch2cal(ztime + 3600) + return(string.format("%04d/%02d/%02d %02d:%02d:%02d", tm["year"], tm["mon"], tm["day"], tm["hour"], tm["min"], tm["sec"])) +end + +set_time() +print(ztime_format(rtctime.get())) + diff --git a/zpackage/simulation/Capture d’écran 2019-04-19 à 22.20.27.png b/zpackage/simulation/Capture d’écran 2019-04-19 à 22.20.27.png new file mode 100644 index 0000000000000000000000000000000000000000..f906daa3d6111b3261fa0e180baf91dcb27da2de GIT binary patch literal 77436 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�~EL@mGSeZnsBw+04 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

uewGScSO#WZA^CS8k*LA4^6*`Thh0Y(?B&CO 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

S9vEo=FH;p%dQjkVh_k!o-!v!4|10gqN` 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 s>s$5Up_1wa6dgH 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 Sx&Qzw^yLRtZ!F-?PyYv15AI0- literal 0 HcmV?d00001 diff --git a/zpackage/t1.csv b/zpackage/t1.csv new file mode 100644 index 0000000..7dc8514 --- /dev/null +++ b/zpackage/t1.csv @@ -0,0 +1,27 @@ +ohm,% +33,100 +36,96.77419355 +41,92.74193548 +45,88.70967742 +52,84.67741935 +56,80.64516129 +61,76.61290323 +67,72.58064516 +72,68.5483871 +79,64.51612903 +83,60.48387097 +91,56.4516129 +97,52.41935484 +104,48.38709677 +112,44.35483871 +117,40.32258065 +121,36.29032258 +128,32.25806452 +132,28.22580645 +139,24.19354839 +150,20.16129032 +166,16.12903226 +191,12.09677419 +207,8.064516129 +224,4.032258065 +240,0 \ No newline at end of file diff --git a/zpackage/telnet_srv2.lua b/zpackage/telnet_srv2.lua new file mode 100644 index 0000000..821358c --- /dev/null +++ b/zpackage/telnet_srv2.lua @@ -0,0 +1,87 @@ +-- Serveur telnet pour connexion en remote WIFI, NOUVELLE VERSION ! +-- source: https://github.com/nodemcu/nodemcu-firmware/blob/master/lua_examples/telnet/telnet.lua + +print("\n telnet_srv2.lua zf181215.1326 \n") + +local node, table, tmr, wifi, uwrite, tostring = + node, table, tmr, wifi, uart.write, tostring + +local function telnet_listener(socket) + local insert, remove, concat, heap, gc = + table.insert, table.remove, table.concat, node.heap, collectgarbage + local fifo1, fifo1l, fifo2, fifo2l = {}, 0, {}, 0 + local s -- s is a copy of the TCP socket if and only if sending is in progress + local wdclr, cnt = tmr.wdclr, 0 + local function debug(fmt, ...) + if (...) then fmt = fmt:format(...) end + uwrite(0, "\r\nDBG: ",fmt,"\r\n" ) + cnt = cnt + 1 + if cnt % 10 then wdclr() end + end + + local function flushGarbage() + if heap() < 13440 then gc() end + end + + local function sendLine() + if not s then return end + + if fifo2l + fifo1l == 0 then -- both FIFOs empty, so clear down s + s = nil + return + end + flushGarbage() + if #fifo2 < 4 then -- Flush FIFO1 into FIFO2 + insert(fifo2,concat(fifo1)) + fifo2l, fifo1, fifo1l = fifo2l + fifo1l, {}, 0 + end + local rec = remove(fifo2,1) .. (remove(fifo2,1) or '') .. + (remove(fifo2,1) or '') .. (remove(fifo2,1) or '') + fifo2l = fifo2l - #rec + flushGarbage() + s:send(rec) + end + + local F1_SIZE = 256 + + local function queueLine(str) + while #str > 0 do -- this is because str might be longer than the packet size! + local k, l = F1_SIZE - fifo1l, #str + local chunk + if #fifo1 >= 32 or (k < l and k < 16) then + insert(fifo2, concat(fifo1)) + fifo2l, fifo1, fifo1l, k = fifo2l + fifo1l, {}, 0, F1_SIZE + end + if l > k+16 then -- also tolerate a size overrun of 16 bytes to avoid a split + chunk, str = str:sub(1,k), str:sub(k+1) + else + chunk, str = str, '' + end + insert(fifo1, chunk) + fifo1l = fifo1l + #chunk + end + if not s and socket then + s = socket + sendLine() + else + flushGarbage() + end + end + + local function receiveLine(s, line) + node.input(line) + end + + local function disconnect(s) + fifo1, fifo1l, fifo2, fifo2l, s = {}, 0, {}, 0, nil + node.output(nil) + end + + socket:on("receive", receiveLine) + socket:on("disconnection", disconnect) + socket:on("sent", sendLine) + node.output(queueLine, 0) +end + +net.createServer(net.TCP, 180):listen(23, telnet_listener) +print("Telnet server running...\nUsage: telnet -rN ip\n") diff --git a/zpackage/web_ide2.lua b/zpackage/web_ide2.lua new file mode 100644 index 0000000..16d00f2 --- /dev/null +++ b/zpackage/web_ide2.lua @@ -0,0 +1,159 @@ +-- Petit WEB IDE tout simple autonome +-- ATTENTION: tourne sur le port 88 ! + +print("\n _web_ide2.lua zf181210.1516 \n") + +--[[ +XChip's NodeMCU IDE + +Create, Edit and run NodeMCU files using your webbrowser. +Examples: +http:/// will list all the files in the MCU +http:///newfile.lua displays the file on your browser +http:///newfile.lua?edit allows to creates or edits the specified script in your browser +http:///newfile.lua?run it will run the specified script and will show the returned value +]]-- + +srv=net.createServer(net.TCP) +srv:listen(88,function(conn) + + local rnrn=0 + local Status = 0 + local DataToGet = 0 + local method="" + local url="" + local vars="" + + conn:on("receive",function(conn,payload) + + if Status==0 then + _, _, method, url, vars = string.find(payload, "([A-Z]+) /([^?]*)%??(.*) HTTP") + print(method, url, vars) + end + + if method=="POST" then + + if Status==0 then + --print("status", Status) + _,_,DataToGet, payload = string.find(payload, "Content%-Length: (%d+)(.+)") + if DataToGet~=nil then + DataToGet = tonumber(DataToGet) + --print(DataToGet) + rnrn=1 + Status = 1 + else + print("bad length") + end + end + + -- find /r/n/r/n + if Status==1 then + --print("status", Status) + local payloadlen = string.len(payload) + local mark = "\r\n\r\n" + local i + for i=1, payloadlen do + if string.byte(mark, rnrn) == string.byte(payload, i) then + rnrn=rnrn+1 + if rnrn==5 then + payload = string.sub(payload, i+1,payloadlen) + file.open(url, "w") + file.close() + Status=2 + break + end + else + rnrn=1 + end + end + if Status==1 then + return + end + end + + if Status==2 then + --print("status", Status) + if payload~=nil then + DataToGet=DataToGet-string.len(payload) + --print("DataToGet:", DataToGet, "payload len:", string.len(payload)) + file.open(url, "a+") + file.write(payload) + file.close() + else + conn:send("HTTP/1.1 200 OK\r\n\r\nERROR") + Status=0 + end + + if DataToGet==0 then + conn:send("HTTP/1.1 200 OK\r\n\r\nOK") + Status=0 + end + end + + return + end + + DataToGet = -1 + + if url == "favicon.ico" then + conn:send("HTTP/1.1 404 file not found") + return + end + + conn:send("HTTP/1.1 200 OK\r\n\r\n") + + -- it wants a file in particular + if url~="" and vars=="" then + DataToGet = 0 + return + end + + conn:send("

NodeMCU IDE

") + + if vars=="edit" then + conn:send("") + conn:send("

Back to file list\n") + conn:send("

run") + conn:send("



") + end + + if vars=="run" then + conn:send("") + local st, result=pcall(dofile, url) + conn:send(tostring(result)) + conn:send("") + end + + if url=="" then + local l = file.list(); + for k,v in pairs(l) do + conn:send(""..k..", size:"..v.."
") + end + end + + conn:send("") + + end) + conn:on("sent",function(conn) + if DataToGet>=0 and method=="GET" then + if file.open(url, "r") then + file.seek("set", DataToGet) + local line=file.read(512) + file.close() + if line then + conn:send(line) + DataToGet = DataToGet + 512 + + if (string.len(line)==512) then + return + end + end + end + end + + conn:close() + end) +end) +print("listening, free:", node.heap()) + diff --git a/zpackage/web_srv2.lua b/zpackage/web_srv2.lua new file mode 100644 index 0000000..a7b5953 --- /dev/null +++ b/zpackage/web_srv2.lua @@ -0,0 +1,77 @@ +-- petit script de serveur WEB avec Active Server Page ZYX + +print("\n web_srv2.lua zf190422.1135 \n") + +ztemp=12 + +-- envoie sur le port ouvert mais depuis l'environnement global ! +function zout(zstring) + zzclient:send(zstring) -- envoie le résultat du code lua inline +end + +-- envoie un fichier HTML sur le port. ATTENTION: longueur de la ligne maximale de 1'024 bytes ! +function send_file(zclient, zfilename) + print("start send html...") + zclient:send("HTTP/1.1 200 OK\n") + zclient:send("Content-Type: text/html\n\n") + zzclient = zclient -- export le port sur l'environnement global ! + if zfilename == "" then zfilename = "z_index.html" end + file_web = file.open(zfilename, "r") + if file_web then + repeat + local line = file_web:read('\n') + if line then + if string.find(line, "<%%") then +-- print("start lua...") + flag_lua_code = true -- bascule sur le code lua inline + lua_code = "" + elseif string.find(line, "%%>") then +-- print("stop lua...") + flag_lua_code = false -- revient sur le code HTML +-- print("Et voici le code lua inline:\n"..lua_code) + loadstring(lua_code)() --on exécute ici le code lua inline ! + elseif flag_lua_code then +-- print(line) + lua_code = lua_code..line -- récupère le code lua inline + else + zclient:send(line) -- envoie le code HTML + end + end + until not line + file_web:close() file_web = nil + else + zclient:send("

"..zfilename.." not found - 404 error

Home
") + end +end + + +srv = net.createServer() +srv:listen(80, function(conn) + conn:on("receive", function(client, request) + _, _, method, path, vars = string.find(request, "([A-Z]+) (.+)?(.+) HTTP") + + print("request: \n---\n"..request.."---") +-- print("method: ", method) print("path: ", path) print("vars: ", vars) + + if not string.find(request, "/favicon.ico") then + print("coucou") + if (method == nil) then + _, _, method, path = string.find(request, "([A-Z]+) (.+) HTTP") + end + print("method: ", method) print("path: ", path) print("vars: ", vars) + _GET = {} + if (vars ~= nil) then + for k, v in string.gmatch(vars, "(%w+)=(%w+)&*") do + _GET[k] = v + print(k..": "..v) + end + end + file_html=string.gsub(path, "/", "") + -- print("file_html: ",file_html) + send_file(client, file_html) + end + end) + conn:on("sent", function(c) c:close() end) +end) + + diff --git a/zpackage/wifi_ap_start.lua b/zpackage/wifi_ap_start.lua new file mode 100644 index 0000000..f7ade0d --- /dev/null +++ b/zpackage/wifi_ap_start.lua @@ -0,0 +1,19 @@ +-- Démarre le WIFI en mode AP + +function wifi_ap_start() + print("\n wifi_ap_start.lua zf190310.1511 \n") + + local zmodewifi=wifi.getmode() + if zmodewifi == wifi.NULLMODE then + print("WIFI mode AP only") + wifi.setmode(wifi.SOFTAP) + elseif zmodewifi == wifi.STATION then + print("WIFI mode AP+CLI") + wifi.setmode(wifi.STATIONAP) + end + wifi.ap.config({ ssid = "NodeMCU "..wifi.ap.getmac(), pwd = "12345678" }) + --f= "wifi_info.lua" if file.exists(f) then dofile(f) end +end + +wifi_ap_start() +wifi_ap_start=nil diff --git a/zpackage/wifi_cli_conf.lua b/zpackage/wifi_cli_conf.lua new file mode 100644 index 0000000..99b5767 --- /dev/null +++ b/zpackage/wifi_cli_conf.lua @@ -0,0 +1,20 @@ +-- Petit script pour configurer le client WIFI du NodeMCU + +function wifi_cli_conf() + print("\n wifi_cli_conf.lua zf190310.1527 \n") + + --credentials par défaut + --cli_ssid="3g-s7" + cli_ssid="3G-zf" + cli_pwd="12234567" + + --ses propre credentials + f= "credentials.lua" if file.exists(f) then dofile(f) end + + wifi.sta.config{ssid=cli_ssid, pwd=cli_pwd, save=true} +end + +wifi_cli_conf() +wifi_cli_conf=nil +cli_ssid=nil +cli_pwd=nil diff --git a/zpackage/wifi_cli_start.lua b/zpackage/wifi_cli_start.lua new file mode 100644 index 0000000..045957e --- /dev/null +++ b/zpackage/wifi_cli_start.lua @@ -0,0 +1,20 @@ +-- Petit script pour connecter le NodeMCU sur un AP Wifi avec l'accompte sauvé en EEPROM + +function wifi_cli_start() + print("\n wifi_cli_start.lua zf190310.1519 \n") + + local zmodewifi=wifi.getmode() + if zmodewifi == wifi.NULLMODE then + print("WIFI mode CLI only") + wifi.setmode(wifi.STATION) + elseif zmodewifi == wifi.SOFTAP then + print("WIFI mode AP+CLI") + wifi.setmode(wifi.STATIONAP) + end + wifi.sta.autoconnect(1) + wifi.sta.connect() + --f= "wifi_get_ip.lua" if file.exists(f) then dofile(f) end +end + +wifi_cli_start() +wifi_cli_start=nil diff --git a/zpackage/wifi_get_ip.lua b/zpackage/wifi_get_ip.lua new file mode 100644 index 0000000..82bcdc2 --- /dev/null +++ b/zpackage/wifi_get_ip.lua @@ -0,0 +1,12 @@ +-- Petit script pour obtenir l'adresse IP du NodeMCU connecté sur un AP Wifi +print("\n wifi_get_ip.lua zf181119.2318 \n") + +wifitimer1=tmr.create() +tmr.alarm(wifitimer1, 1000, tmr.ALARM_AUTO , function() + if wifi.sta.getip() == nil then + print("Connecting to AP...") + else + tmr.stop(wifitimer1) + f= "wifi_info.lua" if file.exists(f) then dofile(f) end + end +end) diff --git a/zpackage/wifi_info.lua b/zpackage/wifi_info.lua new file mode 100644 index 0000000..5062fcf --- /dev/null +++ b/zpackage/wifi_info.lua @@ -0,0 +1,31 @@ +-- Petit script pour afficher les infos actuel du WIFI +print("\n wifi_info.lua zf181119.0014 \n") + +local zmodewifi=wifi.getmode() + +--wifi.NULLMODE, wifi.STATION, wifi.SOFTAP, wifi.STATIONAP + +if zmodewifi == wifi.NULLMODE then + print("WIFI OFF") +elseif zmodewifi == wifi.STATION then + print("WIFI mode CLI") + print("Connected IP:\n",wifi.sta.getip()) + do + local sta_config=wifi.sta.getconfig(true) + print(string.format("Current client config:\n\tssid:\"%s\"\tpassword:\"%s\"\n\tbssid:\"%s\"\tbssid_set:%s", sta_config.ssid, sta_config.pwd, sta_config.bssid, (sta_config.bssid_set and "true" or "false"))) + end +elseif zmodewifi == wifi.SOFTAP then + print("WIFI mode AP") + print("AP MAC:\n",wifi.ap.getmac()) + print("AP IP:\n",wifi.ap.getip()) + print("AP Connect:\n",wifi.ap.getconfig()) +elseif zmodewifi == wifi.STATIONAP then + print("WIFI mode CLI+AP") + print("Connected IP:\n",wifi.sta.getip()) + do + local sta_config=wifi.sta.getconfig(true) + print(string.format("Current client config:\n\tssid:\"%s\"\tpassword:\"%s\"\n\tbssid:\"%s\"\tbssid_set:%s", sta_config.ssid, sta_config.pwd, sta_config.bssid, (sta_config.bssid_set and "true" or "false"))) + end + print("AP MAC: "..wifi.ap.getmac()) + print("AP IP: "..wifi.ap.getip()) +end diff --git a/zpackage/z_index.html b/zpackage/z_index.html new file mode 100644 index 0000000..dd689c8 --- /dev/null +++ b/zpackage/z_index.html @@ -0,0 +1,20 @@ + + + + + + ESP8266 home page + + + +

ESP8266 home page 190422.1052

+

Différentes pages HTML:

+

+ Page 1, affichage de la température dynamique en code Lua inline.
+ Page 2, tableau dynamique écrit en Lua inline.
+ Page 3, affichage du capteur non linéaire corrigé.
+ Page qui n'existe pas !
+

+ + + diff --git a/zpackage/z_page1.html b/zpackage/z_page1.html new file mode 100644 index 0000000..c0bd757 --- /dev/null +++ b/zpackage/z_page1.html @@ -0,0 +1,26 @@ + + + + + + ESP8266 page 1 + + + +

ESP8266 page 1 190127.1445

+
+ Coucou c'est la page 1 !
+ Retour à la home page...


+ +La température est: + +<% +ztemp=ztemp+1 +zout(ztemp.."°C") +%> + +
Mais il fait encore trop froid !
+ + + + diff --git a/zpackage/z_page2.html b/zpackage/z_page2.html new file mode 100644 index 0000000..1516626 --- /dev/null +++ b/zpackage/z_page2.html @@ -0,0 +1,51 @@ + + + + + + ESP8266 page 2 + + + +

ESP8266 page 2 190127.1449

+
+ Coucou c'est la page 2 !
+ Retour à la home page...


+ + Voici un tableau dynamique écrit en Lua inline.

+ + Le code Lua pour créer ce tableau se trouve dans le code HTML de cette page et est exécuté sur le NodeMCU.
+ Les données du tableau viennent du NodeMCU !

+ + <% + -- création du tableau sur le NodeMCUjuste juste pour la démo ici ! + zmac_adrs={} + zmac_adrs["b8:d7:af:a6:bd:86"]={["zname"]="S7 zf", ["zrssi"]=45, ["ztime"]="12:03:36"} + zmac_adrs["cc:c0:79:7d:f5:d5"]={["zname"]="S7 Mélanie", ["zrssi"]=50, ["ztime"]="14:23:46"} + zmac_adrs["5c:f9:38:a1:f7:f0"]={["zname"]="MAC zf", ["zrssi"]=40, ["ztime"]="11:53:16"} + zmac_adrs["d8:30:62:5a:d6:3a"]={["zname"]="IMAC Maman", ["zrssi"]=55, ["ztime"]="17:07:23"} + %> + + + + + + <% + for k, v in pairs(zmac_adrs) do + zout("\n") + zout("\t\n") + zout("\t\n") + zout("\t\n") + zout("\t\n") + zout("\n") + end + %> +
MACNameRSSITime
" .. k .. "" .. tostring(zmac_adrs[k]["zname"]) .. "" .. tostring(zmac_adrs[k]["zrssi"]) .. "" .. tostring(zmac_adrs[k]["ztime"]) .. "
+ + <% + -- libère la mémoire du tableau sur le NodeMCU qui avait été créé pour la démo ici ! + zmac_adrs=nil + %> + + + diff --git a/zpackage/z_page3.html b/zpackage/z_page3.html new file mode 100644 index 0000000..f0be1e9 --- /dev/null +++ b/zpackage/z_page3.html @@ -0,0 +1,51 @@ + + + + + + ESP8266 page 3 + + + +

ESP8266 page 3 190422.1200

+
+ Coucou c'est la page 3 !
+ Retour à la home page...


+ + Voici le résultat du capteur non linéaire corrigé avec une table + d'interpolation dans un fichier .csv sur la flash.

+ + Le code Lua pour afficher ce résultat se trouve dans le code HTML de cette page et est exécuté sur le NodeMCU.
+ Les données viennent du NodeMCU !

+ + <% + zout("Il reste: "..node.heap().." de RAM !

\n") + %> + + <% + zx0=83 + get_correction(zx0) + zout("la valeur corrigée de "..zx0.." est "..zy0.."
") + %> + + <% + zx0=91 + get_correction(zx0) + zout("la valeur corrigée de "..zx0.." est "..zy0.."
") + %> + + <% + zx0=100 + get_correction(zx0) + zout("la valeur corrigée de "..zx0.." est "..zy0.."
") + %> + +
Yeah... cela fonctionne vachement bien !

+ + <% + zout("Il reste: "..node.heap().." de RAM !

\n") + %> + + + +