Forum: Mikrocontroller und Digitale Elektronik ESP32 BLE function call


von David P. (devryd)


Lesenswert?

Hallo zusammen,
ich entwickele gerade ein Projekt mittels ESP32 und BLE. Die 
Kommunikation über BLE mit dem Endgerät (Smartphone) funktioniert auch 
schon. Jetzt scheitere ich aber daran, vom Smartphone eine Methode auf 
dem ESP32 aufzurufen. Ich könnte zwar den Wert einer BLE characteristic 
vom Smartphone aus ändern und über diesen wert vom ESP32 aktiv pollen, 
aber das finde ich recht ungeschickt. Gibt es eine Möglichkeit einen 
Interrupt auszulösen, wenn sich der Wert einer Characteristic ändert? 
Oder fällt euch eine andere Möglichkeit ein?
Vielen Dank für eure Hilfe

PS: Ach so, ich nutze das Arduino Framework für den ESP32, falls das 
hilft.

: Bearbeitet durch User
von John P. (brushlesspower)


Lesenswert?

Du brauchst den Charakteristik Callback "OnWrite"

Siehe die BLE Beispiele vom Arduino Framework für den ESP32

von David P. (devryd)


Lesenswert?

Ah danke, das hilft

von Torsten R. (Firma: Torrox.de) (torstenrobitzki)


Lesenswert?

David P. schrieb:
> Gibt es eine Möglichkeit einen
> Interrupt auszulösen, wenn sich der Wert einer Characteristic ändert?

In BLE-Sprech nennt man so etwas einen "Control-Point". Du subscribes 
(abonnierst) Dich auf eine Characteristic, schreibt einen Opcode, 
gefolgt von ggf. nötigen Parametern und bekommst dann die Antwort 
(Funktions-Ergebnis) via BLE Notification oder Indication.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.