Tag/tag.png

Content Cleanup Required
This article should be cleaned-up to follow the content standards in the Wiki Guide. More info...

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

(i) 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

(i) 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. IconsPage/example.png

  • hcitool dev output:

      Devices:
            hci0    00:11:95:00:1A:CF

(i) 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.

Info <!> 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"

(i) 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

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


CategoryBluetooth CategoryNetworking

BluetoothSetup (last edited 2013-12-14 00:23:47 by knome)