2017-10-23
Bluetooth csatoló linuxon2005-03-27

A blogban már jeleztem, az új kihívás most az, hogy a PC-met és a telefonomat bluetooth-on keresztül össze tudjam kötni. Az Ericsson k700i-hez ugyan kaptam telepítő CD-t, de még meg se néztem. Hozzászoktam ahhoz, hogy a gyártók egyszerűen negligálják az egyre bővülő linuxos piacot. Hogy mégse itélkezzem látatlanban, azért csak fölcsatolom.

Hát igen.
"Minimal system requirements: 120 MB free space on the hard disk
Windows 2000, Windows ME or Windows XP"

Úgy érzem én ezeket a követelményeket fölényesen überelni tudom :-)
115 GB free space on the hard disk
Debian Linux 'Sarge', 2.6.9-es kernel.

Persze ha már a readme is wri kiterjesztésű fájlban van...
Még valami pdf dokumentációban reménykedem, de aztán belátom, a lemezen semmi olyasmi nincs, amit használhatnék. Nem akarok igazságtalan lenni, nem biztos, hogy ez az egyoldalúság csupán a gyártók igénytelenségét tükrözi.

Na nem baj, nem az értelmetlen oprendszer-háborúban van most feladatunk, hanem fájlokat akarunk cserélni a telefonunkkal.

Ha az USB egyáltalán működik, akkor a /proc/bus/usb/devices fájlban a kis bluetooth dokkolónk is látható:

T: Bus=05 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 4 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=e0(unk. ) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=0a12 ProdID=0001 Rev= 5.25

2. - Ha nincs saját kernelünk, a sarge telepítő által felrakott 2.6.8-1-386 helyből tartalmazza a szükséges modulokat. Nekem viszont fordítással kellett kezdenem.

- Device Drivers
  - Networking support
      Bluetooth subsystem support
          L2CAP protocol support
          RFCOMM protocol support
     Bluetooth device drivers
	 HCI USB driver

make modules, és makemodules_install után az lsmod nálam valami ilyesmit (is) mutat:

hci_usb                10880  2
bluetooth              46084  7 rfcomm,l2cap,hci_usb
uhci_hcd               30736  0 
ehci_hcd               27652  0 
usbcore               111076  5 hci_usb,uhci_hcd,ehci_hcd

Tapasztalatból mondom, ez már önmagában igen biztató.

3. - Ezek után föl kellett raknom a bluez-utils csomagot (a libbluetooth1 függésben magától föltelepül.), ezután máris ellenőrizhetem a következőket:

hciconfig (ez a parancs az usb-s bluetooth cuccról (usb-dongle) szolgáltat információkat)

hci0:   Type: USB
        BD Address: 00:02:72:B0:DC:E5 ACL MTU: 192:8 SCO MTU: 64:8
        UP RUNNING PSCAN ISCAN 
        RX bytes:107 acl:0 sco:0 events:14 errors:0
        TX bytes:300 acl:0 sco:0 commands:13 errors:0

hcitool scan (ez megkeresi a közelben található egyéb bluetooth eszközöket)

Scanning ...
        00:0F:DE:7A:B3:5F       K700i

Ezek szerint a PC-ről már látom a telefont (már ha nem felejtettem el engedélyezni neki a bluetooth kommunikációt.), sőt, meg is pingelhetem! :-)

l2ping 00:0F:DE:7A:B3:5F
Ping: 00:0F:DE:7A:B3:5F from 00:02:72:B0:DC:E5 (data size 20) ...
0 bytes from 00:0F:DE:7A:B3:5F id 0 time 104.32ms
0 bytes from 00:0F:DE:7A:B3:5F id 1 time 27.50ms
0 bytes from 00:0F:DE:7A:B3:5F id 2 time 41.48ms
0 bytes from 00:0F:DE:7A:B3:5F id 3 time 38.49ms
4 sent, 4 received, 0% loss

Mindez nagyon szép, de állományokat másolni még nem tudok, sőt ennyivel még nem is fogok tudni. Kell még az "Object Exchange", azaz OBEX protokoll, tehát:

apt-get install obexftp obexserver openobex-apps

Ettől kezdve állományokat - parancssorból - már tudok forgalmazni. Ennél kényelmesebb módszert igér a gnome-bluetooth-manager, bár az még elég "bétás". A fejlesztés mindazonáltal folyik, érdemes próbálkozni és időnként frissíteni. A hivatalos sarge-debianban még nincs benne, úgyhogy az apt forráslista végére be kell szúrni a következő sort, illetve sorokat:

deb http://debian.usefulinc.com/gnome ./
deb-src http://debian.usefulinc.com/gnome ./

apt-get update
apt-get install gnome-bluetooth-manager

A nautilusban egér jobbgombra megjelent a "send via bluetooth" opció is, A rendszerezközök menüben elindított "Bluetooth File Sharing" pedig démonként működik, az ikonja megjelenik a panel jobb alsó sarkában, a dátum mellett. Fájlok másolása oda-vissza ezek után már nem okoz problémát. A telefonban a pin kód megadásával párosítani kell a pc-t (fel fogja ismerni), és utána onnan is lehet fájlküldést kezdeményezni. Ilyenkor a PC-n egy felugró ablak tájékoztat a beérkező kérésről és felajánlja a bejövő fájl megnyitását, mentését, vagy elutasítását.

Ja, hogy milyen pin kódra hallgat a PC? Alapértelmezés szerint 1234! Nem árt megváltoztatni, a /etc/bluetooth/pin nevű fájlban...

status