(für fortgeschrittene)... dieser Howto ist es, Bluetooth unter
Gnome so zum laufen zu bekommen, dass
wir mit hilfe des gnome-obex-server dann
die Möglichkeit haben Dateien zu verschicken
und natürlich auch zu empfangen.
Der Computer besitzt dann den Dienst
"Objekt-Push" der ja mitlerweile von
allen Geräten unterstützt wird.
ubuntu user haben es einfacher ...
Voraussetzung
Auf die Aktivierung von Bluetooth im Kernel
möchte ich jetzt nicht weiter eingehen, das
sollte jede Distribution als standard mit bringen.
Als Test bitte den Bluetooth Adapter an das USB
hängen und mit den Befehl "lsmod", vielleicht auch
nur (als root) ausführbar, testen ob folgendes dabei
angezeigt wird:
hci_usb 12416 1 bluetooth 51908 1 hci_usb
Nur dann ist das Blutooth Modul richtig geladen,
und Ihr könnt mit der Einrichtung fortfahren.
Bei allen wo das nicht automatisch geladen wird,
muss das manuell mit "modprobe hci_usb" passieren.

Dienste und Programme die nötig sind.
lBlueZ - Official Linux Bluetooth protocol stack
http://www.bluez.org/download.html
* bluez-libs-3.7 (Bluetooth libs)
* bluez-utils-3.7
* bluez-hcidump-1.33
* bluez-gnome-0.6
Openobex - Object Exchange (OBEX) protocol
http://openobex.sourceforge.net/downloads.html
* openobex-1.3
* obexftp-0.20
GNOME Bluetooth
http://usefulinc.com/software/gnome-bluetooth/#download
* libbtctl-0.8.2
* gob2-2.0.14 (http://www.5z.com/jirka/gob.html#download)
* gnome-bluetooth-0.8.0
Es gibt auch für jede Distribution Pakete, aber ich
empfehle diese selber zu kompilieren, dürfte ja nicht
so Problematisch sein.
./configure --prefix='/usr'
make
make install (als root)

Wenn Ihr alles schön Kompiliert und Installiert habt kann
es jetzt mit der Konfiguration weiter gehen.
Da ich beim Kompilieren die Option "--prefix='/usr'"
gewählt habe, sind meine Konfigurationsdateien im
"/usr/etc/bluetooth" Verzeichnis, kann natürlich sein das
das bei Euch anders ist. Ich geh mal von mir aus.
Im Verzeichnis "/usr/bin" befindet sich eine Datei
Namen's "bluepin". Dieses Script ist dazu gedacht das
wenn irgend ein Bluetooth Gerät Verbindung mit dem Computer
aufnimmt, ein Fenster angezeigt wird wo Ihr dann den
Bluetooth Pin eingeben könnt. Da das aber leider nicht
so gut funktioniert muss folgendes geändert werden.
Macht Euch eine Sicherung von dem script "/usr/bin/bluepin".
Dann ein neues script erstellen oder eben abändern.
Inhalt wie folgt:
#!/bin/bash
echo -n "PIN:"
cat /usr/etc/bluetooth/pin
Dieses Script macht nichts weiter, außer mit hilfe der
Datei "/usr/etc/bluetooth/pin" den Bluetooth Pin auszugeben.
in "pin" muss dann der Pincode stehen zB. 1234
und nicht vergessen macht nach dem Code auch ein Enter ;-)
daran bin ich nämlich schon einmal verzweifelt...
Diese Dateien müssten eigentlich schon schreibgeschützt
sein, also bitte als root bearbeiten.
Dann sind noch die Dateien,
"/usr/etc/bluetooth/hcid.conf" und
"/usr/etc/bluetooth/rfcomm.conf"
interessant.
bei der "hcid.conf" kann man eigentlich alles standard lassen,
bis auf die "Default settings for HCI devices" Section.
Dort sollte man einen besseren Namen wählen. zB.
name "slacki%d";
und NEU: security auto; einstellen.
Wenn man hier auto benutzt kann man die option passkey "1234";
verwenden, hat den Vorteil das wir die Geschichte oben mit dem
script "/usr/bin/bluepin" überhaupt nicht benötigen.
in der Datei "rfcomm.conf", kann man die Sache ein bischen
automatisieren, dazu muss man nur den Device seines Gerätes
dort fest definieren. zB.
device 00:0A:07:19:FE:27;
Habt Ihre mehrere Geräte müsst Ihr eben rfcomm0 bis
rfcomm100 definieren ;-)
Jetzt fragt Ihr Euch bestimmt wie man diese Device Nummer
rausbekommt? Das ist easy :) mit folgenden Befehl erscheint
eine Liste mit all Euren Bluetooth Geräten und der dazu
gehörigen device Nummer.
Es müssen natürlich die Dienste geladen sein ...
hcitool scan
Mit den Befehl "sdptool browse <device nummer>",
könnt Ihr Euch die Dienste anzeigen lassen die Euer
Bluetooth Gerät unterstützt.
So damit dürfte jetzt alles Eingestellt sein, was für
die nächsten Schritte benötigt wird.

