NodeMCU jest to mikrokontroler oparty o układ WiFi ESP8266 można go programować w dwóch językach programowania LUA oraz C. Zdecydowanie polecam programowanie w języku C za pomocą Arduino IDE ponieważ społeczność jest zdecydowanie bardziej rozwinięta, możemy używać większej ilości dostępnych bibliotek oraz tutoriali.
Przygotowanie środowiska Arduino IDE
Środowisko programistyczne możemy ściągnąć ze strony https://www.arduino.cc/en/software wybierając swój system operacyjny. Po pobraniu oraz instalacji przyszedł czas na uruchomienie.
Po uruchomieniu środowisko jest gotowe do pracy z płytkami Arduino, aby móc programować NodeMCU, musimy zrobić dodatkowe kroki.
Na początku należy przejść do ustawień (Arduino -> preferences). W polu Dodatkowe adresy URL do menadżera płytek
musimy wkleić URL:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Po czym należy kliknąć OK
.
Kolejnym krokiem jest zainstalowanie płytek, aby to zrobić należy przejść do Menadżera płytek
(Narzędzia -> Płytka: … -> Menadżer płytek…). W wyszukiwarce należy wpisać esp8266
po czym Instaluj
.
Gdy instalacja przebiegnie pomyślnie możemy spróbować zaprogramować naszą płytkę NodeMCU. Aby to zrobić należy podłączyć płytkę za pomocą kabla USB do komputera.
Po podłączeniu należy wybrać odpowiednią płytkę (Narzędzia -> Płytka: … -> ESP8266 Boards -> NodeMCU 0.9 (ESP-12 Module))
Po wybraniu płytki należy jeszcze wybrać port do którego jest podłączona nasza płytka. Najłatwiej jest to zrobić odłączając i podłączając mikrokontroler do komputera i sprawdzanie, który port się pojawi w (Narzędzia -> Port: …). W moim przypadku jest to /dev/cu.usbserial-1430
.
Wgrywanie testowego programu
Większość poradników bazuje na programie Blink (czyli mruganie diodą wbudowaną w płytkę). My spróbujemy zrobić to w inny sposób mianowicie wpisywanie cyklicznie frazy na port szeregowy i zczytywanie tego za pomocą monitora portu szeregowego.
W polu tekstowym wpisujemy poniższy kod:
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println("Ailve");
delay(2000);
}
Po upewnieniu się, że mamy wybraną dobrą płytkę oraz wrzuceniu kodu w pole tekstowe możemy spróbować zaprogramować mikrokontroler za pomocą strzałki w prawo
na górnym pasku aplikacji.
Po pomyślnym programowaniu dostaniemy informację Ładowanie zakończone.
Monitorowanie portu szeregowego
Aby odczytać informacje jakie są wysyłane przez mikrokontroler przez port szeregowy należy wejść (Narzędzia -> Monitor portu szeregowego).
U dołu należy wybrać odpowiednią prędkość, w naszym przypadku jest to 9600 bodów. Po wybraniu odpowiedniej prędkości co dwie sekundy powinniśmy otrzymywać wiadomość Alive
.
Co dalej?
W kolejnym wpisie przedstawię jak podłączyć do NodeMCU do sieci WiFi. Kolejnymi krokami będą podłączenie czujnika temperatury oraz wilgotności DHT22 i dodanie odczytów do Domoticza.