Skocz do zawartości

Jeden odbiornik ESP32 i kilka nadajników ESP32


Pomocna odpowiedź

@mmllmm do wejścia zasilania 5V/USB możesz podłączyć bezpośrednio coś co ma przynajmniej 3V i nie więcej niż 5.5V. Płytka ma LDO na pokładzie. Ale jeśli to akumulator to lepiej użyć XIAO.

A co do "innych sposobów" warto czytać właściwe dokumentacje.

  • Lubię! 1

Jeśli nadajniki mają przesyłać tylko stan jednego gpio - pytanie jak często? Bo wtedy może wystarczyłoby podać zasilanie na esp i nie bawić się w usypianie?

Głowny kod nadajnika  pochodzi ze strony : https://stackoverflow.com/questions/76823215/deep-sleep-with-ext0-or-ext1-on-esp32-c3-mini-1

czaty  niestety nie pomogły:)

Generalnie chodzi mi o idee.

Wspominaliście tutaj o BLE. Gdzieś sie spotkałem z informacją że to bywa kapryśne.

Zdecydowałem się na ESP NOW bo w teorii do tego typu rozwiązań było dedykowane.

Cały czas sprawa oprogramowania i sprzętu pozostaje otwarta.

Nie mam doświadczenia w tym temacie i chetnie wysłucham bardziej doświadczonych forumowiczów.

 

 

 

(edytowany)

Ok to napisz nam co dokładnie mają wysyłać nadajniki.

3 minuty temu, mmllmm napisał:

Głowny kod nadajnika  pochodzi ze strony

A to przepraszam za szyderę, zmyliły mnie te wszystkie fikuśne "ptaszki" przy komentarzach 😄

Edytowano przez _LM_
(edytowany)

W praktyce każdy nadajnik będzie korzystać z jednego GPIO ( prosty switch byłby podpiety np tak: GPIO2 +GND).

Praca będzie polegała na tym że switch/ C3 da informację o zwarciu --> powinien się uspać --> ponownie przesłać dać informację o rozwarciu switcha --> ponownie sie uspać. Ewentualnie dawać informację o statusie switcha co 5 sek i usypiać się ale wtedy nie wiem ile bateria wytrzyma.

Podpiecie do stałego zasilania byłoby najlepszym roziązaniem ale jeśli to możliwe to chciałbym uniknąć okablowania.

Generalnie do odbiornika maja docierać tylko informacje o stanie pojedynczego switcha ( razem ze statusem może być przesłany też mac adres z godziną)

Odbiornik ESP32 NP WROOM jako AccesPoint wizualizował by wszystko na dynamicznej stronie www.

To taki podstawowy szkic projektu. Możliwe że dojdą jeszcze jakieś potrzeby.

 

XIAO rzeczywiście upraszcza sprawę z akumulatorem ( załącznik). Ładowanie akumulatora jest możliwe przez USB?

 

 

 

 

XIOMI.jpg

Edytowano przez mmllmm

Niema sensu budzić układu co 5s esp za dużo ciągnie na rozruch, potrzebujesz czegoś co zarejestruje każdą zmianę stanu i dopiero wtedy wybudzi/uruchomi układ zajrzyj tutaj https://www.analog.com/media/en/technical-documentation/data-sheets/MAX16150.pdf co do czasu kiedy doszło do przełączenia, tym musi zająć się serwer. Chcąc pracować w miarę długo na jednym ładowaniu, pakiecie baterii w przypadku esp niema innej opcji jak zewnętrzne układy nadzorcze. Zaś co do przesyłania pakietów, nada się esp now jak i bt, wszystko zależy od potrzeb i tak to prawda że espnow był projektowany dla prostych zastosowań jak u ciebie. 

 

  • Lubię! 1

@mmllmm potrzebujesz wysłać jeden bajt (bit stanu przełącznika i 7 bitów procent naładowania akumulatora). Podawałem link do pogodynki - masz przykład jak odczytać poziom i schemat co gdzie podłączyć.

2 godziny temu, mmllmm napisał:

Myślałem o akumulatorkach ale one mają 3,7V a potrzebne jest 3,3V

ESP przeżyje 3,7V

Ale li-ion może mieć 4,2V. Proponuję przetwornicę buck-boost. Coś takiego np:

https://pl.aliexpress.com/item/1005008340002614.html?spm=a2g0o.order_list.order_list_main.43.20c41c24WGIYic&gatewayAdapt=glo2pol

A akumulatorki są bardzo zgrabne np takie do starych nokii czy innych telefonów z ery pre-smart.

(edytowany)
31 minut temu, ethanak napisał:

@kostuch nie, o miejscu gdzie się do płytki podłącza akumulator. Warto wiedzieć o czym się rozmawia zanim się postanowi wychylić...

 

Akurat odpowiadałem odnośnie fragmentu:

