ESP32 mit BLE und light sleep

Hallo,
ich spiele derzeit ein wenig mit meinem ESP32 herum und bin auf das Thema Bluetooth gestoßen. Auf diesem Gebiet habe ich keine Erfahrung, die ersten Beispiel-Sketche liefen aber hervorragend.

Ich habe folgendes Szenario:
Der ESP32 ist in meinem Setup der Master, ein Tablet wäre der Client. Das Tablet befindet sich eigentlich immer in der nähe des ESP32 und könnte via Bluetooth dauerhaft verbunden sein (muss es aber nicht unbedingt). Nun hängt der ESP32 an einer (großen) Batterie, dennoch probiere ich eine möglichst stromsparende Lösung zu finden. Es wäre schön wenn der ESP32 in den light sleep geht, sobald kein Traffic zwischen Master und Slave auftritt. Wenn der Slave aber wieder irgendetwas vom Master auslesen oder Schalten möchte, sollte der ESP32 sofort aus dem light sleep in den normal operation mode übergehen.

Ich weis, dass in jedem sleep mode die Einheit für Wifi und Bluetooth abgeschaltet wird. Daher scheint dieses Vorhaben zunächst nicht möglich zu sein. Dann bin ich aber auf ein Issue bei Github mit einer entsprechenden Lösung gestoßen:

Für mich klingt es genau nach dem, was ich eigentlich vorhabe. Einen externen Oszillator mit 32.768 kHz besitze ich bereits. Nun habe ich allerdings Schwierigkeiten die entsprechenden Einstellungen vorzunehmen, da diese sich auf ESP-IDF beziehen. Davon habe ich leider absolut keine Ahnung, ich nutze Platform IO mit Arduino IDE und würde auch gerne dabei bleiben. Trotzdem könnte ich mir vorstellen, dass diese Einstellungen ebenfalls übernommen werden können. Nur wie?

Als Alternative würde ich mich auch auf Wifi einlassen, allerdings stehe ich hier vor ähnlichen Problemen. In meinem Anwendungsfall wäre der ESP32 als Master im AP mode.. Alle power saving optionen, die ich bisher dem API guide entnehmen konnten, beziehen sich auf den STA mode.

https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/wifi.html#esp32-wi-fi-power-saving-mode

Oder es gibt noch eine alternative, auf die ich bisher nicht gekommen bin? Letztendlich geht es nur darum, mit dem Tablet den ESP32 zu wecken, Licht zu schalten und Status abzufragen.. Anschließend soll der ESP32 wieder in irgendeinen sleep mode gehen um die Leistungsaufnahme zu reduzieren. Ob Bluetooth oder Wifi wäre mir erstmal egal.

Grüße

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.