ESP8266 - Bluetooth
Dieses Tutorial zeigt Ihnen, wie Sie den ESP8266 verwenden, um das Bluetooth-HC-05-Modul zu steuern. Im Detail werden wir Folgendes lernen:
- Bluetooth mit ESP8266 verwenden
- Daten vom ESP8266 an eine Smartphone-App über Bluetooth übertragen
- Daten von der Smartphone-App über Bluetooth auf dem ESP8266 empfangen
- ESP8266 von der Smartphone-App über Bluetooth steuern

Der Zweck dieses Tutorials besteht darin, ...
- Zeigen Sie, wie der ESP8266 Daten mit einer Smartphone-App austauschen kann.
- Erklären Sie die Verwendung des HC-05 Bluetooth-Moduls.
- Zeigen Sie, wie Sie die Bluetooth Serial Monitor App auf Android verwenden.
- Veranschaulichen Sie, wie Sie eine LED und einen Servomotor von einer Smartphone-App aus steuern.
Dieses Tutorial konzentriert sich auf Classic Bluetooth (Bluetooth 2.0). Wenn Sie Informationen zu Bluetooth Low Energy – BLE (Bluetooth 4.0) suchen, verweisen Sie bitte auf dieses ähnliche Tutorial: ESP8266 - Bluetooth Low Energy
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über das HC-05 Bluetooth-Modul
HC-05 ist ein serielles Bluetooth-Modul, das als Seriell-zu-Bluetooth-Konverter fungiert. Es verfügt über die Fähigkeit zu:
- Daten vom Serial RX-Pin aufnehmen und sie über Bluetooth an das gekoppelte Gerät (z. B. ein Smartphone) senden
- Daten über Bluetooth (vom gekoppelten Gerät) empfangen und an den Serial TX-Pin übertragen
Insbesondere, wenn der ESP8266 mit einer Smartphone-App (Android/iOS) kommuniziert:
- Es verbindet sich über seine Serial/SoftwareSerial-Pins mit dem HC-05 Bluetooth-Modul.
- Das HC-05 Bluetooth-Modul ist mit der Smartphone-App gekoppelt.
- Um Daten an die Smartphone-App zu senden, sendet der ESP8266 sie einfach an die Serial/SoftwareSerial.
- Um Daten von der Smartphone-App zu empfangen, liest der ESP8266 sie von der Serial/SoftwareSerial aus.
- Kein spezieller Bluetooth-Code ist auf dem ESP8266 erforderlich.
Die Pinbelegung des Bluetooth-HC-05-Moduls

