Arduino Bluetooth meistern: HC-05 Modul Tutorial für Smartphone & PC Steuerung
In diesem Arduino-Bluetooth-Tutorial lernen Sie, wie Sie das HC-05-Modul für die Arduino-Steuerung per Bluetooth-Kommunikation einsetzen. Sie können das folgende Video ansehen oder die schriftliche Anleitung unten lesen. Zwei Beispiele: Arduino per Smartphone steuern und Arduino per Laptop/PC steuern. Die Konfiguration des HC-05 als Master/Slave für Arduino-zu-Arduino-Kommunikation folgt im nächsten Tutorial. Vor dem ersten Beispiel (Smartphone) schauen wir uns das HC-05-Modul genauer an. Im Gegensatz zum HC-06 (nur Slave) kann der HC-05 auch als Master betrieben werden – ermöglicht Kommunikation zwischen zwei separaten Arduino-Boards. Es gibt verschiedene Versionen; ich empfehle das Breakout-Board für einfacheren Anschluss. Das HC-05 ist ein Bluetooth SPP (Serial Port Protocol) Modul – Kommunikation mit Arduino über serielle Schnittstelle. Benötigte Komponenten: So verbinden Sie das Modul mit dem Arduino: Mein Modul kann mit 3,6–6 V betrieben werden (Breakout-Board mit Spannungsregler). Die Logikpegel der Datenpins sind jedoch 3,3 V. Die Leitung Arduino TX (5 V) → Bluetooth RX (3,3 V) muss über einen Spannungsteiler geführt werden, um das Modul nicht zu beschädigen. Die Leitung Bluetooth TX (3,3 V) → Arduino RX kann direkt verbunden werden, da 3,3 V am Arduino als High erkannt werden. Einfaches Beispiel: LED an/aus per Bluetooth – gut zum Verständnis der Kommunikation. Beschreibung: LED-Pin definieren, Variable für Smartphone-Daten. Vor dem Hochladen TX/RX-Leitungen trennen (Arduino nutzt Serial für Upload). Alternativ andere TX/RX-Pins nutzen (dann SoftwareSerial-Bibliothek nötig). Verwandt: HC-05 als Master/Slave koppeln per AT-Befehlen Bluetooth am Smartphone aktivieren → HC-05 wird gefunden. Koppeln mit Standardpasswort „1234“. Für die Steuerung braucht man eine App. Im Play Store gibt es viele, die mit obigem Code funktionieren. Ich habe eine eigene App mit MIT App Inventor erstellt – im nächsten Tutorial gibt es eine Schritt-für-Schritt-Anleitung dafür. Meine App für dieses Beispiel zum Download: Mit Connect-Button verbinden, Status-Text zeigt Erfolg. „Turn ON“/„Turn OFF“ steuern LED. Der Text darüber ist die Arduino-Rückmeldung. Laptop mit HC-05 koppeln: Bluetooth-Einstellungen → HC-05 finden → Passwort „1234“. Im Geräte-Manager unter „Anschlüsse (COM & LPT)“ erscheinen zwei „Standard Serial over Bluetooth link“ – dort die COM-Port-Nummer notieren. Wir nutzen dasselbe LED-Beispiel und denselben Arduino-Code. Mit der Processing IDE erstellen wir ein Steuerprogramm für den PC: Beschreibung: Serial-Bibliothek einbinden, Serial-Objekt erstellen, String-Variable für LED-Status. Im Programm starten → Bluetooth-Verbindung wird aktiv (HC-05 blinkt alle 2 Sek.) → LED per Laptop steuerbar. Das war dieses Tutorial. Nicht vergessen: Nächstes Tutorial zeigt HC-05 Konfiguration für Arduino-zu-Arduino-Kommunikation als Master/Slave. Fragen gerne in den Kommentaren und schauen Sie sich meine Arduino-Projektsammlung an!Überblick

Schaltplan

