Bluetooth ja gprs

Johdanto

Itse olen kokeillut bluetooth + gprs -yhteyttä Debian Woodyssa halvimmalla mahdollisella sovittimella (n. 50 euroa) ja Ericssonin T68i puhelimella. Ohjeet ovat tässä vaiheessa puutteelliset ja vain suuntaa antavat ja niissä saattaa olla jopa virheitä, mutta uskoisin niistä kuitenkin olevan jo nyt hyötyä niille, jotka haluvat vaihtaa modeemiyhteyden bluetooth + gprs yhteyteen.

Ohjelmien asennus

Tarvittavat paketit

Itse asensin Bluez-paketeista Debianiin vain bluez-utils ja libbluetooth1 -ohjelmat. Käänsin myös uuden 2.4.20 kernelin usb ja bluetooth -tuella.

Näin minä sen tein

Otin koneesta, jolla aioin käyttää bluetoothia, kiintolevyn toiseen koneeseen, jossa on kiinteä nettiyhteys. Asensin levylle Debian Woodyn ja hain uusimman vakaan kernelin linux-2.4.20.tar.gz sivun http://www.kernel.org/ linkeistä. Sitten hain kerneliin bluetooth-päivityksen patch-2.4.20-mh5.gz sivulta http://www.holtmann.org/linux/kernel/. Sitten käänsin kernelin toiselle koneelle optimoiduksi (siis koneelle, jossa tulen bluetoothia käyttämään) usb- ja bluetooth-tuella.

Seuraavassa kääntämäni kernelin konfigurointitiedoston bluetooth- ja usb-sektiot:

#
# USB support
#
CONFIG_USB=y
# CONFIG_USB_DEBUG is not set
#
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
# CONFIG_USB_BANDWIDTH is not set
CONFIG_USB_LONG_TIMEOUT=y
#
# USB Host Controller Drivers
#
# CONFIG_USB_EHCI_HCD is not set
CONFIG_USB_UHCI_ALT=y
# CONFIG_USB_OHCI is not set
#
# Bluetooth support
#
CONFIG_BLUEZ=m
CONFIG_BLUEZ_L2CAP=m
# CONFIG_BLUEZ_SCO is not set
CONFIG_BLUEZ_RFCOMM=m
CONFIG_BLUEZ_RFCOMM_TTY=y
# CONFIG_BLUEZ_BNEP is not set
#
# Bluetooth device drivers
#
CONFIG_BLUEZ_HCIUSB=m
CONFIG_BLUEZ_USB_ZERO_PACKET=y
# CONFIG_BLUEZ_HCIUART is not set
# CONFIG_BLUEZ_HCIVHCI is not set

Lisäksi hyvin tärkeä valinta kernelin käännössä on:

CONFIG_PPP_ASYNC=m
Bluetooth-ohjelmien asennus

Tarvittavat ohjelmat löytyvät sivulta http://bluez.sourceforge.net/download/download.html sekä lähdekoodina että rpm- tai deb-paketteina.

Itse olin lisännyt Debianissa /etc/apt/sources.list-tiedostoon rivit

deb http://bluez.sourceforge.net/download/debian/woody/ ./
deb-src http://bluez.sourceforge.net/download/debian/woody/ ./

Sitten katsoin käskyllä apt-cache search bluez*, mitä ajan tasalla olevia bluetooth-paketteja on saatavilla. Seuraavaksi asensin käskyllä apt-get install bluez-utils tarvittavat paketit.

Skripti yhteyden muodostamiseen

Lisäksi asensin sivulta http://kotinetti.suomi.net/mcfrisk/linux_gprs.html#id2428855 yhteys-skriptit gprs, gprs-connect-chat ja gprs-disconnect-chat.

Tiedostojen muokkaus DNA-yhteydelle sopiviksi

Seuraavat tiedostot kaipaavat muokkausta (muutokset tehty):

Yhteyden testaus

Moduulit

Kirjoita konsolissa superuserina (su) lsmod, nin näet ladatut moduulit:

l2cap                  17408   1  (autoclean)
bluez                  35048   1  (autoclean) [l2cap]
usbcore                76992   1 

Koska tarvittavia bluetooth-ajureita ei tässä tapauksessa ollut ladattu, niin ne pitää ladata käsin:

# modprobe hci_usb
# modprobe usb-uhci
Bluetooth-ohjelman käynnistys

BlueZ käynnistetään kirjoittamalla: /etc/init.d/bluez-utils start. Nyt pitäisi ruudulle ilmestyä teksti: Starting bluez-utils: hcid. Ohjelma lopetetaan käskyllä /etc/init.d/bluez-utils stop

Sovittimen testaus

Kokeile seuraavaksi, että bluetooth-sovitin toimii kirjoittamalla: hciconfig. Näytölle pitäisi tulla seuraavanlaista tekstiä:

# hciconfig 
hci0:   Type: USB 
        BD Address: 00:08:1B:00:1B:E7 ACL MTU: 192:8  SCO MTU: 64:8
        UP RUNNING PSCAN ISCAN 
        RX bytes:0 acl:0 sco:0 events:0 errors:0
        TX bytes:0 acl:0 sco:0 commands:0 errors:0
Scan

Seuraavaksi skannataan yhteys puhelimen ja sovittimen välille kirjoittamalla hcitool scan (puhelin pitää olla haettavissa!):

# hcitool scan
Scanning ...
        00:80:37:55:B3:07     T68i 
Bind

Seuraavaksi sidotaan yhteys puhelimen ja sovittimen välille:

# rfcomm bind /dev/rfcomm0 00:80:37:55:B3:07
Yhteyden muodostaminen

Sitten yriettään muodostaa yhteys gprs-ohjelmalla: pppd call gprs

# pppd call gprs
Press CTRL-C to close the connection at any stage!
defining PDP context...
~AT
OK
ATE1
OK
AT+CGDCONT=1,"IP","internet"
OK
waiting for connect...
ATD*99***1#
CONNECT
Connected.
If the following ppp negotiations fail,
try restarting the phone.
Serial connection established.
using channel 10
Using interface ppp0
# jne. jos yhteys ei katkennut...
Vaihtoehtoisia ohjelmia

Debianin mukana tulee valmiina helppokäyttöinen ohjelma, pon. Myös kppp on hyvä ohjelma yhteyden muodostamiseen.

Bluetooth-yhteyden käyttö

Jos tarvittavat moduulit on ladattu /etc/modules.conf-tiedostossa (niitä ei enää tarvitse ladata erikseen käsin), niin ainoastaan seuraavat vaiheet tarvitaan yhteyden muodostamiseen:

# /etc/init.d/bluez-utils start
        Starting bluez-utils: hcid
# hcitool scan
Scanning ...
        00:80:37:55:B3:07     T68i 
# rfcomm bind /dev/rfcomm0 00:80:37:55:B3:07 (tämän tilalle oman sovittimesi osoite)
# pppd call gprs
Press CTRL-C to close the connection at any stage!

Muiden asennuskokemuksia

Yksityiskohtainen seloteko Bluetooth + GPRS -yhdistelmän asennuksesta Debianiin löytyy linkistä http://www.hut.fi/u/kehannin/bluetooth/bluetooth.html. Sivulla http://kotinetti.suomi.net/mcfrisk/linux_gprs.html on vielä sitäkin yksityiskohtaisempi ohje asennuksesta (gprs + Bluetooth, IrDA, sarjakaapeli).

Päivitetty viimeksi: 11.1.2005