|
||||||||||||||
Daten von Bluetooth GPS-Maus auslesen
Um unter Linux an die Daten meiner Bluetooth GPS-Maus zu kommen, musste ich mir einen Bluetooth USB-Dongle (im Folgenden nur noch Dongle genannt) zulegen. Damit ich auch ein unterstütztes Gerät erwerben konnte, begab ich mich auf die Webseite Bluetooth and Linux. Nach einiger Zeit bestellte ich mir einen D-Link DBT-120, der zwar nur eine Reichweite von 10 Metern hat, aber für meine Bedürfnisse vollkommen ausreicht. Die folgenden Schritte wurden alle als root ausgefürt. Als nächstes musste ich die von mir favorisierte Linux-Distribution (Debian Sarge) dazu überreden, mit Bluetooth-Geräten zu sprechen. Dazu mussten nur noch die beiden Debian-Pakete "bluez-hcidump" und "bluez-utils" installiert werden. Der Kernel 2.4.26 war bereits entsprechend vorbereitet. # apt-get install bluez-hcidump bluez-utils Danach habe ich die beiden Kernel-Module "hci_usb" und "bluez" geladen und in die Datei "/etc/modules" eingetragen: # modprobe hci_usb # modprobe bluez Nun konnte ich mir durch den Aufruf von "hciconfig" den angeschlossenen Dongle anzeigen lassen:
# hciconfig
hci0: Type: USB
BD Address: 00:0F:3D:5E:68:68 ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN
RX bytes:496 acl:0 sco:0 events:36 errors:0
TX bytes:1136 acl:0 sco:0 commands:32 errors:0
Die MAC-Adresse des Dongles konnte ich mir wie folgt anzeigen lassen:
# hcitool dev
Devices:
hci0 00:0F:3D:5E:68:68
Nun kam der spannende Moment: Konnte ich mit diesem Dongle auf die Bluetooth GPS-Maus zugreifen?! Mit dem folgenden Kommando suchte der Dongle nach weiteren Bluetooth-Geräten und fand glücklicherweise die GPS-Maus.
# hcitool scan
Scanning ...
00:02:78:06:5F:79 TomTom Wireless GPS
Um eine Bluetooth-Verbindung zwischen Dongle und GPS-Maus herzustellen, musste ich hcitool mit der Option "cc" und der Mac-Adresse der GPS-Maus aufrufen. Der zweite Befehl zeigte alle aktiven Verbindungen an:
# hcitool cc 00:02:78:06:5F:79
# hcitool con
Connections:
< ACL 00:02:78:06:5F:79 handle 41 state 1 lm MASTER
Damit ich auf die Daten zugreifen konnte, wurde der GPS-Maus eine serielle Schnittstelle zugeordnet: rfcomm bind /dev/rfcomm0 00:02:78:06:5F:79 Mit Hilfe des cat-Kommandos konnte ich mir schließlich über die serielle Gerätedatei "/dev/rfcomm0" die Rohdaten der GPS-Maus ausgeben lassen (NMEA-Codes). cat /dev/rfcomm0 Um die serielle Schnittstelle wieder zu beenden wurde das rfcomm-Kommando mit der Option "release" und der MAC-Adresse der GPS-Maus aufgerufen. rfcomm release 00:02:78:06:5F:79 Zuguterletzt wurde die Bluetooth-Verbindung zwischen Dongle und GPS-Maus ordentlich getrennt: hcitool dc 00:02:78:06:5F:79
| |||||||||||||||||||