ESP-01
Mam 2 sztuki a w necie krytyka modułu ESP-0,1 że podatny na zakłócenia z powodu barku obudowy, niestabilny . Spróbuję go jednak użyć jako modułu w konfiguracji BLYNK <> ESP-01 <> Arduino <> RF433 by zestawić drugą ścieżkę łączności Blynk'a z domowym systemem IoT tym razem bezprzewodowo.
Kilka nieudanych prób i moduł zagadał na prędkości 115200. W programie ESP8266 Config wygląda to jeszcze lepiej. Połączenie z routerem domowym błyskawiczne. Co ważne - ustawienie prędkości na 9600 jest zapisywane do pamięci nieulotnej modułu tak więc reset i wyłączenie napięcia nie zmienia prędkości komunikacji (poza momentem startu gdzie wysyłane są komunikaty systemowe jak w poprzednim poście na prędkości 115200). Ale po początkowych krzaczkach widzianych na prędkości 9600 na koniec wskakuje ładny komunikat READY a za chwilę info o połączeniu się z siecią i pobraniu IP. Moduł działa i na moje oko bardziej stabilnie niż ESP-12.
Połączenie z Arduino
Wracam do prędkości 115200 i będę przyłączał moduł do sprzętowego RS232 UNO (piny 0 i 1). Gdyż ponieważ:
- prędkość ta zaszyta jest w ESP a nie chcę na razie kłopotów z przełączaniem prędkości modułu
- nie muszę instalować na razie biblioteki SerialSoft bo nie wiem jak działa
- mam większe zaufanie do hardwerowego seriala a pewność komunikacji z Blynk to podstawa całego systemu
- w rozwiązaniu docelowym Arduino RS232 nie będzie wykorzystywany więc szkoda go tak zostawić
To rozwiązanie wymusza rozłączanie linii Tx z ESP na moment wgrywania programu do UNO by coś wysyłane przez ESP nie zakłóciło transmisji. I oczywiście dodanie dzielnika napięcia na wyjściu Tx z Arduino (u mnie potencjometr 1,5 k). Na razie zostawiam zasilanie ESP z modułu konwertera czyli z osobnego USB - poprzez stabilizator DC/DC.
Schemat wygląda mniej więcej tak
Skopiowałem go stąd >>>>>>>>> i oczywiście ...... nie działa. Komunikat na czerwono że coś pozmieniali w bibliotekach, trzeba wgrać nowe i patrzeć w przykładach.
Pobieram najnowszą bibliotekę >>>>>>> patrzę w przykład i wszystko jasne - dwie podmienione biblioteki
#include <ESP8266_HardSer.h>
#include <BlynkSimpleShieldEsp8266_HardSer.h>
Zamieniam, kompiluję i .......... nie działa
Brak biblioteki ESP8266_HardSer.h. Sprawdzam - nie ma
nie ma w całym pliku /blynk-library-master.zip
Google radzi pobrać i zainstalować w katalogu bibilotek dodatkowe katalogi
.......\Arduino\libraries\Blynk
........\Arduino\libraries\BlynkESP8266_HardSer
.........\Arduino\libraries\BlynkESP8266_SoftSer
..........\Arduino\libraries\SimpleTimer
Oczywiście są w wersji 0.3.4.zip i trzeba je przenieść ręcznie! opis i plik do pobrania tu >>>>>>
Przenoszę kompiluje ..... brak biblioteki. Acha - włączony Arduino IDE. Zamykam /otwieram aplikację, kompiluję .....przeszło!
Rozłączam kabelek od Tx modułu ESP i wgrywam program do UNO.
Kabelek na miejsce i odpalam monitor. Nic. Bo prędkość ma 9600. Zmieniam na 115200, zamykam i otwieram jeszcze raz. I miło popatrzeć
[19] Blynk v0.3.5-beta
[520] Connecting to marzenie
ATE0
AT+CWMODE?
AT+CWJAP="marzenie","a1b2c3c4e5"
AT+CIFSR
[5617] IP: +CIFSR:STAIP,"192.168.2.193"
+CIFSR:STAMAC,"5c:cf:7f:0f:ee:e2"
OK
AT+CIPMUX=0
[5638] Connected to WiFi
AT+CIPCLOSE
AT+CIPSTART="TCP","blynk-cloud.com",8442
AT+CIPSEND=37
Telefon, Blynk i D13 ....... i LED na UNO zapala się i gaśnie. Zaczynam lubić ten program :)
A to działający program
Dwie niedziałające biblioteki zostawiłem jako komentarz
Brak komentarzy:
Prześlij komentarz