"hcid" starten (als root) lsmod sieht dann so aus,
hci_usb 12416 2 bluetooth 51908 5 hci_usb
"sdpd" starten (als root) lsmod sieht dann so aus,
l2cap 28032 2 hci_usb 12416 2 bluetooth 51908 6 l2cap,hci_usb
"gnome-obex-server" (als user) lsmod sieht dann so aus,
rfcomm 40664 2 l2cap 28032 5 rfcomm hci_usb 12416 3 bluetooth 51908 9 rfcomm,l2cap,hci_usb
Die demon Dienste "hcid" und "sdpd" gehören zum
bluez-utils Paket. "gnome-obex-server" gehört zum
gnome-bluetooth Paket und startet den OBEX Server.
Die Dienste "hcid" und "sdpd" könnte man natürlich
auch über rc.d automatisch laden. Ist bei jeder
Distribution anders, bei Slackware einfach in die
"/etc/rc.d/rc.M" eintragen.
/usr/sbin/hcid
/usr/sbin/sdpd
Der "gnome-obex-server" wird ja bei Gnome sowieso
mit gestartet, wenn man den nicht beendet hat.
Wenn alles vernünftig Installiert ist, kann der
gnome-obex-server auch aus den Gnome Menü gestartet
werden, steht dort in "Systemwerkzeuge" als
"Bluetooth File Sharing" drin. Ebenso gibt es da noch
den "Bluetooth Manager", der eigentlich nur nach Geräte
scannt und diese dann anzeigt, sonst kann man nichts
weiter machen. Neuerdings auch mit dem Befehl
"bluetooth" erreichbar.
Wenn Ihr jetzt von Eurem Bluetooth Gerät aus nach
den Computer sucht, müsste der gefunden werden.
Dann noch die Bluepin am Gerät eingeben, FERTIG :)
Mit den Nautilus Dateimanager kann man jetzt prima
Dateien senden (rechts klick, Senden an ...)
Und wenn ein Gerät eine Datei sendet, erscheint ein
Dialog der Euch dann das Speichern ermöglicht.
NEU: Programme und Ihre Verwendung
"gnome-obex-server" - unter Gnome Dateien senden und empfangen.
"bluetooth-properties" - Bluetooth Einstellungen (NEU)
"bluetooth-applet" - Manager im Panel (NEU)
"bluetooth" - nach Geräte suchen.
"gnome-obex-send" - eine Datei von Konsole aus senden.
"bluetooth-properties" starten, bei Sichtbar ein haken rein...
Nur so ist es möglich das der Computer gefunden wird.
Unter folgenden Bedingungen erfolgreich getestet:
Linux Kernel 2.6.18
Slackware 11.0
Gnome 2.16.1
Also dann viel Spaß, beim Bluetooth Verkehr :)
(c) 2004-06, Andreas Gunsch - Update 29.11.2006
nach oben


