{"id":996,"date":"2016-07-09T15:51:28","date_gmt":"2016-07-09T13:51:28","guid":{"rendered":"http:\/\/www.xpablo.cz\/?p=996"},"modified":"2016-07-09T15:51:28","modified_gmt":"2016-07-09T13:51:28","slug":"esp8266-pro-zacatecnika-jak-to-vlastne-zapojit","status":"publish","type":"post","link":"http:\/\/www.xpablo.cz\/?p=996","title":{"rendered":"ESP8266 pro za\u010d\u00e1te\u010dn\u00edka &#8211; jak to vlastn\u011b zapojit"},"content":{"rendered":"<p><a href=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/07\/esphowto_web.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-997 alignleft\" src=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/07\/esphowto_web-300x256.jpg\" alt=\"esphowto_web\" width=\"300\" height=\"256\" srcset=\"http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/07\/esphowto_web-300x256.jpg 300w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/07\/esphowto_web.jpg 665w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>V posledn\u00edch dnech jsem se n\u011bkolikr\u00e1t setkal s probl\u00e9mem, \u017ee n\u011bkte\u0159\u00ed \u010dten\u00e1\u0159i by cht\u011bli pou\u017e\u00edt samostatn\u00fd modul ESP8266 (v\u011bt\u0161inou ESP-12), ale netu\u0161\u00ed, jak ho zapojit, aby spr\u00e1vn\u011b a hlavn\u011b spolehliv\u011b pracoval. Rozhodl jsem se tedy, \u017ee nap\u00ed\u0161u \u010dl\u00e1nek, ve kter\u00e9m se pokus\u00edm shrnout moje zku\u0161enosti a popsat zapojen\u00ed, kter\u00e9 pou\u017e\u00edv\u00e1m a se kter\u00fdm jsem spokojen\u00fd.<\/p>\n<p><!--more--><\/p>\n<p>Nejd\u0159\u00edve n\u011bkolik pou\u010den\u00ed:<\/p>\n<ol>\n<li><strong>NIKDY nep\u0159ipojujte GPIO v\u00fdvody ESP p\u0159\u00edmo na 3V3, nebo GND!!! Na n\u011bkter\u00e9 z nich jsou p\u0159i startu programu generov\u00e1ny sign\u00e1ly, kter\u00e9 m\u016f\u017eou po\u0161kodit vnit\u0159n\u00ed tranzistory, pokud jsou zapojeny &#8222;natvrdo&#8220;.<\/strong><\/li>\n<li><strong>POU\u017d\u00cdVEJTE KVALITN\u00cd NAP\u00c1JEC\u00cd ZDROJ &#8211; vid\u011bl jsem zoufalce, co se sna\u017eili o nap\u00e1jen\u00ed ESP jen z 3V3 v\u00fdstupu z FTDI p\u0159evodn\u00edku &#8211; tohle (mo\u017en\u00e1) m\u016f\u017ee fungovat p\u0159i nahr\u00e1v\u00e1n\u00ed FW, ale ur\u010dit\u011b to bude zlobit p\u0159i b\u011b\u017en\u00e9m b\u011bhu procesoru! Nap\u00e1jec\u00ed zdroje m\u00e1m dimenzovan\u00e9 na 3V3\/500mA<\/strong><\/li>\n<\/ol>\n<p>Z\u00e1kladn\u00ed zapojen\u00ed hardware vych\u00e1z\u00ed z doporu\u010den\u00e9ho zapojen\u00ed, kter\u00e9 je vyobrazen\u00e9 v dokumentaci k Arduino j\u00e1dru pro ESP8266<\/p>\n<p><a href=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/07\/ESP_improved_stability.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-1000\" src=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/07\/ESP_improved_stability-300x224.png\" alt=\"ESP_improved_stability\" width=\"300\" height=\"224\" srcset=\"http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/07\/ESP_improved_stability-300x224.png 300w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/07\/ESP_improved_stability.png 759w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Postupem \u010dasu jsem dosp\u011bl k m\u00edrn\u00fdm \u00faprav\u00e1m hodnot sou\u010d\u00e1stek, kter\u00e9 pop\u00ed\u0161u d\u00e1le, nejd\u0159\u00edve ale k v\u00fdznamu jednotliv\u00fdch prvk\u016f:<\/p>\n<p>Odpor <strong>R4<\/strong> slou\u017e\u00ed k definov\u00e1n\u00ed spr\u00e1vn\u00e9 klidov\u00e9 \u00farovn\u011b na vstupu RESET SoC. Hodnota 10k je dosta\u010duj\u00edc\u00ed v laboratorn\u00edch podm\u00ednk\u00e1ch, ale pro um\u00edst\u011bn\u00ed do ter\u00e9nu, nebo pr\u016fmyslov\u00e9ho prost\u0159ed\u00ed se mi osv\u011bd\u010dilo sn\u00ed\u017eit velikost na <strong>4k7<\/strong>.<\/p>\n<p>Odpor <strong>R1<\/strong> slou\u017e\u00ed k definov\u00e1n\u00ed \u00farovn\u011b na CHIP POWER DOWN vstupu, weak pull-up, kter\u00fd je integrovan\u00fd uvnit\u0159 SoC nesta\u010d\u00ed, tak\u017ee je t\u0159eba p\u0159ipojit extern\u00ed odpor <strong>10k<\/strong>.<\/p>\n<p>Odpory <strong>R2<\/strong> a <strong>R3<\/strong>, spole\u010dn\u011b s hodnotou na GPIO2, ur\u010duj\u00ed, jak\u00fdm zp\u016fsobem se SoC chov\u00e1 p\u0159i zapnut\u00ed nap\u00e1jen\u00ed. Mo\u017enosti jsou:<\/p>\n<table class=\"table table-rounded table-striped\">\n<tbody>\n<tr>\n<th><\/th>\n<th>GPIO 0<\/th>\n<th>GPIO 2<\/th>\n<th>GPIO 15<\/th>\n<\/tr>\n<tr>\n<td>UART Download Mode (Programming)<\/td>\n<td>0<\/td>\n<td>1<\/td>\n<td>0<\/td>\n<\/tr>\n<tr>\n<td>Flash Startup (Normal)<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>0<\/td>\n<\/tr>\n<tr>\n<td>SD-Card Boot<\/td>\n<td>0<\/td>\n<td>0<\/td>\n<td>1<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Pro n\u00e1s tedy p\u0159ipadaj\u00ed v \u00favahu <strong>UART Download Mode<\/strong> pro nahr\u00e1v\u00e1n\u00ed firmware a <strong>Flash Startup<\/strong> pro b\u011b\u017en\u00fd provoz. Hodnoty odpor\u016f, kter\u00e9 se mi osv\u011bd\u010dily jsou <strong>4k7<\/strong> jako <strong>R2<\/strong> a <strong>2k2<\/strong> jako <strong>R3<\/strong>. D\u00e1le d\u00e1v\u00e1m je\u0161t\u011b pull-up odpor 4k7 na GPIO2 &#8211; tento odpor ale nen\u00ed nutn\u00fd, proto\u017ee ESP12 zde m\u00e1 p\u0159ipojenou modrou signaliza\u010dn\u00ed LED, kter\u00e1 zajist\u00ed spr\u00e1vnou \u00farove\u0148. Pokud chci ESP naprogramovat, tak to ud\u011bl\u00e1m tak, \u017ee GPIO0 st\u00e1hnu na GND p\u0159es odpor 120 ohm\u016f a zapnu nap\u00e1jen\u00ed. Po\u010dk\u00e1m na probliknut\u00ed LED,\u00a0GPIO0 uvoln\u00edm a za\u010dnu hned nahr\u00e1vat firmware.<\/p>\n<p>Kondenz\u00e1tor <strong>C1<\/strong> slou\u017e\u00ed pro blokov\u00e1n\u00ed nap\u00e1jec\u00edho nap\u011bt\u00ed &#8211; multimetrem sice nam\u011b\u0159\u00edte odb\u011br cca 60mA, ale ve skute\u010dnosti jsou v okam\u017eic\u00edch vys\u00edl\u00e1n\u00ed proudov\u00e9 \u0161pi\u010dky, kter\u00e9 sahaj\u00ed i p\u0159es 300mA. Proto k tomuto kondenz\u00e1toru d\u00e1v\u00e1m je\u0161t\u011b paraleln\u011b kvalitn\u00ed elektrolyt s kapacitou minim\u00e1ln\u011b 47uF &#8211; velice hezk\u00e9 video s vysv\u011btlen\u00edm na toto t\u00e9ma je k dispozici t\u0159eba <a href=\"https:\/\/www.youtube.com\/watch?v=6SdyImetbp8\">zde<\/a> .<\/p>\n<h6>Sn\u00ed\u017een\u00e1 spot\u0159eba &#8211; re\u017eim Deep Sleep<\/h6>\n<p>Prakticky jedin\u00e1 zat\u00edm prozkouman\u00e1 metoda, jak sn\u00ed\u017eit odb\u011br a t\u00edm umo\u017enit alespo\u0148 n\u011bjak\u00fd provoz na baterie je vyu\u017eit\u00ed DeepSleep re\u017eimu. Princip je jednoduch\u00fd &#8211; p\u0159ed p\u0159echodem do DeepSleep, kter\u00fd v podstat\u011b cel\u00fd syst\u00e9m zastav\u00ed, se nastav\u00ed \u010dasova\u010d na po\u017eadovan\u00fd \u010das. Po jeho vypr\u0161en\u00ed se na v\u00fdvodu GPIO16 objev\u00ed \u00farove\u0148 L. Spojen\u00edm GPIO16 s v\u00fdvodem RESET p\u0159es odpor (bohu\u017eel hodnota odporu se ob\u010das mus\u00ed laborovat &#8211; m\u011b se zat\u00edm osv\u011bd\u010dila hodnota 150 ohm\u016f), doc\u00edl\u00edme restartu cel\u00e9ho obvodu po vypr\u0161en\u00ed timeoutu. V\u0161e tedy funguje tak, \u017ee ESP je v zadan\u00fdch period\u00e1ch resetov\u00e1no &#8211; zde mus\u00edm tro\u0161ku odbo\u010dit k firmware. Zjistilo se toti\u017e, \u017ee pokud po ka\u017ed\u00e9m startu znovu nastavujeme WiFi \u010d\u00e1st pro p\u0159ipojen\u00ed k AP, tak SDK st\u00e1le p\u0159episuje svoji vnit\u0159n\u00ed konfiguraci, kter\u00e1 je ulo\u017een\u00e1 ve Flash pam\u011bti. Bohu\u017eel ale m\u00e1 tato pam\u011b\u0165 omezen\u00fd po\u010det p\u0159epis\u016f, co\u017e p\u0159i bateriov\u00e9m nap\u00e1jen\u00ed a \u010dast\u00e9m pou\u017e\u00edv\u00e1n\u00ed Deep Sleep m\u016f\u017ee v\u00e9st k rychl\u00e9mu po\u0161kozen\u00ed pam\u011bti a v\u00fdpadku za\u0159\u00edzen\u00ed. Obej\u00edt se to d\u00e1 tak, \u017ee se zak\u00e1\u017ee SDK ukl\u00e1d\u00e1n\u00ed konfigurace do flash. Na konci \u010dl\u00e1nku je ke sta\u017een\u00ed nov\u00e1 verze knihovny WiFiConfig, kter\u00e1 to ji\u017e m\u00e1 takto o\u0161et\u0159eno (sou\u010dasn\u011b o\u0161et\u0159uje ob\u010dasn\u00e9 po\u0161kozen\u00ed WiFi flash konfigurace, na kter\u00e9 narazil pan \u0160imon\u00edk).<\/p>\n<p>No a to je vlastn\u011b v\u0161echno&#8230; Nebo vlastn\u011b je\u0161t\u011b ne &#8211; byl jsem jedn\u00edm \u010dten\u00e1\u0159em, za\u010d\u00e1te\u010dn\u00edkem, po\u017e\u00e1d\u00e1n, abych v\u011bci je\u0161t\u011b zjednodu\u0161oval a v\u00edce vysv\u011btloval. V\u00edte bohu\u017eel o tomto tenhle web b\u00fdt nem\u011bl &#8211; nechci zde vysv\u011btlovat z\u00e1kladn\u00ed programov\u00e9 konstrukce, nebo funkce v\u0161ech knihoven, kter\u00e9 jsem pou\u017eil, k tomu se nec\u00edt\u00edm b\u00fdt zp\u016fsobil\u00fd &#8211; zejm\u00e9na pokud jsem je nenapsal j\u00e1 a jejich funkci zn\u00e1m jen ze studia jejich zdrojov\u00e9ho k\u00f3du. Miler\u00e1d vysv\u011btl\u00edm, co bude t\u0159eba, ale rozhodn\u011b ne jako prim\u00e1rn\u00ed n\u00e1pl\u0148, proto\u017ee to bych ned\u011blal nic jin\u00e9ho a moje projekty by st\u00e1ly \ud83d\ude41 leda\u017ee by pomohl n\u011bkdo dal\u0161\u00ed&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>V posledn\u00edch dnech jsem se n\u011bkolikr\u00e1t setkal s probl\u00e9mem, \u017ee n\u011bkte\u0159\u00ed \u010dten\u00e1\u0159i by cht\u011bli pou\u017e\u00edt samostatn\u00fd modul ESP8266 (v\u011bt\u0161inou ESP-12), ale netu\u0161\u00ed, jak ho zapojit, aby spr\u00e1vn\u011b a hlavn\u011b spolehliv\u011b pracoval. Rozhodl jsem se tedy, \u017ee nap\u00ed\u0161u \u010dl\u00e1nek, ve kter\u00e9m se pokus\u00edm shrnout moje zku\u0161enosti a popsat zapojen\u00ed, kter\u00e9 pou\u017e\u00edv\u00e1m a se kter\u00fdm jsem spokojen\u00fd.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[5,25],"tags":[18],"class_list":["post-996","post","type-post","status-publish","format-standard","hentry","category-elektronika","category-esp8266","tag-esp8266"],"_links":{"self":[{"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/posts\/996","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=996"}],"version-history":[{"count":14,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/posts\/996\/revisions"}],"predecessor-version":[{"id":1012,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/posts\/996\/revisions\/1012"}],"wp:attachment":[{"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=996"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=996"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=996"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}