Seriellen Datenübertragung mit Bluetoothmodulen
Über Bluetoothmodule lassen sich Daten drahtlos von einer serielle Schnittstelle (UART) des µC zu einem Smartphone, Rechner oder einem zweite µC versenden und empfangen. Angeboten werden verschiedene Modelle die sich zum einen im verwendeten Bluetooth-Standard und zum anderen darin unterschieden ob sie sich nur als Slave oder als Master/Slave einsetzten lassen.
BT 2.0 Module lassen sich nicht mit BL 4.0 Modulen verbinden. Die Technik ist zu unterschiedlich.
| HC-05 | Bluetoothstandard 2.0 (Master o. Slave) |
| HC-06 | Bluetoothstandard 2.0 (nur Slave) |
| HM-10 | Bluetoothstandard 4.0 Low Energy (Master/Slave) |
Teilweise lassen sich die Module nur schwer mit einem Partner verbinden. Die BT 2.0 Module lassen sich mit einem MAC oder Windows PC über das betriebssystemeigene Programm verbinden Bei den HM-10 Modulen mit BLE Technologie benötigt man dafür ein extra Programm (Suchbegriff: BLE Scanner, BLE Monitor).
Pinbelegung, LED und Button
| VCC | Positive Versorgungsspannung 3,3V-6V |
| GND | Negative Versorgungsspannung |
| RXD | UART RX (empfängt Daten von µC) |
| TXD | UART TX (sendet Daten an den µC) |
| State | Gibt den aktuellen Status aus und ist bei den Modulen nicht einheitlich. Nicht anschließen! |
| EN | Damit kann man den AT Modus "Enablen". Ist aber auch nicht bei allen Modulen glich. Nicht anschließen! |
AT-Befehle zum Einstellen der Module
Um Parameter wie den Anzeigenamen, das Passwort o.ä an den Modulen zu ändern müssen diese zunächst in den sogenannten "Command- Modus" (bzw. AT-Modus) gebracht werden. Dazu is es wichtig, dass die Module mit keinem weiteren Gerät verbunden sind. Die Befehle sind zwischen den Modulen recht unterschiedlich. In der Tabelle sind die Befehle für vier unterschiedliche Module angegeben. Gut möglich, dass es noch weitere gibt.
|
![]() |
![]() |
![]() |
|
| HM-10 (V1) | HM-10 (V2) | HC-06 | HC-05 | |
|---|---|---|---|---|
| Default Name | BT05 | HMSoft | HC-06 | H-C-2010-06-01 |
| Default Pin | 123456 | 000000 | 1234 | 1234 |
| Default Baudrate der Bluetooth-Übertragung und Kabelübertragung | 9600(4) | 9600(0) | 9600(4) | 9600 Immer 38400 für AT-Befehle |
| AT Modus aufrufen | Direkt nach Anschluss der Spannungsversorgung | Direkt nach Anschluss der Spannungsversorgung | Direkt nach Anschluss der Spannungsversorgung | Drücken des Tasters während gleichzeitig das Modul an die Spannungsversorgung angeschlossen wird. |
| Led Anzeige im AT Modus | Blinken jede Sekunde | Led ist aus | Schnelles Blinken | Blinken alle 2 Sekunden |
| AT-Befehl Zeichen beim drücken von Return |
NL+CR | egal | kein Zeichen | NL+CR |
| Name anzeigen Name ändern |
AT+NAME AT+NAMEmeinName |
AT+NAME? AT+NAMEmeinName |
nicht möglich AT+NAMEmeinName |
AT+NAME? AT+NAME=meinName |
| Pin anzeigen Pin ändern |
AT+PIN AT+PINneuerPin |
AT+PASS? AT+PASSneuerPin |
nicht möglich AT+PINneuerPin |
AT+PSWD? AT+PSWD=neuerPin |
| Baudrate anzeigen Baudrate ändern |
AT+BAUD AT+BAUDn |
AT+BAUD? AT+BAUDn |
nicht möglich AT+BAUDn |
AT+UART? AT+UART=Baudrate,0,0 |
| BT Adresse anzeigen | AT+LADDR | AT+ADDR? | AT+ADDR? | |
| Auf Werkseinstellung rücksetzten | AT+DEFAULT | AT+RENEW | AT+ORGL | |
| Sonstiges | Baudrate n: 1=1200 | 5=19200 2=2400 | 6=38400 3=4800 | 8=115200 4=9600 | 7=57600 |
Baudrate n: 0=9600 | 1=19200 2=38400 | 3=57600 4=115200 | 5=4800 6=2400 | 7=1200 |
Baudrate n: 1=1200 | 5=19200 2=2400 | 6=38400 3=4800 | 8=115200 4=9600 | 7=57600 |
Um das Modul zu verbinden muss der AT-Modus verlassen werden (Ziel: schnelles Blinken) |
| Led Anzeige bei bestehender BT Verbindung | Leuchtet dauerhaft | Leuchtet dauerhaft | Leuchtet dauerhaft | Doppelblinken alle 4 Sekunden |
Programm zum Übertragen der AT Befehle
#include "SoftwareSerial.h"
SoftwareSerial BT(8,7);
void setup() {
Serial.begin(9600);
BT.begin(38400); // 38400 für HC-05, 9600 für HC-06 und HM-10
BT.println("AT"); // AT-Befehl. Bei erfolgreicher Verbindung Rückgabe 'OK'
}
void loop() {
if (BT.available()) {
Serial.print(BT.readString());
}
if (Serial.available()) {
BT.println(Serial.readString());
}
}


