11 sty 2016

ESP Easy - firmware i potencjalne zastosowania, cz.1

Moduł ESP8266 szturmem wkradł się w serca hobbystów zainteresowanych szeroko pojętą automatyzacją w domu. Dzięki swojej niskiej cenie i niewielkim rozmiarom umożliwia programowanie wieloma różnymi pakietami oprogramowania. W tym poście przybliżę te sposoby programowania, a w kolejnej części opowiem o możliwościach wykorzystania modułu w codziennym życiu.

Programowanie ESP

Programowanie ESP jest możliwe przy użyciu różnych pakietów oprogramowania.
Pierwszym jest firmware oparty o komendy AT. Jest to domyślny rodzaj firmware zainstalowanego na większości modułów ESP kupowanych np. na Aliexpress.
Umożliwia on wydawanie komend w sposób analogiczny, jak czyniło się to w komunikacji np. z modemami. Jest to prosta metoda, ale znacząco utrudnia programowanie modułu.

NodeMCU

Kolejnym rozwiązaniem jest NodeMCU, Ten rodzaj firmware stanowił rewolucję w możliwościach progoramowania, gdyż umożliwia uruchamianie na modułach ESP oprogramowania w postaci skryptów LUA. To pozwala na pisanie złożonych skryptów, przy pomocy języka o dość prostej konstrukcji.
Na rynku dostępne są także gotowe moduły NodeMCU, wyposażone w port micro USB, standardowo wyposażone w oprogramowanie NodeMCU, które pozwalają szybko rozpocząć przygodę z ESP bez potrzeby tworzenia własnych rozwiązań do programowania modułu.
Aktualna wersja oprogramowania dostępna jest pod adresem: https://github.com/nodemcu/nodemcu-firmware, ale ja mam np. mieszane uczucia w zakresie wykorzystania tego rozwiązania.
Do ładowania skryptów po zainstalowaniu oprogramowania doskonałym narzędziem jest ESP Explorer.

Programowanie przy pomocy Arduino IDE

W związku z popularnością modułu ESP w środowisku użytkowników Arduino pojawiła się możliwość programowania moduły przy pomocy tego samego środowiska, w którym tworzy się sketche dla Arduino.
Jest to popularne rozwiązanie, ale nadal wymaga umiejętności programistycznych. Oprogramowanie AT jest zainstalowane w modułach, ale w razie potrzeby, jest także dostępne tutaj.

ESP Easy

Najnowszym moim odkryciem w zakresie programowania modułów ESP jest ESP Easy. Jest to stosunkowo nowe rozwiązanie, ale bardzo aktywnie rozwijane przez grupę pasjonatów. Jego podstawowym założeniem jest maksymalne uproszczenie konfiguracji ESP z punktu widzenia zastosowań.
Bezpośrednio po załadowaniu firmware ESP Easy przy pomocy środowiska Arduino IDE uzyskujemy działający moduł, który następnie możemy skonfigurować do naszych zastosowań, korzystając z przeglądarki www. Przy pomocy ESP Easy w łatwy sposób przekształcimy ESP w platformę sterującą włączaniem urządzeń elektrycznych, miernik temperatury, wilgotności lub odległości, wyświetlacz informacyjny, czujkę ruchu, itp.
Podstawowym celem ESP Easy jest przekazywanie informacji z podłączonych czujników do Domoticza lub innych systemów automatyki domowej, także za pośrednictwem protokołu MQTT, przy jednoczesnej redukcji programowania do ustawienia sekwencji tzw. zadań (Tasks) w konfiguratorze na stronie www danego modułu ESP.
Strona domowa projektu: http://www.esp8266.nu

Przydatne linki w sieci: