{"id":1845,"date":"2020-07-30T09:27:43","date_gmt":"2020-07-30T07:27:43","guid":{"rendered":"https:\/\/polluxlabs.net\/?p=1845"},"modified":"2024-09-19T11:56:24","modified_gmt":"2024-09-19T10:56:24","slug":"so-verwendest-du-bluetooth-am-esp32","status":"publish","type":"post","link":"https:\/\/polluxlabs.net\/arduino-tutorials\/so-verwendest-du-bluetooth-am-esp32\/","title":{"rendered":"So verwendest du Bluetooth am ESP32"},"content":{"rendered":"\n
Bluetooth ist allgegenw\u00e4rtig und auch dein ESP32 kann damit umgehen. Lerne in diesem Tutorial, wie du Bluetooth Classic verwendest und Daten zwischen einem Smartphone und deinem ESP32 austauschst.<\/p>\n\n\n\n
F\u00fcr dieses Tutorial ben\u00f6tigst du nur einen ESP32 und ein Android-Smartphone, auf dem du die kostenfreie App Serial Bluetooth Terminal<\/strong> installieren kannst.<\/p>\n\n\n\n Falls du deinen ESP32 bisher noch nicht mit der Arduino IDE programmiert hast, f\u00fchre bitte erst die folgenden Schritte durch:<\/p>\n\n\n\n \u00d6ffne die Einstellungen der IDE und trage in des Feld Zus\u00e4tzliche Boardverwalter-URLs<\/strong> folgenden Link ein.<\/p>\n\n\n\n \u00d6ffne anschlie\u00dfend den Boardverwalter<\/strong> unter Werkzeuge\/Board<\/strong>. Suche dort nach ESP32<\/strong> und installiere dir die neueste Version des gleichnamigen Pakets von espressif Systems<\/strong>. Und das war es auch schon \u2013 du solltest deinen ESP32 nun wie jedes andere Board in der Arduino IDE ausw\u00e4hlen und verbinden k\u00f6nnen.<\/p>\n\n\n\n F\u00fcr ein grundlegendes Experiment mit Bluetooth ben\u00f6tigst du nur wenig Code:<\/p>\n\n\n\n Schauen wir uns die wichtigsten Teile genauer an: Zun\u00e4chst bindest du die Bibliothek BluetoothSerial.h<\/strong> ein, die bereits in deiner Arduino IDE verf\u00fcgbar ist und nicht extra installiert werden muss. Anschlie\u00dfend erstellst du eine Instanz namens SerialBT<\/strong>. <\/p>\n\n\n\n Im Setup startest du die serielle Kommunikation mit einer Baudrate von 115200 \u2013 achte darauf, dass dein Serieller Monitor auch auf diese Rate eingestellt ist.<\/strong> Anschlie\u00dfend initialisierst du Bluetooth und gibst deinem ESP32 den Namen ESP32test<\/strong>.<\/p>\n\n\n\n Im Loop befinden sich zwei Abfragen: Die erste pr\u00fcft, ob du etwas in den Seriellen Monitor eingetragen und abgeschickt hast. <\/p>\n\n\n\n Wenn das der Fall ist, schickst du die Daten an den ESP32:<\/p>\n\n\n\n In der zweiten Abfrage wird gepr\u00fcft, ob der ESP32 etwas \u00fcber Bluetooth empfangen hat. Diese Daten werden dann im Seriellen Monitor ausgegeben.<\/p>\n\n\n\n Gehen wir also zur Praxis \u00fcber. F\u00fcr diesen Test verbindest du ein Android-Smartphone mit deinem ESP32 und schickst Nachrichten von einem Ger\u00e4t aufs andere.<\/p>\n\n\n\n Lade zun\u00e4chst den obigen Sketch wie gewohnt auf deinen ESP32 und starte den Seriellen Monitor mit der Baudrate 115200. Sollte sich hier nichts tun, dr\u00fccke den Reset- oder Enable-Button am ESP32. Anschlie\u00dfend sollte nach einigen Hardware-Informationen folgender Satz aus deinem Sketch angezeigt werden: Der ESP32 ist bereit. Verbinde dich nun \u00fcber Bluetooth.<\/strong><\/p>\n\n\n\n In den Bluetooth-Einstellungen deines Smartphone solltest du nun deinen ESP32 mit dem Namen ESP32test <\/strong>sehen und eine Verbindung herstellen k\u00f6nnen.<\/p>\n\n\n\nSo machst du deinen ESP32 in der Arduino IDE verf\u00fcgbar<\/h2>\n\n\n\n
https://dl.espressif.com\/dl\/package_esp32_index.json<\/code><\/pre>\n\n\n\n
Der Sketch f\u00fcr deinen ESP32<\/h2>\n\n\n\n
#include \"BluetoothSerial.h\"\n\nBluetoothSerial SerialBT;\n\nvoid setup() {\n Serial.begin(115200);\n SerialBT.begin(\"ESP32test\"); \/\/Name des ESP32\n Serial.println(\"Der ESP32 ist bereit. Verbinde dich nun \u00fcber Bluetooth.\");\n}\n\nvoid loop() {\n if (Serial.available()) {\n SerialBT.write(Serial.read());\n }\n if (SerialBT.available()) {\n Serial.write(SerialBT.read());\n }\n delay(25);\n}<\/code><\/pre>\n\n\n\n
SerialBT.write(Serial.read());<\/code><\/pre>\n\n\n\n
Ein erster Test<\/h2>\n\n\n\n