Hello guys, just wanted to share how setup bluetooth under my slackware 13.37.
The objective of this post is to connect a device via bluetooth, a phone or broadband modem, to connect to the internet.
It's a little bit techy but it gets the job done.I will try to make it easy on you guys.
You might also refer to http://slackwiki.org/Bluetooth as it is complete.
<note important>I'm on IBM Thinkpad R61i,
Slackware 13.37,
Kernel 2.6.37.</note>
To summarize what I did,
Install bluez subsystem.
It handles all bluetooth communication to the kernel) - http://www.bluez.org/download/
http://www.kernel.org/pub/linux/bluetooth/bluez-4.96.tar.gz
For OBEX connectivity:
http://www.kernel.org/pub/linux/bluetooth/obexd-0.42.tar.gz
For Bluetooth data dump and protocol analysis:
http://www.kernel.org/pub/linux/bluetooth/bluez-hcidump-2.1.tar.gz
Create bluetooth ON/OFF switch
Since my internal bluetooth device manufacturer is IBM, the switch can be located in /proc/acpi/ibm/ Depending on your hardware, you can find your bluetooth switch in /proc/acpi/ Copy this file to /usr/bin and make it executable chmod +x /usr/bin/blu
- blu
#!/bin/bash cat /proc/acpi/ibm/bluetooth | awk '{ print $2 }' | while read line; do if [ $line == "enabled" ]; then echo disable > /proc/acpi/ibm/bluetooth else echo enable > /proc/acpi/ibm/bluetooth fi break done
Get a PIN Helper
For any bluetooth connection, you will need to have a pin helper agent to complete a pairing. Old distribution of bluez includes a utility passkey_agent. However the new one does not include one. So we will need to use either
bluez-gnome
http://www.kernel.org/pub/linux/bluetooth/bluez-gnome-1.8.tar.gz
or kdebluetooth
http://sourceforge.net/projects/kde-bluetooth/files/kdebluetooth4/
I'm using KDE so I chose kdebluetooth. To run it, in konsole, type
kdebluetooth4 &
Make sure the Agent is registered with dbus. A bluetooth tray icon will appear at the taskbar.
Connecting a modem via bluetooth
First, you need to bring up the internal bluetooth device by typing
hciconfig
Your output should be like this. The hci0 should be up
If not, you need to bring it up. Check your blu switched too in case it is turned off.
hciconfig hci0 up
Scan for bluetooth devices, type
hcitool scan
A list of your bluetooth devices will show up. Take note of your MAC Address of your modem device / phone.
Next, search for DUN (Dialup Networking) capabilities of the device.
sdptool search DUN
The output should be something like this.
Take note of the channel, which in this case is 1. Next step is to bind the phone modem to rfcomm via bluetooth.
rfcomm bind 0 11:22:33:44:55:66 1
Note the syntax is, rfcomm bind <dev> <bdaddr> [channel] . The dev is 0 for /dev/rfcomm0, bdaddr is your phone's MAC and channel is 1, the DUN channel from the sdptool command.
Your bluetooth modem is now binded to /dev/rfcomm0. You can use your favorite dialer such as kppp or wvdial to connect to your network carrier.
Thanks. I hope this helps.
[tag:rfcomm wvdial hciconfig hcitool sdptool maxis broadband kdebluetooth4 bluez bluez-gnome slackware thinkpad]