esp32, deep sleep i pilot IR

Dobry wieczór,

zbudowałem sobie zabawkę opartą o moduł esp32, a konkretnie o płytkę Lolin32 v. 1.0.0, o ile ma to znaczenie. Zabawka sterowana jest pilotem IR i wszystko działa. Żeby uniknąć mechanicznych włączników chciałem wykorzystać opcję "deep sleep" gdzie moduł esp32 pobiera jakieś niewielkie microampery. Udało się tylko połowicznie - pilotem mogę wprowadziś moduł w stan uśpienia, ale nie mogę go obudzić - nic dziwnego - procesor śpi więc nie obsłuży komendy z czujnika IR. Sam czujnik jednak reaguje na pilota i led potwierdzający odebranie sygnału z pilota się "zapala". Chciałbym to wykorzystać do generowania sygnału budzącego - potrzebny jest poziom niski. Próbowałem tak jak tutaj:

formatting link
ale nie działa to u mnie - albo mam ciągły reset esp32, albo nic się nie dzieje). Podpowiecie jakieś inne rozwiązanie? Z góry bardzo dziękuję.

Reply to
Mchal M. Lechanski
Loading thread data ...

Tutaj masz rozwiązanie dla Twojego modułu:

formatting link
c.

Reply to
Cezar

Dziękuję bardzo, oglądałem to już i nie ma tam rozwiązania mojego problemu. Zabawka ma już możliwość uśpienia z pilota i budzenia poprzez wymusszenie na określonym pinie poziomu niskiego (budzenie poprzez ext0). Niestety aby to zrobić muszę użyć mechanicznego przycisku, a tego chcę uniknąć. Do budzenia chcę użyć pilota jednak uśpiony procesor nie jest w stanie zdekodować odebranego sygnału dlatego szukam rozwiązania aby wykorzystać sam fakt odebrania sygnału bez jego dekodowania. Niestety nie wiem czy to w ogóle jest możliwe.

Reply to
Mchal M. Lechanski

Masz w ogóle wpływ na program tego urządzenia, czy wgrałeś gotowca i "nie znasz się"?

Tam na pierwszym rysunku na "DO" musi być stan niski w deep sleep, a po przebudzeniu trzeba go natychmiast ustawić na wysoki. Potem przed przejściem w stan uśpienia trzeba znów ustawić stan niski żeby aktywować możliwość resetu. Widzę tutaj jeszcze kilka problemów. ale generalnie powinno zadziałać.

Reply to
Mirek

Że się nie znam to fakt niezaprzeczalny, ale stan pinu ustawić potrafię. :-)

Dziękuję, takie też było moje rozumowanie, ale chyba było już za późno bo w setupie zamiast na wysoki ustawiam D0 znów na niski.

Pokażesz z czym, ewentualnie, przyjdzie mi się jeszcze zmierzyć?

Jeszcze raz dziękuję.

Reply to
Mchal M. Lechanski

Pilot nadaje serię impulsów - najlepiej by było zdążyć ustawić D0 pomiędzy pierwszym a drugim... ale w końcu powinien wstać i ustawić.

Układ będzie reagował na każdego (albo prawie) pilota, więc dobrze by było po resecie usypiać procek znowu, jeśli w określonym czasie nie będą nadawane właściwe sygnały. (W pokoju z telewizorem raczej sobie nie pośpi.)

Nie wiem co to masz za pilot, ale możliwe, że za każdym naciśnięciem nadawane jest kilka paczek rozkazu, więc jeśli procek zdekoduje pierwszą, która każe mu się uśpić, to kolejna go obudzi.

Reply to
Mirek

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.