NOKIA 6310
NOKIA 6310i, Bluetooth, GPRS od T-mobile CZ v Linuxu
1 Bluetooth
Seznam Bluetooth zařízení, která jsou pod Linuxem podporována lze nalézt na WWW stránkách http://www.holtmann.org/linux/bluetooth/devices.html. USB bluetooth adaptér D-Link DBT-120 mezi taková zařízení patří. Pro jeho funkci je třeba zkompilovat podporu Bluetooth v jádře. Prefabrikovaná jádra od Red-Hatu již tuto podporu zahrnují. Podrobněji to popisují články [1] a [2].
Dále je třeba nainstalovat knihovny (ty nejprve) a programy umožňující s Bluetooth adaptérem komunikovat. Jsou to:
bluez-hcidump-1.5 bluez-libs-2.4 bluez-pan-1.1_26022003 bluez-sdp-1.5 bluez-utils-2.3
Jejich aktuální verze lze nalézt na http://bluez.sourceforge.net/download/download.html a další informace pak v [5].
Komunikace se zařízením obstarává daemon hcid. Pro jeho start by mělo stačit:
/etc/rc.d/init.d/bluetooth start
Pokud chybí zařízení /dev/rfcomm, vytvoříme jej pomocí příkazu:
mknod -mode 666 /dev/rfcomm0 c 216 0
V případě, že jsme podporu zkompilovali jako modulární, musí být moduly nahrány v jádře.
modprobe hci_usb # hci_usb je USB-bluetooth adapter hciconfig hci0 up # nahození zařízení hci0
Takže příkaz hciconfig ukáže přibližně toto:
[root@localhost root]# hciconfig hci0: Type: USB BD Address: 00:0D:88:9E:DA:40 ACL MTU: 192:8 SCO MTU: 64:8 UP RUNNING PSCAN ISCAN RX bytes:204 acl:0 sco:0 events:27 errors:0 TX bytes:599 acl:0 sco:0 commands:26 errors:0 [root@localhost root]#
Pro párování bluetooth zařízení je třeba nastavit párovací heslo (např. 4321) v souboru:
[root@localhost /]# cat /etc/bluetooth/pin 4321 [root@localhost /]#
Následuje editace konfiguračního souboru pro hcid daemona /etc/bluetooth/hcid.conf, který v mém případě vypadá nálsedovně:
[root@localhost /]# cat /etc/bluetooth/hcid.conf options { autoinit yes; security auto; pairing multi; # pin_helper /usr/bin/bluepin; pin_helper /usr/local/bin/bluez_pin_simple; } device { name "%h-%d"; class 0x100; iscan enable; pscan enable; lm accept,master; lp hold,sniff,park; } [root@localhost /]#
Za zmínku stojí položka pin_helper, která určuje program pro generování párovacího hesla. V případě, že nepředpokládáme zneužití bluetooth zařízení, poslouží skript bluez_pin_simple:
[root@localhost /]# cat /usr/local/bin/bluez_pin_simple #!/bin/bash echo "PIN:4321" [root@localhost /]#
Po nastartování hcid daemona by se mělo podařit spojení, takže:
[root@localhost /]# hcitool scan Scanning ... 00:60:57:91:03:12 6310i - zajicek [root@localhost /]#
kde 00:60:57:91:03:12 je adresa detekovaného zařízení, v tomto případě mobilního telefonu. Pokud znám tuto adresu, mohu se na zařízení dále odkazovat:
root@localhost /]# hcitool info 00:60:57:91:03:12 Requesting information ... BD Address: 00:60:57:91:03:12 Device Name: 6310i - zajicek LMP Version: 1.1 (0x1) LMP Subversion: 0x23b Manufacturer: Nokia Mobile Phones (1) Features: 0xbf 0x28 0x21 0x00 <3-slot packets> <5-slot packets>[root@localhost /]#
Utilita hcitool má celou řadu parametrů, se kterými lze experimentovat a získat zajímvé údaje o bluetooth připojení. Užitečný může být rovněž hcidump, který monitoruje provoz probíhající mezi bluetooth zařízeními. Na zařízení lze rovněž provést l2ping.
[root@localhost /]# l2ping 00:60:57:91:03:12 Ping: 00:60:57:91:03:12 from 00:0D:88:9E:DA:40 (data size 20) ... 0 bytes from 00:60:57:91:03:12 id 200 time 44.28ms 0 bytes from 00:60:57:91:03:12 id 201 time 40.52ms 0 bytes from 00:60:57:91:03:12 id 202 time 31.74ms 0 bytes from 00:60:57:91:03:12 id 203 time 28.56ms 4 sent, 4 received, 0% loss [root@localhost /]#
2 Vytáčené připojení přes T-mobile CZ
Komunikace s přes bluetooth probíhá pomocí sériového rozhraní, které je vytvořeno pomocí utility rfcomm. Ke spojení použijeme následující příkaz:
[zajicek@localhost]$ rfcomm connect rfcomm0 00:60:57:91:03:12 Connected /dev/rfcomm0 to 00:60:57:91:03:12 on channel 1 \n \n[root@localhost root]# cat /etc/ppp/chap-secrets # Secrets for authentication using CHAP # client server secret IP addresses gprs gprs gprs [root@localhost root]# ",1] ); //-->Press CTRL-C for hangupV tomto okamžiku se objeví na display mobilního telefonu žádost o potvrzení připojení. Dalším krokem je inicializace pppd komunikace s poskytovatelem připojení. Vlastní připojení provádím pomocí příkazu:
pppd call gprsPro Parametry spojení jsou nastaveny v souborech:/etc/ppp/chat-gprs a /etc/ppp/peers/gprs, především dle doporučení v [3 ] a [4].
[root@localhost]$ cat /etc/ppp/chat-gprs TIMEOUT 12 ECHO ON ABORT '\nBUSY\r' ABORT '\nERROR\r' ABORT '\nNO ANSWER\r' ABORT '\nNO CARRIER\r' ABORT '\nNO DIALTONE\r' ABORT '\nRINGING\r\n\r\nRINGING\r' '' 'ATE1' OK AT+CGDCONT=1,"IP"," internet.t-mobile.cz" OK ATD*99***1# CONNECT \d\c [root@localhost]$a
[root@localhost]$ cat /etc/ppp/peers/gprs debug connect "chat -f /etc/ppp/chat-gprs -r /dev/console" noauth usepeerdns /dev/rfcomm0 115200 115200 local nocrtscts defaultroute noipdefault [root@localhost]$T-mobile využívá pro spojení Challenge Handshake Authentication Protocol — (CHAP), takže pro úspěšné připojení je navíc třeba soubor:
[root@localhost root]# cat /etc/ppp/chap-secrets # Secrets for authentication using CHAP # client server secret IP addresses gprs gprs gprs [root@localhost root]#Dále je třeba správně nastavit DNS podle informací T-mobile (pozn. LS).A to je celé a funguje to.
References
- [1]
- cijoml@volny.cz:, Jak na Bluetooth pod Linuxem,
http://www.root.cz/clanek.php4?id=1646 - [2]
- kai.hanninen@hut.fi:, Connecting your Linux box with Nokia 6310i using Bluetooth,
http://www.hut.fi/u/kehannin/bluetooth.html - [3]
- Přibyl, P.: T-Mobile GPRS — Mini-HowTo a první dojmy,
http://www.root.cz/clanek.php4?id=1956 - [4]
- Hankins, G.: Nokia 6310i and Bluetooth with Linux using T-mobile,
http://www.twoguys.org/~gregh/nokia-6310i.html - [5]
- MaxK: Linux BlueZ Howto Bluetooth,
http://bluez.sourceforge.net/howto/