ESP8266 – podłączenie i aktualizacja firmware Ostatnio na blog…


ESP8266 – podłączenie i aktualizacja firmware

Ostatnio na blog było dość nudno, ale mam dla Was coś nowego. ESP8266 nie jest bezpośrednio związany z Raspberry Pi, ale jest bardzo tani(od $2-4), ma wbudowane WiFi i spore możliwości. W użyciu bardziej przypomina Arduino niż Malinę. Zacznijmy jednak od początku.

Czym właściwie jest ESP8266? To niewielki moduł(w zależności od modelu ~3 mniejszy od RPi Zero), zasilany napięciem 3.3V, pobierający w spoczynku około 10?A i działający w standardzie WiFi 802.11 b/g/n. Obsługuje bez problemowo WPA / WPA2. W zależności od modelu posiada od od 2 do 9 pinów GPIO, do których możemy coś podłączyć. Modele ESP8266 numerowane są kolejno od ESP-01 do ESP-12. Tutaj znajdziecie listę z porównaniem praktycznie każdego modelu ESP. Dzisiaj zajmiemy się modelem ESP-01.

Przygodę z ESP-01 zaczniemy od podłączenia do komputera i wgrania najnowszej wersji firmware?u. W zależności od wgranego firmware?u mamy możliwość pisania programów w języku skryptowym Lua(https://github.com/nodemcu/nodemcu-firmware) lub Pythonie. Poniżej opiszę jak wgrać na ESP-01 najnowszą wersję NodeMCU, czyli firmware?u umożliwiającego pisanie programów w Lua i wgrywanie ich za pomocą Arduino IDE.

ESP8266

W przypadku ESP-01 mamy do dyspozycji 8 pinów w tym 2 piny GPIO, do których można coś podłączyć. Do połączenia ESP z komputerem używam tego samego modułu, którego używałem przy Arduino – USB-UART FTDI 3,3/5V na przewód USB. Musimy pamiętać o odpowiednim zwarciu pinów na konwerterze, aby pracował przy napięciu 3.3V a nie 5V. Następnie musimy podłączyć Pin TxD z konwertera z Rx na ESP, RxD z Tx, VCC z Vcc oraz CH_PD i GND z GND oraz GPIO0. Ważne aby pamiętać o ostatnim połączeniu(GPIO0 z ESP-01 z GND). Dzięki temu nasz moduł ESP-01 przejdzie w stan, w którym możemy na niego wgrać oprogramowanie. W czasie późniejszego używania modułu(z wgranym już oprogramowaniem) możemy używać tego pinu(GPIO0) w celu podłączenia jakiegoś czujnika i nie łączymy go już z GND.

ESP8266

ESP-01 posiada również dwie diody. Czerwona świeci, gdy urządzenie jest zasilane i działa. Natomiast niebieska mruga gdy wgrywane jest oprogramowanie lub, gdy sami wymusimy to w programie.

Skoro mamy już podłączone ESP-02 do komputera, pora przejść do pobrania nowego firmware?u – NodeMCU. Polecam pobranie wersji ?nodemcu_float?, która obsługuje liczby zmiennoprzecinkowe.

W zależności od systemu operacyjnego, którego używasz w tym momencie pobieramy [NodeMCU Flasher](https://github.com/nodemcu/nodemcu-flasher] dla Windowsa lub na Linuksie i OSX pobieramy i instalujemy esptool(wymaga Pythona 2.7 oraz pySerial). Na Windowsie po uruchomieniu aplikacji NodeMCU Flasher wybieramy zakładkę ?Config? i wskazujemy położenie pobranego wcześniej pliku z firmwarem. Wracamy do karty ?Operation? i klikamy ?Flash?. Natomiast na Linuksie i OSX uruchamiamy terminal i przechodzimy do folderu z esptool i wpisujemy polecenie sudo python esptool.py -p /dev/tty.usbserial-xxxxxx -b 9600 write_flash 0x000000 nodemcu_float_0.9.6-dev_20150704.bin. Oczywiście w miejsce /dev/tty.usbserial-xxxxxx musicie wpisać namiary na wasz konwerter(możecie to sprawdzić wpisując ls -l /dev/tty i naciskając dwa razy Tab). Jak widać końcówka polecenia, go położenie naszego pliku z nowym firmwarem. Jeśli znajduje się on w innym folderze niż esptool, to musimy podać do niego ścieżkę.

Po chwili na naszym ESP-01 powinna zacząć mrugać niebieska dioda. Oznacza to, że nowy firmware się wgrywa. Zazwyczaj trwa to jakąś minutę lub dwie. Jeśli pojawią się jakieś błędy to na 99% mamy coś źle podłączone(Warto sprawdzić czy GPIO0 jest podłączony do GND).

Po wgraniu nowego firmware?u przejdźmy do konfiguracji Arduino IDE i wgrania pierwszego programu na nasze ESP-01. Najnowsze Arduino IDE można pobrać ze strony projektu. Po uruchomieniu wybieramy ?Ustawienia? i w ?Dodatkowe adresy URL do menadżera płytek:? wklejamy ?http://arduino.esp8266.com/package_esp8266com_index.json?. Następnie wybieramy Narzędzia>Płytka>Menadżer Płytek i w wyszukiwarce wpisujemy ESP. Przy ?esp8266? klikamy ?Instaluj?. Teraz możemy już wybrać w Narzędzia>Płytka Kilka modeli ESP. Wybieramy ?Generic ESP8266 Module?. W ?Port? wybieramy miejsce podłączenia naszego konwertera i gotowe. Teraz możemy wgrywać nasz kod na ESP-01. Na początek warto sprawdzić coś z Plik>Przykłady>ESP8266.

Zdjęcie: mcuoneclipse.com

Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! – facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku – facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.

Źródło: Rapsberi Pi