Bluetool Modul
Allgemeines
Meine Bluetooth Module stammen aus China von wavesen und sehen wir dieses mit und dieses ohne Spannungsregler aus. Die UART Eingänge sind 5V tolerant. Ohne Regler vertragen die Module 3.3V, mit Regler 5V. Auf der Platinen Version ist eine Rote LED. Wenn diese nicht mehr blinkt sondern dauernd leuchtet ist das Modul ge-'paired'.
Konfiguration
Meine Module haben die Linvor 1.5 Firmware Version. Zur Konfiguration verwendet man die folgenden AT Kommandos. Dabei ist zu berücksichtigen, dass zwischen den einzelnen Buchstaben keine Pausen sind. D.h. am besten verwendet man 'Cut&Paste'. Je nach Terminal Programm ist es wichtig, dass am Ende nicht noch ein Zeileumbruch kommt, da dann das Modul den String nicht als Kommando interpretiert. Bei cutecom heisst der entsprechende Schalter "No line end".
Kommando | Antwort | Funktion |
---|---|---|
AT | OK | Damit kann man schauen, ob alles stimmt. |
AT+VERSION | OKlinvorV1.5 | Die Firmware Version |
AT+NAMEMyName | OKsetname | Setzt den Namen auf MyName, ich habe meine "Heinz1" und "Heinz2" getauft. |
AT+PINpasscode | OKsetPIN | Setzt die vier Ziffern für den Bluetooth Code auf passcode |
AT+PN | OK None | Setzt Parity |
AT+BAUDrate | OKyyy | Setzt die Baudrate 1=1200 2=2400 3=4800 4=9600 5=19200 6=38400 7=57600 8=115200 9=230400 A=460800 B=921600 C=1382400 |
Linux Test
Damit man das Bluetooth Modul ausprobieren kann benötigt man am Linux Rechner auch ein Bluetooth Interface. In meinem Desktop Rechner war keines eingebaut also musste ein USB Dongle her.
Leider macht der Bluetooth Micro USB 2.0 Dongle am Ubuntu 12.10 reproduzierbar Kernel-Panics.
Der noch kleinerer BIGtec nano Bluetooth USB Dongle funktioniert dagegen einwandfrei, obwohl er auch einen Cambridge Silicon Radio, Ltd. Chipsatz enthält.
Ohne Probleme auf Anhieb hat auch ein BlueFRITZ! USB v 2.0 von AVM am Ubuntu 12.10 funktioniert.
Hat man ein passendes Bluetooth Dongle, oder eingebautes Bluetooth Interface, kann man über die Bluetooth Menus das Modul suchen und nach Eingabe der Pin verbinden. Mit folgenden Kommandos kann man ein paar Informationen herausbekommen, die beim Testen eine Hilfe sein können:
# lsusb | grep Bluetooth Bus 002 Device 007: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode) # hcitool dev # der Dongle Devices: hci0 00:02:5B:7F:3E:36 # hcitool scan # die Bluetooth Geraete/Module Scanning ... 00:11:09:25:05:26 Heinz2
Mit diesen Informationen kann man in /etc/bluetooth/rfcomm.conf ein serielles Gerät definieren:
rfcomm0 { bind yes; device 00:11:09:25:05:26; channel 1; comment "Heinz2"; }
Sollte die Pin Eingabe zum Pairing nicht funktionieren, kann es sein, dass ein 'rfconn connect /dec/rfcomm0' einem Dialog zeigt, wo das Eingeben besser funktioniert.
Ist das Modul definiert, kann man damit verbinden und es dann als "/dev/rfcomm0" z.B. in cutecom benutzen.
Bei meinem Test hatte ich das Bluetooth Modul mit dem Serial USB Adapter FTDI Pro direkt angeschlossen. Ein cutecom Terminal kann dann über /dev/ttyUSB0 und 115200 Baud damit kommunizieren. Mit einem zweiten cutecom Terminal kann man dann über /dev/rfcomm0 per Bluetooth Daten zum anderen Terminal und zurück versenden.
Ubuntu 12.10 Probleme
Bei Ubuntu macht nur noch der Modemmanager Probleme, der bei einer Verbindung sofort mit "AT+GCAP" mehrmals versucht ein vermeintliches Modem nach seinen Eigenschaften ("Request Complete Capabilities List") zu fragen. Ich habe bisher zwei Möglichkeit gefunden dieses Verhalten los zu werden:
Entweder man wirft das gesamte Package weg:
apt-get remove modemmanger
Oder man verhindert den Start:
sudo mv /usr/share/dbus-1/system-services/org.freedesktop.ModemManager.service \ /usr/share/dbus-1/system-services/org.freedesktop.ModemManager.service.disabled
Datenblatt Bluetooth | |
---|---|
Chipsatz | CSR 417 |
Versorgungsspannung | 3.3V (oder 5V mit Platine) |
Stromaufnahme | 8-20mA |
UART Pegel | 3.3V (5V Tolerant) |
Hersteller Datenblatt | CSR HC-02 (privat) |
Weiterführende Links gibt's hier: