c't 26/2020
S. 144
Praxis
ESP32 Bluetooth-Scanner

Blauzahn­schnüffler

ESP32 als Smart-Home-Bluetooth-Scanner

Fitnesstracker, Beacons und ­andere dauerhaft sendende Bluetooth-Low-Energy-Geräte können im cloudlosen Smart Home bei der Präsenz­erkennung zum Einsatz kommen. Der günstige WLAN-Bluetooth-Mikrocontroller ESP32 machts möglich.

Von Andrijan Möcker

Bluetooth Low Energy (BLE) kam 2009 als Teil von Bluetooth 4.0 in den Nahfunk-Standard. Im Laufe der Jahre hat sich BLE als das Kommunikationsprotokoll der Wahl für akkubetriebene Smartphone-Ergänzungen durchgesetzt: Anhänger zum Auffinden des Schlüsselbundes, Fitnesstracker, Smartwatches, Körper- und Küchenwaagen. Viele von ihnen machen sich anwendungsbedingt regelmäßig per Funk bemerkbar, sie senden sogenannte „Advertisements“ – kurze Datenpakete, die mindestens die MAC-Adresse des Senders und optional weitere Parameter zu den am Gerät verfügbaren Bluetooth-Diensten enthalten.

Im Smart Home kann man die Bluetooth-Funktion dieser Geräte und deren regelmäßige Aussendungen zusätzlich benutzen, um Präsenz zu erkennen. Wie das mit dem Raspberry Pi ab Version 3 geht, haben wir bereits vor geraumer Zeit gezeigt [1]. Doch wenn der Raspberry Pi im Keller steht oder die Präsenzerkennung raum­genau sein soll, muss eine andere Lösung her. Natürlich kann man dann einen weiteren Raspberry Pi einsetzen, doch nur zum Scannen der Bluetooth-Umgebung ist er zu teuer. Der ESP32 ist dafür die richtige Alternative: Einzeln gibt es ihn auffertigen USB-Platinen für rund 9 Euro, in größeren Paketen zu drei oder fünf Stück sinkt der Preis auf 6,66 beziehungsweise 6 Euro. ­Einige Angebote finden Sie über ct.de/y3qd. Der 32-Bit-Mikrocontroller hat WLAN und Bluetooth integriert und kann beides gleichzeitig nutzen – fertigen Programmcode haben wir parat. Die Platinen aus den verlinkten Angeboten laufen allesamt über USB, lassen sich darüber programmieren und benötigen nach der Programmierung nur noch ein USB-Netzteil im jeweiligen Raum zur Stromversorgung.

Kommentare lesen (7 Beiträge)