Arduino Bluetooth Kommunikations-Beispiel Quellcode
#define ledPin 7
int state = 0;
void setup() {
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
Serial.begin(38400); // Standard-Baudrate des Bluetooth-Moduls
}
void loop() {
if (Serial.available() > 0) {
state = Serial.read();
}
if (state == '0') {
digitalWrite(ledPin, LOW);
Serial.println("LED: OFF");
state = 0;
} else if (state == '1') {
digitalWrite(ledPin, HIGH);
Serial.println("LED: ON");
state = 0;
}
}Code language: Arduino (arduino)setup(): LED-Pin Output, initial Low, Serial 38400 Baud. loop(): Serial.available() prüft auf Daten, Serial.read() liest in „state“. Bei ‚0‘: LED aus, String „LED: OFF“ zurücksenden, „state“ zurücksetzen. Bei ‚1‘: LED an, „LED: ON“ zurücksenden. Hinweis: „state“ ist Integer – Zeichen ‚0‘ entspricht ASCII 48, ‚1‘ ASCII 49. Deshalb Vergleich mit Zeichen ‚0‘/‚1‘.Smartphone mit HC-05 & Arduino verbinden


Arduino Bluetooth Tutorial Example Android App
1 file(s) 1.38 MB Download
Arduino per Laptop/PC via Bluetooth steuern


Processing IDE Quellcode
import processing.serial.*;
Serial myPort;
String ledStatus = "LED: OFF";
void setup() {
size(450, 500);
myPort = new Serial(this, "COM5", 38400); // COM-Port aus Geräte-Manager
myPort.bufferUntil('\n');
}
void serialEvent(Serial myPort) {
ledStatus = myPort.readStringUntil('\n');
}
void draw() {
background(237, 240, 241);
fill(20, 160, 133);
stroke(33);
strokeWeight(1);
rect(50, 100, 150, 50, 10); // Turn ON Button
rect(250, 100, 150, 50, 10); // Turn OFF Button
fill(255);
textSize(32);
text("Turn ON", 60, 135);
text("Turn OFF", 255, 135);
textSize(24);
fill(33);
text("Status:", 180, 200);
textSize(30);
textSize(16);
text("Program made by Dejan Nedelkovski,\n www.HowToMechatronics.com", 80, 320);
text(ledStatus, 155, 240);
// Turn ON Button gedrückt
if (mousePressed && mouseX > 50 && mouseX < 200 && mouseY > 100 && mouseY < 150) {
myPort.write('1');
stroke(255, 0, 0);
strokeWeight(2);
noFill();
rect(50, 100, 150, 50, 10);
}
// Turn OFF Button gedrückt
if (mousePressed && mouseX > 250 && mouseX < 400 && mouseY > 100 && mouseY < 150) {
myPort.write('0');
stroke(255, 0, 0);
strokeWeight(2);
noFill();
rect(250, 100, 150, 50, 10);
}
}Code language: Arduino (arduino)setup(): Fenstergröße, serielle Kommunikation starten (COM-Port aus Geräte-Manager probieren). bufferUntil('\n') puffert bis Zeilenende (Arduino sendet per println()). serialEvent() prüft auf Daten, readStringUntil('\n') liest Arduino-String („LED: OFF/ON“).draw() (wiederholt sich ständig): Grafik zeichnen, Buttons per rect(), Texte per text() inkl. ledStatus. Buttons funktional machen: Mausklick im Button-Bereich → Zeichen ‚1‘ oder ‚0‘ senden, Button rot hervorheben.
Herstellungsprozess
- Sicheres Arduino RFID-Schloss bauen – Schritt-für-Schritt-Anleitung
- JX Wave Generator – Arduino-kompatibler DDS-Oszillator mit OLED-Display
- u-blox LEA-6H 02 GPS-Modul: Arduino & Python Integrationsanleitung
- Fortschrittliches Sturz-Erkennungssystem mit Arduino, Windows IoT & Azure Cloud
- Arduino Uno & Bluetooth: Fernsteuerung eines Autos – Schritt-für-Schritt-Anleitung
- Arduino Nano Fingerabdruck-Sensor-Projekt – Schritt-für-Schritt-Tutorial
- ArduRadio: DIY Arduino-Wecker mit FM-Radio (TEA5767)
- Arduino-gesteuerte smarte Kaffeemaschine mit Bluetooth & Temperaturüberwachung
- Raspberry Pi 3 & Arduino Laptop selbst bauen: Schritt-für-Schritt-Anleitung
- rDUINOScope: Arduino Due Teleskop-Steuerung (GOTO) mit TFT, GPS, RTC, Bluetooth & Joystick