|
Content Cleanup Required |
Introduction
Bluetooth is a widely supported local area communications technology for communications with cellphones, headsets, keyboards, mice, PDAs, and storage devices. See also BluetoothRemoteControl and BluetoothAudio on Ubuntu.
Requirements
For a desktop or laptop without Bluetooth support use a Bluetooth dongle that connects through USB. While adapters can be found all over the web some do not work well with free software systems. The free software foundation recommends users purchase hardware with free drivers. Most cards are not clearly marked. ThinkPenguin.com is an exception and explicitly provide support for Ubuntu and other distributions. Alternatively users can investigate free software compatible bluetooth chipsets and try to locate a card based on this information.
For Dell laptops install the latest drivers from Dell's website in Windows in order for the bluetooth module to work in Linux. (Required for D430 with Gutsy / Hardy and D830 and D630) (http://ubuntuforums.org/showthread.php?t=572335 https://wiki.ubuntu.com/LaptopTestingTeam/DellLatitudeD430#bluetooth)
For Dell laptops with a Dell Wireless 355 Bluetooth card where the card is turned off, reenable the card before installation. Go to a utility in Windows to turn it on before you can reinstall the driver. If you turn the card off in Windows reenable the card so Ubuntu can recognize it.
Installation and Configuration
Ubuntu 10.04 Install via the command line
sudo apt-get install bluez python-gobject python-dbus
python-gobject and python-dbus are needed for the python scripts in /usr/share/doc/bluez/examples/ to work.
cd /usr/share/doc/bluez/examples/
Here are the scripts located. Discover the hciX location of the dongle with:
hcitool dev
Devices: hci0 00:11:95:00:1A:CF
Your Bluetooth device will have a different id.
sudo ./simple-agent hci0 XX:XX:XX:XX:XX:XX
XX:XX:XX:XX:XX:XX is the MAC or BT ADD or BlueTooth Address of the bt device. Press the reset or pair button on your keyboard, simple-agent will ask to specify a pin like 1111, then type that pin on the bt keyboard and your bt keyboard is paired.
sudo ./test-device trusted XX:XX:XX:XX:XX:XX yes
To set the device as trusted
#sudo /etc/init.d/bluetooth restart
To restart the bluetooth daemon.
Check if the device is added:
dmesg|tail
The last lines will list your device.
Ubuntu 11.04 Install via the command line
sudo apt-get install bluez python-gobject python-dbus
python-gobject and python-dbus are needed for the python scripts bluez-simple-agent and bluez-test-device to work.
Discover the hciX location of the dongle with:
hcitool dev
Devices: hci0 00:11:95:00:1A:CF
Your Bluetooth device will have a different id.
sudo bluez-simple-agent hci0 XX:XX:XX:XX:XX:XX
XX:XX:XX:XX:XX:XX is the MAC or BT ADD or BlueTooth Address of the bt device. Press the reset or pair button on your keyboard, simple-agent will ask to specify a pin like 1111, then type that pin on the bt keyboard and your bt keyboard is paired.
sudo bluez-test-device trusted XX:XX:XX:XX:XX:XX yes
To set the device as trusted
sudo /etc/init.d/bluetooth restart
To restart the bluetooth daemon.
Check if the device is added:
dmesg|tail
The last lines will list your device.
Found the method for 10.04 and 11.04 here: http://www.spinics.net/lists/linux-bluetooth/msg13445.html
Additionally, according to this thread (http://www.raspberrypi.org/phpBB3/viewtopic.php?f=27&t=6838), it may be necessary, after authenticating your keyboard, to run
sudo bluez-test-input connect XX:XX:XX:XX:XX:XX
to actually get the Bluetooth device to connect to the computer (I had to do this when using a Logitech Dinovo Edge with a generic Bluetooth adapter). After this, set the device to be trusted as above, and the connection should persist upon reboot.
Older documentation:
Before you begin open up the terminal and type the following:
sudo apt-get install bluez && sudo apt-get install bluez-utils
Restart the bluetooth server to ensure your pc can communicate with a bluetooth device
sudo /etc/init.d/bluetooth restart
By default the BlueTooth notification icon appears, although the service may not. If the service is not running try the service command, otherwise you can now connect.
For jaunty (9:04) and above verify you have a supported adapter connected. When the icon appears, right click and configure your preferences. Devices should auto connect to your PC where you configure your security options.
To configure mail for your phone, install the gnome-bluetooth package so the system finds it in the accessories menu. Send a file by right clicking the file and selecting Send-to. To automate, select System --> Preferences --> Sessions. Add a Startup program. For example you can name it, "Bluetooth File Transfer" and in the Command box, enter "gnome-obex-server". Click OK.
Manual Discovery
Open a terminal window and install the required packages with their dependencies:
sudo apt-get install bluez-utils
Connect your Bluetooth device and restart the Bluetooth services:
sudo /etc/init.d/bluez-utils restart
Verify your Bluetooth device is detected along with the appropriate modules. View the lsusb (in case of usb device) output: lsusb output:
Device 005: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Review the output of hcitool dev for all your system's Bluetooth devices.
hcitool dev output:
Devices: hci0 00:11:95:00:1A:CF
Your Bluetooth device will have a different id.
- If the id is all zeros, restart the bluez-utils service and retry.
Setup Devices
Find Device Addresses
Locate the device address, make the device discoverable (a "Connect" button for keyboards and mice or check the manual) and search for the device by the following:
sudo hidd --search (If that command doesn't work, try the following:) hcitool scan
Each device's address has the aa:bb:cc:dd:ee:ff format. Hint: If no devices are shown for Edgy Eft (6.10), try the following:
sudo hciconfig hci0 inqmode 0
See bug #70718. If this helps, you may add the hciconfig command (without "sudo") to your /etc/rc.local file for a permanent workaround.
Connect Devices for Current Session Only
For a temporary connection, use the address of the device 'aa:bb:cc:dd:ee:ff'
sudo hidd --connect aa:bb:cc:dd:ee:ff
You can now connect.
For a "Can't create HID control channel: Connection refused" error, the discovery period timed out. Try again but enter the command more quickly.
Connect Devices at Startup
To connect automatically, edit the configuration file:
sudo cp /etc/default/bluetooth /etc/default/bluetooth_backup sudo nano /etc/default/bluetooth
Locate line:
HIDD_ENABLED=0
Change it to:
HIDD_ENABLED=1
Look in the same file for a line close to:
HIDD_OPTIONS="--master --server"
Leave the "--master" command or remove it, it depends on the device. If you have problems with "--master", remove it or vice versa.
Add additional "--connect" arguments for the device you want to connect to at startup:
HIDD_OPTIONS="--connect aa:bb:cc:dd:ee:ff --connect aa:bb:cc:dd:ee:ff --connect aa:bb:cc:dd:ee:ff --server"
Save and add HIDP to /etc/modules:
echo hidp | sudo tee -a /etc/modules
Your Bluetooth devices should now connect at startup.
Using Devices as Modems
Refer to page BluetoothDialup
Using audio devices
Refer to page BluetoothAudio
For Bluetooth Headsets specifically refer to BluetoothHeadset
Troubleshooting
"obex://[xx:xx:xx:xx:xx:xx]" is not a valid location.
If you receive this error in Gutsy enter the following:
sudo apt-get install gnome-vfs-obexftp
Although this gives "Couldn't display "obex://[xx:xx:xx:xx:xx:xx]"." for some. In this case try:
sudo hciconfig hci0 auth
See this forum thread for information.
hcitool scan/dev/inq '''Connection timed out''' Error
Reset the adapter:
sudo hciconfig hci0 reset
The hcitool options can now connect and if often required despite an automatic connection setup.
Comments
bluez-gnome
Reboot after you install bluez packages even if your dongle is recognized after installation. 2/8/2009 bluez-gnome bug:
Forum page: http://ubuntuforums.org/showthread.php?p=6438656#post6438656