Neben den Ultraschallsensoren hab ich jetzt auch noch ein Bluetooth Modul gekauft. Dieses habe ich heute auch mit meinem Arduino gekoppelt und wollte euch das hier mal mit einem kleinen Tutorial kundtun.

Was benötigen wir hierfür:

  1. Arduino Uno
  2. Bluetooth Modul (bspw. Sparkfun BlueSMIRF)
  3. Rechner mit Bluetooth

Ich gehe mal davon aus, dass ihr das Bluetooth an eurem Rechner selbsständig zum Laufen bekommen werdet und fange deshalb gleich mit der Inbetriebnahme des Bluetooth Moduls für den Arduino an.

Mein Bluetooth Modul (Sparkfun BlueSMIRF RN-V1) hat 6 Anschlüsse. Auf diese habe ich als erstes eine Buchsenleiste gelötet, um nachher besser mit den Steckverbindungen klarzukommen.

Arduino Bluetooth Modul - Sparkfun BlueSMIRF-RN-V1

Arduino Bluetooth Modul - Sparkfun BlueSMIRF-RN-V1

Verbindungen bitte wie folgt:

  1. VCC mit 5V des Arduino
  2. GND mit GND des Arduino
  3. TX-0 mit RX<-0 des Arduino
  4. RX-1 mit TX-1 des Arduino

Wenn ihr jetzt Strom an den Arduino gebt, sollte eine kleine rote LED auf dem BlueSMIRF anfangen zu blinken. Damit habt ihr den ersten Schritt getan und euer Bluetooth Modul funktioniert.

Arduino mit Bluetooth verbunden

Arduino mit Bluetooth verbunden

Jetzt müsst ihr euer Bluetooth Modul mit eurem Rechner verbinden. Die Werkseinstellung für das Passwort des BlueSMIRF ist 1234. Damit solltet ihr jetzt euren Rechner schonmal mit eurem Arduino gekoppelt haben.

WICHTIG: Mit Hilfe des Bluetooth Moduls können keine Programme auf den Arduino geladen werden. Ich weiss, dass ist schade, aber es ist nunmal so.

Also schreiben wir ein kleines Programm, welches wir auf den Arduino laden. Wichtig ist hierbei, dass die PINs an RX und TX abgezogen sind, während wir mit USB verbunden sind. Mein Programm zum Test sieht so aus:

Testprogramm Arduino und Bluetooth

Testprogramm Arduino und Bluetooth

Ich hab also den USB Stecker jetzt dran und lade das Programm hoch. Nachdem alles geklappt hat ziehe ich den USB Stecker vom Arduino ab und verbinde wieder beide Stecker mit RX und TX. Danach öffen ich die Konsole (Terminal in meinem Macbook) und suche nach der Bluetooth Verbindung:

Verbindungen mit dem Rechner

Verbindungen mit dem Rechner

Jetzt wo wir wissen, wo sich unser Bluetooth Modul befindet, stellen wir eine Verbindung her:

>> screen /dev/tty.FireFly-BFAD-SPP 115200

Mit diesem Befehl öffne ich einen Screen und verbinde mich dann seriell mit dem Bleutooth Modul an unserem Arduino über die Baudrate von 115200. Die LED des Bluetooth Moduls sollte jetzt von rot blinked auf grün wechseln.

Jetzt wird es Zeit, dass wir unser Programm testen. Dazu drücken wir einfach die 1 und die 0 abwechselnd und schalten damit über Bluetooth die LED an unserem Arduino an und aus.


Die Beispielanwendung ist super simpel, sollte euch aber zeigen, was wir jetzt hier geschafft haben. Es ist möglich, dass wir an das Arduino Board direkt Signale senden und empfangen können. Damit wird es möglich sein, Sensoren auszulesen und drahtlos!!! an den Computer zu senden. Ausserdem wäre es möglich den Roboter über Bluetooth (bspw. das Handy) zu steuern. Wenn das mal nicht nach neuen Funktionen für mein Roboprojekt schreit.

Dann noch nen schönen Sonntag abend an alle meine Leser und bis bald.

9 Responses to “Arduino Bluetooth Tutorial”

  1. […] fehlt aktuell einfach die Zeit. Trotzdem habe ich heute mal wieder ein paar Stunden genutzt, um das Bluetooth Tutorial vom letzten Mal ein wenig zu erweitern und auf mein Android Telefon auszuweiten. Das ganze […]

  2. Martin sagt:

    Hallo!

    Deine Seite hat mir beim Kampf gegen mein BT-Modul mächtig weitergeholfen! 🙂 DANKE!
    Eines irritiert mich: gehört die Zuweisung der Variable „value“ nicht in die IF-Abfrage? Sonst steht ja in der IF nix drin und abgefragt wird immer (ist eine dauernde Abfrage, auch wenn nichts da ist eigentlich egal?).
    Und nun hoff ich auf Deinen Rat: wie stell ich es an wenn ich 2 Adruinos mit BT verbinden will. Vor allem: wie debugge ich da? Kann ja nicht wirklich mit dem Serial-Monitor nachschaun.

    DANKE!
    Martin

  3. Roboman sagt:

    Hey Martin,

    danke für das Lob. Ich hab selber viel rumexperimentieren müssen, um das vernünftig zum Laufen zu bekommen und hab dann einfach mal alles aufgeschrieben :-D. Kann dir leider jetzt nicht genau sagen, warum das mit dem Serial.available() so gemacht wird. Kann sein, dass da im Serial Objekt ne Variable gesetzt wird, müsste ich aber selbst erst nachschauen. Hab dazu gerade aber keine Zeit…

    Zu deiner Frage bzgl. zwei BT Modulen. Ich hab das selber noch nicht getestet, aber ich habe hier ein Arduino Mega mit mehreren Communication Ports. Hab da zum Beispiel eine Verbindung per Bluetooth (Serial1) hergestellt und den Output auf USB (Serial0) gepostet. Das hat ziemlich gut geklappt.

    Hab dazu auch was geschrieben hier: Arduino Bluetooth und USB Datenübertragung parallel

    Vielleicht hilft dir das ja weiter?

    Gruß,
    Roland

  4. […] gibt ein Bluetooth Modul, welches ich für die manuelle Übernahme des Roboters […]

  5. […] Das ist ja schonmal ein Anfang. Die genaue Beschreibung dieses Programmes findet ihr im Arduino Bluetooth Tutorial. Verbindung ist also erfolgreich […]

  6. Börni sagt:

    Hi,
    wie ist dass denn wenn ich solch einen bluetooth empfänger über ein android smartphone ansteuern will?
    gibt es dann dafür vorgefertigte apps oder so?

  7. Roboman sagt:

    Hey Börni,

    das ist kein Problem. Erste Versuche habe ich bereits damit gemacht. Hier kannst du was drüber lesen:

    http://www.robosphere.de/arduino-und-android-erste-versuche/

  8. mixmasteru sagt:

    Sehr guter Artikel! Der Preis für das Modul ist allerdings heftig. Ich teste gerade mit eine Modul von eBay. Das kommt für 6€ aus Hongkong. Ist zwar sehr fummlig zu löten, aber es macht denke ich genau das selbe…

Leave a Reply