Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Mini płytka prototypowa ESP8266

pier 13 Cze 2018 20:54 5160 34
  • Mini płytka prototypowa ESP8266
    Jako że lubię ostatnimi czasy poeksperymentować z ESP8266 zrobiłem małą płytkę która ułatwi mi zadanie.

    Przeważnie swoje urządzonka z Esp zasilam z ogniwa Li-ion a więc nacisk był na takie właśnie zasilanie jak i na niskie zużycie energii.
    Tak więc płytka nie ma wad takich jak np.Nodemcu z kiepskim stabilizatorem i układem konwertera USB-UART który żre niepotrzebnie energię.
    U mnie stabilizatorem jest MCP1700. Jego parametry to:
    -prąd spoczynkowy, typowo 1,6uA
    -spadek napięcia, typowo 178mV

    Jak wspomniałem płytka nie ma konwertera USB-UART trzeba używać zewnętrznego jak i ręcznie zakładać zworkę do programowania, to chyba jedyna większa wada tej płytki.
    Na płytce zainstalowana jest ładowarka akumulatora MCP73831. Ładowanie akumulatora przewidziane jest z panelu PV.
    Akumulator to standardowy 18650 montowany w koszyku, tak jak w wielu podobnych płytkach.
    Wyświetlacz to standardowy oled 0.96' SSD1306 na I2C. Zworką można odłączyć jego zasilanie.
    Mniej standardowym elementem jest układzik ze scalakiem MAX1704 czyli "Li-po Fuel Gauge". To nic innego jak wskaźnik naładowania akumulatora komunikujący się po szynie I2C. Można z niego wyłuskać napięcie i stopień naładowania aku, ma też opcję alarmu ale ja z niej nie korzystam.
    A poza tym wejście ADC z możliwością pomiaru napięcia z panelu PV bądź po odlutowaniu zworki zewnętrzne napięcia. Jest też zworka umożliwiająca wybudzanie układu ze stanu uśpienia "Wake-Up".
    Szyna I2C wyprowadzona na goldpiny w dwóch miejscach. Pozostałe piny ESP również wyprowadzone na złącze.
    Pcb wykonałem termotransferem. Miedź zabezpieczona kalafonią.
    Płyteczka sprawuje się bardzo dobrze i spełnia moje oczekiwania w 100%.

    Jeszcze słowo dlaczego moduł ESP8266-07 skoro np. ESP-12 ma więcej pinów a no dlatego że ESP-07 ma złącze do zewnętrznej anteny.

    Mini płytka prototypowa ESP8266Mini płytka prototypowa ESP8266Mini płytka prototypowa ESP8266

    Jeśli będą chętni mogę zamieścić pdf-a z płytką.
    Na pytania chętnie odpowiem.


    Fajne!
  • #2 13 Cze 2018 23:41
    barek22224
    Poziom 9  

    Jakiego softu używasz do esp?
    I2C przypadkiem nie jest emulowane i można je dać na dowolne piny?

  • #3 14 Cze 2018 00:14
    rb401
    Poziom 33  

    Czy ta płytka z MAX17043 to ze Sparkfun czy od Chińczyka?
    Pytam dlatego że w jest jakaś większa afera z tymi modułami, bo na AE większość tych modułów mają w feedback'u info że kostki są fake, zgłaszają się na adresie 0x32 zamiast 0x36 i pokazują bzdury.

    A co do Twojego projektu to wygląda porządnie i dość przemyślanie. Jedynie mam wątpliwości czy wyrabia się solarny bilans energetyczny z non stop włączonym wyświetlaczem i oczywiście z ESP8266, który do energooszczędnych nie należy.

  • #4 14 Cze 2018 06:39
    pier
    Poziom 23  

    barek22224 napisał:
    Jakiego softu używasz do esp?
    I2C przypadkiem nie jest emulowane i można je dać na dowolne piny?


    Dokładnie tak jest. Ja po prostu zrobiłem sobie dwie gotowe listwy z I2C i zasilaniem.
    Na mojej płytce szyna I2C nie jest na standardowych pinach ESP.


    rb401 napisał:

    Czy ta płytka z MAX17043 to ze Sparkfun czy od Chińczyka?
    Pytam dlatego że w jest jakaś większa afera z tymi modułami, bo na AE większość tych modułów mają w feedback'u info że kostki są fake, zgłaszają się na adresie 0x32 zamiast 0x36 i pokazują bzdury.

    A co do Twojego projektu to wygląda porządnie i dość przemyślanie. Jedynie mam wątpliwości czy wyrabia się solarny bilans energetyczny z non stop włączonym wyświetlaczem i oczywiście z ESP8266, który do energooszczędnych nie należy.


    Płytka z MAX jest od chińczyka. Czytałem że płytki nie od Sparkfun-a mają jakieś problemy ale jak widać mi się trafiły dobre. Zaraz grzebię u kogo ja to kupiłem.

    CO do bilansu. Mam stację meteo-ESP8266 wybudzany co 30min + oled włączony cały czas. Spokojnie daje radę. Bez słonecznych dni z akumulatorem 2000mAh działa do dwóch tygodni. Oczywiście jeden słoneczny dzień i aku naładowany. Panel PV ma coś koło 3W.

  • #5 14 Cze 2018 09:05
    leonow32

    Poziom 30  

    Pięknie sobie zasłoniłeś antenę ;) Zobacz ESP8266 Hardware Design Guidelines
    Mini płytka prototypowa ESP8266

    Z jakimi babolami spotkałeś się w ESP8266? Dotychczas znalazłem takie dziury:
    - ADC nie działa, kiedy jest wyłączony transiter WiFi, a kiedy jest włączony, to ADC potrafi przerwać WiFi
    - włączenie lub wyłączenie transmitera WiFi tylko poprzez zresetowanie całego układu przez wejście w deep sleep i wybudzenie w innym trybie pracy
    - RTC wprawdzie jest i nawet działa podczas uśpienia, ale w momencie wybudzenia z uśpienia się resetuje
    - dużo syfu generowanego na pinach GPIO0, 1, 2, 15 podczas bootowania, czego nie można wyłączyć
    - samokasujący się EEPROM z niewiadomego powodu
    - wybudzanie układu z uśpienia poprzez połączenie pinu GPIO16 do RESET - no sorry, ale tak durnego rozwiązania jeszcze nie było

    No i najważniejsza wada moim zdaniem - układ uruchamia się 200/300ms i usypia się przez kolejne 100ms. W przypadku mojego programu, który wykonuje się w 6ms to straszny overkill i nmarnotrastwo baterii :D
    Mini płytka prototypowa ESP8266

  • #6 14 Cze 2018 09:21
    Piotrek_I
    Poziom 11  

    leonow32 napisał:
    Pięknie sobie zasłoniłeś antenę Zobacz ESP8266 Hardware Design Guidelines

    Tam nie ma anteny PCB tylko jest złącze do anteny zewnętrznej;)

  • #8 14 Cze 2018 09:29
    Piotrek_I
    Poziom 11  

    leonow32 napisał:
    a to co jest?

    Antena SMD a nie na PCB;) A tak na serio to w pierwszym poście zdanie:
    pier napisał:
    Jeszcze słowo dlaczego moduł ESP8266-07 skoro np. ESP-12 ma więcej pinów a no dlatego że ESP-07 ma złącze do zewnętrznej anteny.

    znaczy, że tej anteny SMD nie ma zamiaru używać:)

  • #9 14 Cze 2018 10:11
    pier
    Poziom 23  

    leonow32 ma rację w kwestii anteny. Pcb nie jest zaprojektowana zgodnie ze sztuką z powodu tej anteny na module. Wiedziałem o tym ale ze względu na to iż docelowo będzie używana antena zew. po prostu to olałem.
    Na razie do testów takie umiejscowienie anteny w niczym nie przeszkadza.

    Co do Twoich obserwacji leonow32, ja jestem bardziej pospolitym "Arduinowcem" i aż tak nie wgłębiam się w szczegóły.
    Jak wiadomo ESP8266 jest pierwszym tak tanim i dostępnym chipem z Wi-Fi ale za to obarczony takimi "kwiatkami".

  • #10 14 Cze 2018 15:45
    AIIoT
    Poziom 8  

    leonow32 napisał:
    - dużo syfu generowanego na pinach GPIO0, 1, 2, 15 podczas bootowania, czego nie można wyłączyć

    GPIO 1 i GPIO 2 to pint transmisji(tx) magistral UART odpowiednio UART0 i UART1 wysyłane są tam informacje o poprawnym rozruchu lub niepoprawnym i opcjach debugowania (szybkość transmisji 74880 baud) GPIO 15 też ma powiązanie z UART (pin RTS). Raczej samym syfem bym tego nie nazywał.

  • #11 14 Cze 2018 15:52
    rb401
    Poziom 33  

    pier napisał:
    Czytałem że płytki nie od Sparkfun-a mają jakieś problemy ale jak widać mi się trafiły dobre. Zaraz grzebię u kogo ja to kupiłem.


    O, byłbym wdzięczny. Bo z tymi MAX17043 to naprawdę chora sytuacja. Już w 2015 ludzie zgłaszali problem a ciągle do teraz te śmieciowe moduły i kości luzem są masowo sprzedawane (AE i ebay), jak widać po datach feedback'ów i wpisach na forach.

  • #12 15 Cze 2018 01:39
    piotrva
    Moderator na urlopie...

    Heh, u mnie ESP8266 potrafi rozłączyć się z siecią WiFi, ale... on dalej myśli, że jest podłączony do WiFi (sprawdzanie odpowiednią funkcją) i nie reaguje na polecenia rozłączenia. Jedyna opcja to pingowanie bramy domyślnej co ustalony interwał i w przypadku braku odpowiedzi na ping - reset całego ESP.

    @AIIoT biorąc pod uwagę, że jest to na dziwnym baudrate, to już trochę syf. Dalej mimo wszystko fajnie jakby się to dało wyłączyć - inaczej np. z tych pinów nie wysterujemy wrażliwych urządzeń. Nawet podpinając tam jakiś układ NRF, STM32, cokolwiek co jest w stanie np. odebrać IR, trzeba uważać na te syfy, żeby nie pomylić z pożądanymi danymi.

    No i przy okazji tak - ESP8266 ma tak badziewny brak uczciwego timera, że nawet nie da się odebrać prostej transmisji IR bez stosowania normalnego uC, mimo, ze na pokłądzie ma 80MHz kombajn ;)

  • #13 15 Cze 2018 07:07
    Radzio M.
    Poziom 32  

    pier napisał:
    leonow32 ma rację w kwestii anteny. Pcb nie jest zaprojektowana zgodnie ze sztuką z powodu tej anteny na module. Wiedziałem o tym ale ze względu na to iż docelowo będzie używana antena zew. po prostu to olałem.
    Na razie do testów takie umiejscowienie anteny w niczym nie przeszkadza.

    Co do Twoich obserwacji leonow32, ja jestem bardziej pospolitym "Arduinowcem" i aż tak nie wgłębiam się w szczegóły.
    Jak wiadomo ESP8266 jest pierwszym tak tanim i dostępnym chipem z Wi-Fi ale za to obarczony takimi "kwiatkami".


    Jak się nabierze w życiu doświadczenia to później amatorka parzy w oczy ;)
    Doświadcza się tego nawet na własnej skórze przeglądając wcześniejsze projekty ;)

  • #14 15 Cze 2018 08:21
    Galareta
    Poziom 21  

    piotrva napisał:
    Heh, u mnie ESP8266 potrafi rozłączyć się z siecią WiFi, ale... on dalej myśli, że jest podłączony do WiFi (sprawdzanie odpowiednią funkcją) i nie reaguje na polecenia rozłączenia. Jedyna opcja to pingowanie bramy domyślnej co ustalony interwał i w przypadku braku odpowiedzi na ping - reset całego ESP.


    Tak z ciekawości - w czym programujecie te ESP? Ardu? Bo szczerze z tym się nie spotkałem jeszcze - widocznie szczęście miałem.

  • #16 15 Cze 2018 20:03
    RometFan;p
    Poziom 26  

    Czy masy na obu stronach są jakoś połączone, Np. poprzez lutowanie goldpinów z obu stron?
    Bo jeśli nie to jedna wartwa odniesienia nie ma nic wspólnego z drugą. Powinieneś dołożyć ze chociaż 2-3 przelotki. Jeśli chodzi o kondensatory, to miejsce było, więc trzeba je było umieścić jak najbliżej modułu tak jak deklarują producenci tego typu modułów. Poza tym tak jak przedmówcy doczepię się do anteny. Masz fajną chipową antenę na module, a przez taki layout to zmarnowałeś jej możliwości.

    Poza tym wykonane ładnie, "+" za własnoręczną płytkę, oraz wyświetlacz OLED (mam nadzieję, że już niedługo wyrwiemy się całkowicie z sideł HD44780) ;-).

  • #17 15 Cze 2018 22:26
    tesla97
    Poziom 12  

    Niestety ale gdyby zrobili OLED wielkości HD44780 to z chęcią bym to kupił ale tak to jest dla mnie za małe aby uzyskać jakąkolwiek czytelność z pewnej odległości i nie chodzi mi o same cyfry bo do tego są 7segmentowe

  • #18 15 Cze 2018 22:55
    Galareta
    Poziom 21  

    @tesla97 A wyświetlacze TFT? 1.8 cala to jakieś 15 zł dwa razy tyle kosztuje 2.8 cala. Tam już się sporo mieści no i kolor jest.

    Jaki zasięg jest tego wifi z tym polem masy pod anteną? Jak będziesz dodawał zewnętrzna antene, nie zapomnij urwać zworki aby odłączyć wbudowaną.

  • #19 16 Cze 2018 13:02
    3149400
    Użytkownik usunął konto  
  • #20 16 Cze 2018 17:56
    Piotrek_I
    Poziom 11  

    mkrysz8 napisał:
    Też dokładam się do pytania - w czym programujecie ESP?

    Niedawno zacząłem programować w microPythonie, nawet to niezłe jest. Minusów też ma kilka: jest (jeszcze-mam nadzieję) problem z częścią bibliotek.

    A czy jest możliwość zabezpieczenia wsadu w ESP? Na zasadzie FuseBitów z AVRów?

  • #21 16 Cze 2018 23:34
    krzbor
    Poziom 16  

    leonow32 napisał:
    - dużo syfu generowanego na pinach GPIO0, 1, 2, 15 podczas bootowania, czego nie można wyłączyć

    W stopce promuję temat mówiący jak usunąć niepożądane sygnały przy starcie.

    Dodano po 53 [minuty]:

    Piotrek_I napisał:
    A czy jest możliwość zabezpieczenia wsadu w ESP? Na zasadzie FuseBitów z AVRów?

    To raczej nie jest możliwe - flash jest oddzielnym modułem i zawsze można go odczytać. Można użyć szyfrowania - ale z tego co czytałem nie jest to proste. Ciekawie wygląda ESP8285 - odpowiednik ESP8266 z wbudowanym Flash - ale tu także nie znalazłem opcji odpowiadających FuseBit. Co gorsza w opisie tego układu znalazłem "ESP8285’s pins VDDPST, SDIO_CMD, SDIO_CLK, SDIO_DATA_0 and SDIO_DATA_1 are used for connecting the embedded flash, and are not recommended for other uses.", co oznacza, że najprawdopodobniej można się bezpośrednio skomunikować z flash.

  • #22 17 Cze 2018 09:42
    Duch__
    Poziom 31  

    krzbor napisał:
    leonow32 napisał:
    - dużo syfu generowanego na pinach GPIO0, 1, 2, 15 podczas bootowania, czego nie można wyłączyć

    W stopce promuję temat mówiący jak usunąć niepożądane sygnały przy starcie.

    Dodano po 53 [minuty]:

    Piotrek_I napisał:
    A czy jest możliwość zabezpieczenia wsadu w ESP? Na zasadzie FuseBitów z AVRów?

    To raczej nie jest możliwe - flash jest oddzielnym modułem i zawsze można go odczytać. Można użyć szyfrowania - ale z tego co czytałem nie jest to proste.


    Wystarczy przygotować plik firmware pod konkretny MAC ADRES modułu i już leży powielanie kodu.

  • #23 17 Cze 2018 10:05
    3149400
    Użytkownik usunął konto  
  • #24 17 Cze 2018 10:18
    leonow32

    Poziom 30  

    krzbor napisał:
    leonow32 napisał:
    - dużo syfu generowanego na pinach GPIO0, 1, 2, 15 podczas bootowania, czego nie można wyłączyć

    W stopce promuję temat mówiący jak usunąć niepożądane sygnały przy starcie.

    Ciekawy pomysł, jednak to wciąż nie rozwiązuje źródła problemu. Z podobnych tego typu rozwiązań widziałem, że inni stosują bufory trójstanowe typu 74HC125, 74HC126, 74HC244, 74HC245 lub klucz analogowy 4066. Aby nie marnować jednego pinu na sterowanie tymi buforami można zrobić prosty układzik RC, który wprowadza opóźnienie między zboczem rosnącym sygnału reset, a otwarciem buforów, tak aby bufory były zamknięte, kiedy ESP wysyła śmieci i samoczynnie otwarły się, kiedy układ będzie gotowy do pracy.

  • #25 17 Cze 2018 14:13
    pier
    Poziom 23  

    RometFan;p napisał:
    Czy masy na obu stronach są jakoś połączone, Np. poprzez lutowanie goldpinów z obu stron?
    Bo jeśli nie to jedna wartwa odniesienia nie ma nic wspólnego z drugą. Powinieneś dołożyć ze chociaż 2-3 przelotki. Jeśli chodzi o kondensatory, to miejsce było, więc trzeba je było umieścić jak najbliżej modułu tak jak deklarują producenci tego typu modułów. Poza tym tak jak przedmówcy doczepię się do anteny. Masz fajną chipową antenę na module, a przez taki layout to zmarnowałeś jej możliwości.

    Poza tym wykonane ładnie, "+" za własnoręczną płytkę, oraz wyświetlacz OLED (mam nadzieję, że już niedługo wyrwiemy się całkowicie z sideł HD44780) ;-).


    Masy na obu stronach są połączone inaczej płytka by nie działała bo akumulator jest na warstwie spodniej.

    Ja programuje ESP w Arduino.

  • #26 18 Cze 2018 15:28
    krzyski
    Poziom 10  

    Niestety problem śmieci pojawiających się na końcówkach to nie tylko problem ESP8266. Tu akurat śmieci pojawiają się na krótki czas (~60ms). Na Onionie Omega 2 dyskoteka na pinach trwa około 20s dopóki nie wstanie Linux!

  • #28 18 Cze 2018 19:55
    krzyski
    Poziom 10  

    Próbowałem wersji "Non-OS" jak i "RTOS". Ogólnie ciężko cokolwiek napisać ze względu na brak jakiejkolwiek sensownej dokumentacji. Tylko grzebanie po rosyjskich i chińskich forach, inżynieria wsteczna w oparciu właśnie o SDK.
    Jako kompilator świetnie sprawdza się Atom z nakładką Platformio.
    PWM ma programowy (podobno sprzętowy również - nie dotarłem), timery sprzętowe dwa - pierwszy używa WiFi a drugi PWM więc dostępny tylko drugi jak się nie korzysta z PWM. Ogólnie do zabawy - jak najbardziej. Ale już do czegoś bardziej sensownego odradzam.

    Fajny artykuł "Jak pisać na ESP":
    http://www.danielcasner.org/guidelines-for-writing-code-for-the-esp8266/

  • #29 18 Cze 2018 19:58
    shimano73
    Poziom 11  

    Bardzo ładna płytka, szczególnie pola masy . Pytanie do autora: jakiej drukarki używasz do termotransfer

  • #30 18 Cze 2018 20:03
    3149400
    Użytkownik usunął konto