Tuesday, May 30, 2006

Bluetooth di Fedora Core 3

Sedikit tentang bluetooth
Bluetooth (http://www.bluetooth.com) adalah suatu standar spesifikasi yang mendefinisikan bagaimana telepon bergerak, komputer dan personal digital assistant (PDA) dapat dengan mudah terinterkoneksi satu dengan lainnya dengan koneksi tanpa kabel.
Sebuah perangkat bluetooth membutuhkan suatu chip tranceiver, yang masing-masing memiliki alamat fisik sepanjang 48 bit. Transceiver akan melakukan pengiriman dan penerimaan data/suara pada band frekuensi ISM (Industrial, Science, Medical) 2.4 GHz.
Asal muasal ide ini diprakarsai oleh Ericsson pada tahun 1994, yang melihat ketidak-efisiensian dalam komunikasi antara handphone dengan PDA.
Karena dipandang baik, tahun 1998, antara Ericsson, IBM, Nokia, dan Toshiba, membentuk Bluetooth Special Interest Group (SIG).
Nama Bluetooth sebenarnya diambil dari nama raja Viking, Harald Blaatand (Bluetooth) II, yang berhasil menyatukan Denmark dan Norwegia, juga dengan "tanpa kabel" :).

Bluetooth di Linux
Untuk dapat mendukung bluetooth, kernel GNU/Linux harus juga mengenal protokol bluetooth.
Ada beberapa module/driver protokol bluetooth yang dapat kita pasangkan untuk kernel GNU/Linux, antara lain :
  • OpenBT (http://developer.axis.com/software/bluetooth/),
  • BlueZ (http://bluez.sourceforge.net/),
  • BlueDrekar (http://www.alphaWorks.ibm.com/tech/bluedrekar).
Pada distribusi kernel GNU/Linux mulai versi 2.4.6, sudah ada driver protokol BlueZ, demikian juga untuk proyek Fedora Core yang saya gunakan. Untuk dapat mengontrol perangkat bluetooth, kita harus memasang beberapa paket software bluez lain:
# rpm -qa | grep bluez
bluez-hcidump-1.11-1
bluez-utils-2.10-2
bluez-libs-2.10-2
bluez-pin-0.23-3
bluez-bluefw-1.0-6

Berikutnya, Anda dapat memeriksa apakah perangkat bluetooth yang terpasang pada port USB sudah dikenal kernel GNU/Linux atau belum, dengan menggunakan perintah berikut (loginlah sebagai root):
# lsmod | grep bluetooth

contoh hasilnya adalah:
# lsmod | grep bluetooth
bluetooth 46917 7 rfcomm,l2cap,hci_usb

Tugas kernel untuk menyediakan kebutuhan driver dan protokol bluetooth sudah cukup, selanjutnya kita membutuhkan suatu daemon yang membantu mengontrol pemakaian perangkat bluetooth.
Modul hci_usb adalah perangkat usb bluetooth kita, l2cap adalah protokol lapisan data link, dan rfcomm adalah protokol lapisan middleware dari arsitektur protokol bluetooth.
Sehingga dengan demikian keseluruhan lapisan inti protokol bluetooth sudah terpenuhi. Pada beberapa distro lain, nama modul mungkin tetap bluez, bukan bluetooth seperti di atas.

Pada FC3 sudah tersedia script di /etc/init.d/bluetooth, yang akan menjalankan paling tidak dua daemon, yaitu
  • hcid (Bluetooth Host Controller Interface Daemon)
  • sdpd (memungkinkan perangkat bluetooth untuk terkoneksi dengan perangkat bluetooth lain).
Untuk mengetahui alamat bluetooth device:
hciconfig -a

Memanfaatkan Modem Bluetooth pada ponsel
Untuk meminta layanan DUN ini, kita harus mengatur parameter hcid yang tersimpan di /etc/bluetooth/hcid.conf.
  • security auto;
    • maksudnya, pin untuk koneksi akan otomatis berdasar pin lokal di /etc/bluetooth/pin. Buat dengan:
    • # echo “12345” > /etc/bluetooth/pin
  • security user;
  • pin_helper /usr/bin/bluez-pin;
    • jika Anda ingin agar pemakai selalu memasukkan pin ketika ada konfirmasi otentikasi
Menemukan layanan DUN
  • Aktifkan layanan bluetooth di ponsel Anda
  • Pada console, ketikkan: (*#2820#)
# sdptool browse # sdptool search DUN
  • Cobalah melakukan ping dengan protokol l2cap :
# l2ping alm_bluetooth_ponsel
  • selanjutnya kita akan membuat koneksi untuk protokol rfcomm :
Mencoba DUN
# minicom -s
<enter><enter>
<pilih menu serial port setup>
<tekan a>
<ubah serial device manjadi >
<enter>
<enter>
<pilih menu exit>
<ada proses inisialisasi modem>
AT S7=45 S0=0 L1 V1 X4 &c1 E1 Q0
OK
ATDTno_telp_yg_ingin_dicall
<contoh: atdt021238xxx>
<jika telp yg dituju berdering berarti modem ok>
<tekan ax lalu jawab yes>

edit file /etc/wvdial.conf, dan tambahkan contoh definisi koneksi PPP berikut
[Modem0]
Modem = /dev/rfcomm0
Baud = 57600
SetVolume = 0
Dial Command = ATDT
Init1 = ATZ
Init3 = ATM0
FlowControl = CRTSCTS

[Dialer IM3]
Username = gprs
Password = im3
Phone = *99#
Stupid Mode = 1
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","www.indosat-m3.net","",0,0
Inherits = Modem0

Mencoba DUN
  • Coba lakukan dialup:
# wvdial "IM3" –config=/etc/wvdial.conf
  • Jika sudah tersambung, pada ponsel Anda, icon GPRS akan aktif. Selanjutnya, selamat menikmati Internet
  • Anda dapat memutus koneksi dengan cara menghentikan wvdial. Misal, pada console dimana wvdial aktif, silahkan tekan CTRL-C.
  • lakukan release rfcomm dengan cara :
# rfcomm release

bemused
bemused merupakan program yang memberikan layanan kontrol sederhana terhadap xmms melalui ponsel. Silahkan mengunjungi: http://bemused.sourceforge.net
  • Download bemused Symbian60, dan install ke ponsel Anda.
  • Download bemused server for Linux
  • Ekstrak bemusedlinuxserver1.73.tar.gz
tar xzvf bemusedlinuxserver-1_73.tar.gz
  • Konfigurasi besumed dari file bemused.conf
xmmsdir=xmms channel=2 mp3dir=/mnt/windows/mp3 autostartxmms=1
  • Copy file bemused.conf ke /etc
  • Buat rfcomm2:
rfcomm bind 2 00:0E:6D:FB:48:8A 1
  • Jalankan bemusedlinuxserver

OBEX di gnome
Untuk penerapan OBEX di gnome secara umum sangat mudah untuk diterapkan.
Aplikasi :
  • gnome-obex-server dan gnome-bluetooth-manager

gnokii
Gnokii merupakan driver modem/fax untuk perangkat ponsel. gnokii sejak awal dirancang untuk perangkat Nokia
  • Seri 6100 (6110/5110), seri 7110 (7110/6210) , dan seri 6510 (6310/6510).
Mendukung ponsel yang menerima perintah AT.
  • Nokia 7110/6210/6250/6310(i)/6510/8210/9210/7650/3650,
  • Siemens S25/SL45i/C55/M55/S55,
  • Ericsson T39, SonyEricsson T68i,
  • Bosch 908/909
  • Motorola Timeport P7389i and C350.
Ada dua aplikasi yang memberikan peran yang berbeda:
  • gnokiid: membuat suatu modem virtual untuk ponsel Nokia portable. Akan dibuat file /dev/gnokii secara otomatis oleh mgnokiidev ketika gnokiid dijalankan. Dengan file tersebut kita dapat mengkonfigurasi PPP untuk dialup dengan memanfaatkan ponsel.
  • gnokii / xgnokii. xgnokii merupakan user interface untuk gnokii yang memberikan fasilitas untuk sms, contact dan calendar
# rpm -qa | grep gnokii
gnokii-0.6.4-1.1.fc3.rf
gnokii-gui-0.6.4-1.1.fc3.rf
gnokii-devel-0.6.4-1.1.fc3.rf
  • Setelah instalasi, install gnapplet.sis ke ponsel Anda yang telah disediakan di /usr/share/doc/gnokii-0.6.4/
  • Buat file /etc/gnokiirc, yang berisi:
[global]
port = 00:0E:6D:FB:48:8A # bth addr ponsel

rfcomm_channel = 13 # channel dari gnapplet
model = series60 # model S60
connection = bluetooth
serial_baudrate = 19200

[gnokiid]
bindir = /usr/sbin
  • program xgnokii akan muncul pada menu FootGnome > Accessories > Gnokii Mobile Manager
  • sebelum menjalankan program xgnokii, jalankan dulu gnapplet pada ponsel Anda, kemudian sebelum 30 detik waktu tunggu dari gnapplet habis, segeralah jalankan xgnokii.

3 comments:

Anonymous said...

Hai.. saya christin..
Saya menggunakan fedoracore 5
Saya pikir gak jauh beda dengan fedoracore 3.
Saya mau menanyakan beberapa hal tentang services bluetooth pada fedoracore.
Saya telah sukses menginstal FC 5 dilaptop saya. Dan beberapa minggu yang lalu saya telah sukses pula transfer file antara hp dan PC dengan menggunakan bluetooth.
Namun kemaren saya ada mengedit HCID.CONF dengan text editor agar hp saya bisa menjadi modem untuk terkoneksi internet.
Tapi malah tambah parah. Saya tidak bisa transfer file lagi dari hp ke laptop tetapi dari laptop ke hp kok bisa.
Saya minta tolong kasi tau saya langkah-langkah untuk menggunakan transfer file dan layanan DUN tersebut secara rinci..
Saya mohon dengan sangat hormat

Budi Susanto said...

Saya menggunakan HCID.conf default, hanya beberapa saja yang saya ubah, salah satunya adalah PIN:

options {
autoinit yes;

security auto;

pairing multi;

passkey "12345";
}

device {
name "%h-%d";

class 0x120104;

iscan enable; pscan enable;

lm accept;

lp rswitch,hold,sniff,park;
}

Sedangkan untuk wvdial, hmm...di artikel saya itu masih bisa digunakan untuk cara setupnya. Dan di GNOME sendiri untuk melakukan pertukaran file dengan OBEX sangat mudah sekali. Dari komputer ke periferal bluetooth lain cukup klik kanan file yang akan dikirim, lalu Send To, lalu pilih nama piranti dan Send. Untuk menerima file dari piranti lain, saya menggunakan gnome-obex-server.

Anonymous said...

Terimakasih buat solusi dari anda.
Bahkan saya telah mengembalikan lagi susunan HCID conf itu ke defaultnya tapi malah tidak merubah apapun.
Tetap tidak bisa terjadi transfer file antara hp ke laptop.

sepertinya saya akan sering berkonsultasi dengan anda karena saya sedang mengerjakan TA.
Saya sudah membaca buku manual FC 5, dan saya sudah mempraktekkannya tapi tetap ada beberapa yang gagal.

Saya sudah mencoba mengakses sdptool browse dan memang tertampil beberapa service-service name seperti: OBEX OBJECT PUSH, OBEX FILE TRANSFER, DIAL UP NETWORKING, NOKIA PC SUITE, COM1, VOICE GATEWAY, AUDIO GATEWAY, SYNCML CLIENT, SIM ACCESS..
informasi itu menandakan bahwa layanan tersebut dapat digunakan.
Hanya saja, apa-apa saja perintah yang diperlukan untuk mengaksesnya.

Terus saya sudah mencoba minicom-s:
serial port setup- serial device diubah menjadi apa? terus kok gak terjadi proses inisialisasi modem?
wah saya benar-benar bingung..

ya, terus apakah hanya hp-hp tertentu saja yang bisa mengakses paket gnokii dan At dommand.
Saya menggunakan hp nokia 6230

baiklah, saya akan menunggu jawaban anda. Terimakasih sekali kalau anda telah membantu saya.
Maafkan juga, saya masih amatir menggunakan linux.