"Opcja z podłączenie, paluszków do USB jak najbardziej możliwa i wydaje się najprostsza.

Czy jest cos mniejszego od 3xAAA?

Myślałem o akumulatorkach ale one mają 3,7V a potrzebne jest 3,3V

. Nie wiem czy kolejny układ do redukcji napięcia byłby wartościa dodaną."

 

Mój wpis nie dotyczył konkretnej płytki (jak xiao) czy innej (wroom).

Akumulator może mieć od 4,2 do 2,5V i obydwie skrajne wartości są dalekie od ideału. Poradziłem jak to obejść.

Tak więc uważam swój wpis za usprawiedliwiony. A jak uważasz inaczej, to w prawym górnym rogu masz takie trzy kropeczki i opcję "zgłoś"

Edytowano przez kostuch

Rozmawialiśmy o bardzo konkretnych płytkach a nie o esp32 ogólnie czy hipotezach o powstaniu wszechświata. A do Twojej wiadomości: jest to zalecany sposób podłączania akumulatora, poza tym 2.5 V lipo to chyba lipa... C3 spokojnie pójdzie na 2.8V. Poza tym wziąłeś pod uwagę taki drobiazg, że przetwornica na biegu jałowym potrafi ładnie wydrenować akumulator?

  • Pomogłeś! 1
(edytowany)
8 godzin temu, _LM_ napisał:

Niema sensu budzić układu co 5s esp za dużo ciągnie na rozruch

Obawiałem się,że tak może być. Będę jednak potrzebował informacji czy aktualny stan to zwarcie czy rozwarcie przycisku więc jakoś będzie trzeba rozpoznać czy zmiana nastąpiła w kierunki rozwarcia czy zwarcia ( te stany switcha mogą trwać zwykle po kilkanaście minut, nie będzie to szybka zmiana w normalnej pracy ale szybka zmiana może też oczywiście pojawić się typu przypadkowe "kliknięcie"). Może wcześniej o tym nie wspomniałem ale switch będzie pracował w ten sposób, że będzie zwierany i ten status musi być wysyłany do access pointa. Zmiana statusu switcha w drugą stronę też musi być widoczna dla acces pointa. Generalnie Odbiornik musi wiedzieć czy switch zwarty czy rozwarty.

Macie może pomysł jak to rozpoznawać?

8 godzin temu, _LM_ napisał:

o do czasu kiedy doszło do przełączenia, tym musi zająć się serwer.

To dobre rozwiązanie

8 godzin temu, _LM_ napisał:

potrzebujesz czegoś co zarejestruje każdą zmianę stanu i dopiero wtedy wybudzi/uruchomi układ zajrzyj tutaj https://www.analog.com/media/en/technical-documentation/data-sheets/MAX16150.pdf

Tym układem można rozpoznać stan switcha po rozpoznanej zmiane stanu i wysłać informację do odbiornika?

 

8 godzin temu, ethanak napisał:

potrzebujesz wysłać jeden bajt (bit stanu przełącznika i

Jest jakiś standardowy/pewny sposób na rozpoznanie stanu przełącznika. W kodzie który posłałem to jest  chyab tylko informacja że było zwarcie i tyle. Nie ma informacji czy zwarcie jest aktualne czy już przeółącznik jest rozwarty. dajcie znać jeśli sie mylę.

8 godzin temu, ethanak napisał:

7 bitów procent naładowania akumulatora

Ta informacja mogłaby być wysyłana dużo rzadziej. Może np. przy uruchomieniu lub przyciskiem z poziomu webowego interfejsu jeśli to możliwe.

Zakładam że bateria/ aku wytrzyma kilka tygodni

Edytowano przez mmllmm
6 godzin temu, mmllmm napisał:

Ta informacja mogłaby być wysyłana dużo rzadziej.

Dlaczego? Jest jakaś różnica między wysłaniem jednego bitu a ośmiu? W sumie nawet nie trzeba wysyłać procentów, wystarczy "akumulator naładowany", "fajnie by było naładować" i "jak nie naładujesz to się zaraz wyłączę"...

 

6 godzin temu, mmllmm napisał:

Macie może pomysł jak to rozpoznawać?

To elementarne, drogi Watsonie 🙂

Pseudokod:

// tu wstałem
if (digitalRead(pin)) { // puszczony
   wyślij_sygnał(1); // znaczy puszczony
  //no i budzenie przy wciśnięciu
   esp_deep_sleep_enable_gpio_wakeup((1ULL << pin), ESP_GPIO_WAKEUP_GPIO_LOW);
} else {
   wyślij_sygnał(0); // wduszony
   // i wybudzenie przy puszczeniu
   esp_deep_sleep_enable_gpio_wakeup((1ULL << pin), ESP_GPIO_WAKEUP_GPIO_HIGH);
}
idź_spać();

 

  • Lubię! 1
  • Pomogłeś! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...