Das HC-05 Bluetooth-Modul hat 6 Stifte:
- Enable-/Key-Pin: Dieser Pin wird verwendet, um zwischen Datemodus (auf LOW) und Befehlsmodus (auf HIGH) zu wechseln. Wenn er nicht verbunden ist, befindet er sich standardmäßig im Datemodus.
- VCC-Pin: Versorgungs-Pin, dieser sollte mit dem +5V der Versorgungsspannung verbunden werden.
- GND-Pin: Versorgungs-Pin, dieser sollte mit dem GND der Stromquelle verbunden werden.
- TX-Pin: Serieller Datenpin, dieser sollte mit dem RX-Pin des ESP8266 verbunden werden. Die über Bluetooth empfangenen Daten werden an diesen Pin als serieller Daten gesendet.
- RX-Pin: Serieller Datenpin, dieser sollte mit dem TX-Pin des ESP8266 verbunden werden. Die von diesem Pin empfangenen Daten werden an das Bluetooth-Modul gesendet.
- Status-Pin: Der Statuspin ist mit der eingebauten LED verbunden; er kann als Feedback verwendet werden, um zu prüfen, ob das Bluetooth ordnungsgemäß funktioniert.
Dennoch müssen für grundlegende Operationen nur vier Pins des HC-05 Bluetooth-Moduls mit dem ESP8266 verbunden sein.
Das HC-05 Bluetooth-Modul hat zwei integrierte Bauteile:
- Eine LED, die den Status des Moduls anzeigt:
- Einmaliges Blinken alle zwei Sekunden bedeutet, dass das Modul in den Befehlsmodus gewechselt hat
- Schnelles Blinken zeigt an, dass es im Datenmodus auf eine Verbindung wartet
- Blinken zweimal pro Sekunde bedeutet, dass die Verbindung im Datenmodus erfolgreich hergestellt wurde
- Eine Taste, mit der der Key/Enable-Pin gesteuert werden kann, um den Betriebsmodus auszuwählen (Daten- oder Befehlsmodus)
Wie es funktioniert
Das HC-05 Bluetooth-Modul verfügt über zwei Betriebsarten:
- Datenmodus, der zum Austausch von Daten mit dem gekoppelten Gerät verwendet wird
- Befehlsmodus, der zum Konfigurieren von Parametern verwendet wird
Glücklicherweise kann das HC-05 Bluetooth-Modul mit dem ESP8266 ohne jegliche Konfiguration betrieben werden, wobei die Standardeinstellungen verwendet werden.
HC-05 Standardeinstellungen
Default Bluetooth Name | “HC-05” |
---|---|
Default Password | 1234 or 0000 |
Default Communication | Slave |
Default Mode | Data Mode |
Default Data Mode Baud Rate | 9600, 8, N, 1 |
Default Command Mode Baud Rate | 38400, 8, N, 1 |
Über die Bluetooth-Seriemonitor-App
Die Bluetooth Serial Monitor App ist eine mobile Anwendung mit einer Benutzeroberfläche, die dem Serial Monitor der Arduino-IDE ähnelt. Sie kann verwendet werden, um über Bluetooth mit dem ESP8266 zu kommunizieren, ohne dass spezieller Code für das Bluetooth-Modul im ESP8266-Code erforderlich ist. Um dies zu tun, sollten die folgenden Schritte befolgt werden:
- Verbinde den ESP8266 mit dem HC-05 Bluetooth-Modul
- Installiere die Bluetooth Serial Monitor App auf deinem Smartphone
- Öffne die App und koppel sie mit dem HC-05 Bluetooth-Modul
Jetzt können Sie Daten vom ESP8266 genauso senden und empfangen, wie Sie es mit dem Serial Monitor der Arduino-IDE tun würden. Sie müssen keine Änderungen an Ihrem bestehenden ESP8266-Code vornehmen oder Bluetooth-Code zu Ihrem neuen ESP8266-Code hinzufügen.
Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Weitere Informationen finden Sie unter ESP8266-Pinbelegung und wie man ESP8266 und andere Komponenten mit Strom versorgt.
Verdrahtungstabelle
Verdrahtungsdiagramm
Diagramm der Verdrahtung
ESP8266 Pins | HC-05 Bluetooth Pins |
---|---|
Pin D7 | TX |
Pin D6 | RX |
5V | VCC |
GND | GND |
Enable/Key (NOT connected) | |
State (NOT connected) |
※ Notiz:
Sie können andere ESP8266-Pins verwenden, indem Sie das Serial-Objekt im ESP8266-Code auf ein anderes ändern, z. B. Serial1, Serial2 oder SoftwareSerial, falls verfügbar.
Wie programmiert man für Bluetooth
Es ist keine Bluetooth-spezifische Programmierung erforderlich. Wir müssen lediglich den seriellen Code verwenden.
ESP8266 sendet Daten an die Bluetooth-App auf dem Smartphone
Um Daten von einem ESP8266 zu einer Bluetooth-App auf einem Smartphone zu übertragen, muss auf dem Arduino der folgende Code verwendet werden:
In diesem Fall veranlassen wir, dass der ESP8266 in Ein-Sekunden-Intervallen das „ESP8266 hier, gib mir Befehle!“ an die Bluetooth-App auf einem Smartphone sendet.
Schnelle Schritte
Um mit ESP8266 in der Arduino-IDE zu beginnen, befolgen Sie diese Schritte:
- Schauen Sie sich die Anleitung zur Einrichtung der ESP8266-Umgebung in der Arduino-IDE an, falls Sie ESP8266 zum ersten Mal verwenden.
- Verbinden Sie die Bauteile wie im Diagramm gezeigt.
- Verbinden Sie das ESP8266-Board über ein USB-Kabel mit Ihrem Computer.
- Öffnen Sie die Arduino IDE auf Ihrem Computer.
- Wählen Sie das richtige ESP8266-Board aus, z. B. NodeMCU 1.0 (ESP-12E Module), und seinen jeweiligen COM-Port.
- Installieren Sie die Bluetooth Serial Monitor App auf Ihrem Smartphone. Verbinden Sie das HC-05 Bluetooth-Modul gemäß dem Verdrahtungsdiagramm mit dem ESP8266. Kopieren Sie den Code und öffnen Sie ihn mit der Arduino IDE. Klicken Sie in der Arduino-IDE auf die Schaltfläche Hochladen, um den Code auf den ESP8266 hochzuladen. Wenn das Hochladen des Codes fehlschlägt, trennen Sie die TX- und RX-Pins vom Bluetooth-Modul, laden Sie den Code erneut hoch und verbinden Sie dann RX- und TX-Pins wieder. Öffnen Sie den Seriellen Monitor in der Arduino-IDE. Öffnen Sie die Bluetooth Serial Monitor App auf Ihrem Smartphone und wählen Sie den klassischen Bluetooth-Modus.

- Verbinde es mit dem HC-05 Bluetooth-Modul.

- Schau dir das Ergebnis in der Android-App an.

- Zeigen Sie das Ergebnis im seriellen Monitor der ESP8266-Entwicklungsumgebung an.
Sie werden feststellen, dass die im Serial Monitor der Arduino-IDE und in der Android-App angezeigten Informationen dieselben sind.
Bluetooth-App Daten an ESP8266 senden
Der folgende Code ermöglicht:
- Datenübertragung von einer Bluetooth-App an einen ESP8266
- Auslesen der Daten durch den ESP8266, gefolgt von der Rücksendung einer Antwort an die Bluetooth-App
Schnelle Schritte
- Verdrahten Sie die Komponenten wie im Diagramm gezeigt.
- Schließen Sie das ESP8266-Board über ein USB-Kabel an Ihren Computer an.
- Öffnen Sie die Arduino-IDE auf Ihrem Computer.
- Wählen Sie das richtige ESP8266-Board aus, zum Beispiel (z. B. NodeMCU 1.0 (ESP-12E Module)), und den entsprechenden COM-Port.
- Kopieren Sie den Code und öffnen Sie ihn mit der Arduino-IDE.
- Klicken Sie auf die Schaltfläche Hochladen in der Arduino-IDE, um den Code für den ESP8266 zu kompilieren und hochzuladen.
- Öffnen Sie den Serial Monitor in der Arduino-IDE.
- Verbinden Sie die Android-App mit dem HC-05-Bluetooth-Modul, wie im vorherigen Beispiel durchgeführt.
- Sobald die Verbindung hergestellt ist, geben Sie entweder „LED AN“ oder „LED AUS“ in der Android-App ein und drücken Sie die Schaltfläche „Senden“.

- Der ESP8266 empfängt die Daten und gibt die Antwort über den seriellen Port aus. Diese Daten werden anschließend an die Bluetooth-App gesendet, und das Ergebnis kann in der Android-App gesehen werden.

- Schau dir das Ergebnis im Serial Monitor-Fenster der ESP8266 IDE an.
Sie werden feststellen, dass die auf dem Serial Monitor der Arduino-IDE und der Android-App angezeigten Informationen dieselben sind.
ESP8266-Code - LED mit Smartphone-App über Bluetooth steuern
Dieser ESP8266-Beispielcode wird auf zwei Befehle reagieren: “ON” und “OFF”. Wenn sie empfangen werden, werden diese Befehle verwendet, um eine eingebaute LED über die Bluetooth Serial Monitor App ein- oder auszuschalten.
Sie finden eine ausführlichere Erläuterung der Anweisungen im ESP8266 steuert LED über Bluetooth/BLE Tutorial.
ESP8266-Code - Steuerung eines Servomotors mit Smartphone-App über Bluetooth
Der untenstehende ESP8266-Code empfängt den Winkelwert von der Bluetooth-Serial-Monitor-App, um den Winkel des Servomotors zu steuern.
Sie können die Anweisungen im Detail im ESP8266 controls Servo Motor via Bluetooth/BLE Tutorial einsehen.
Für einen gründlicheren Blick auf die Anweisungen schauen Sie sich das ESP8266 controls Servo Motor via Bluetooth/BLE Tutorial an.
Wenn Sie die Anweisungen eingehender sehen möchten, lesen Sie das ESP8266 controls Servo Motor via Bluetooth/BLE Tutorial.
Um einen umfassenderen Überblick über die Anweisungen zu erhalten, gehen Sie zum ESP8266 controls Servo Motor via Bluetooth/BLE Tutorial.
Wenn Sie die Bluetooth-Serial-Monitor-App hilfreich finden, geben Sie ihr bitte eine 5-Sterne-Bewertung im Google Play Store. Vielen Dank für Ihre Unterstützung!
Video Tutorial
Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.