USB logitech bluetooth doesn't work

Bug #444420 reported by Sergi Sales on 2009-10-06
96
This bug affects 20 people
Affects Status Importance Assigned to Milestone
udev (Ubuntu)
Undecided
Martin Pitt
Lucid
Undecided
Unassigned
Maverick
Undecided
Martin Pitt

Bug Description

Binary package hint: udev

The USB is a HID device that needs to run the hid2hci to activate the bluetooth functionality.
~$ lsusb
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 018: ID 046d:c709 Logitech, Inc. BT Mini-Receiver (HCI mode)
Bus 004 Device 017: ID 046d:c70c Logitech, Inc. BT Mini-Receiver (HID proxy mode)
Bus 004 Device 016: ID 046d:c70b Logitech, Inc. BT Mini-Receiver (HID proxy mode)
Bus 004 Device 015: ID 046d:0b02 Logitech, Inc. BT Mini-Receiver (HID proxy mode)

~$ lsb_release -rd
Description: Ubuntu karmic (development branch)
Release: 9.10

~$ apt-cache policy udev
udev:
  Instal·lat: 147~-5
  Candidat: 147~-5
  Taula de versió:
 *** 147~-5 0
        500 http://archive.ubuntu.com karmic/main Packages
        100 /var/lib/dpkg/status

The problem is that the rule for Logitech devices in the file /lib/udev/rules.d/70-hid2hci.rules doesn't work.

I've had to make a very small change: hidraw to hiddev

# Logitech devices (hidraw)
KERNEL=="hiddraw*", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c70[345abce]|c71[34bc]", \
RUN+="hid2hci --method=logitech-hid --devpath=%p"

to

# Logitech devices (hidraw)
KERNEL=="hiddev*", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c70[345abce]|c71[34bc]", \
RUN+="hid2hci --method=logitech-hid --devpath=%p"

lsrg

Please run "apport-collect 444420"

Changed in udev (Ubuntu):
status: New → Incomplete

Architecture: i386
CustomUdevRuleFiles: 10-vboxdrv.rules
DistroRelease: Ubuntu 9.10
MachineType: Dell Inc. OptiPlex GX620
Package: udev 147~-5 [modified: lib/udev/rules.d/70-hid2hci.rules]
PackageArchitecture: i386
ProcCmdLine: BOOT_IMAGE=/vmlinuz-2.6.31-13-generic root=UUID=183bd543-735b-4e87-9be6-3ff35ff805ff ro quiet splash
ProcEnviron:
 SHELL=/bin/bash
 LANG=ca_ES.UTF-8
 LANGUAGE=ca_ES.UTF-8
ProcVersionSignature: Ubuntu 2.6.31-13.44-generic
Uname: Linux 2.6.31-13-generic i686
UserGroups: Domain Users adm admin disk
dmi.bios.date: 11/30/2006
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A11
dmi.board.name: 0FH884
dmi.board.vendor: Dell Inc.
dmi.chassis.type: 3
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvrA11:bd11/30/2006:svnDellInc.:pnOptiPlexGX620:pvr:rvnDellInc.:rn0FH884:rvr:cvnDellInc.:ct3:cvr:
dmi.product.name: OptiPlex GX620
dmi.sys.vendor: Dell Inc.

Changed in udev (Ubuntu):
status: Incomplete → New
tags: added: apport-collected

Architecture: i386
CustomUdevRuleFiles: 10-vboxdrv.rules
DistroRelease: Ubuntu 9.10
MachineType: Dell Inc. OptiPlex GX620
Package: udev 147~-5 [modified: lib/udev/rules.d/70-hid2hci.rules]
PackageArchitecture: i386
ProcCmdLine: BOOT_IMAGE=/vmlinuz-2.6.31-13-generic root=UUID=183bd543-735b-4e87-9be6-3ff35ff805ff ro quiet splash
ProcEnviron:
 SHELL=/bin/bash
 LANG=ca_ES.UTF-8
 LANGUAGE=ca_ES.UTF-8
ProcVersionSignature: Ubuntu 2.6.31-13.44-generic
Uname: Linux 2.6.31-13-generic i686
UserGroups: Domain Users adm admin disk
dmi.bios.date: 11/30/2006
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A11
dmi.board.name: 0FH884
dmi.board.vendor: Dell Inc.
dmi.chassis.type: 3
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvrA11:bd11/30/2006:svnDellInc.:pnOptiPlexGX620:pvr:rvnDellInc.:rn0FH884:rvr:cvnDellInc.:ct3:cvr:
dmi.product.name: OptiPlex GX620
dmi.sys.vendor: Dell Inc.

Sergi Sales (sergi-sales) wrote :

hi all,
the first apport-collect was before plug in the logitech Bluetooth.

Architecture: amd64
DistroRelease: Ubuntu 9.10
MachineType: Gigabyte Technology Co., Ltd. EX58-UD5
NonfreeKernelModules: nvidia
Package: udev 147~-6 [modified: lib/udev/rules.d/70-hid2hci.rules]
PackageArchitecture: amd64
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.31-14-generic root=UUID=ebcd9b28-76c0-45e5-be9d-df53113006ca ro quiet splash
ProcEnviron:
 SHELL=/bin/bash
 LANG=en_HK.UTF-8
ProcVersionSignature: Ubuntu 2.6.31-14.48-generic
Uname: Linux 2.6.31-14-generic x86_64
UserGroups: adm admin cdrom dialout lpadmin plugdev sambashare
dmi.bios.date: 08/06/2009
dmi.bios.vendor: Award Software International, Inc.
dmi.bios.version: F8
dmi.board.name: EX58-UD5
dmi.board.vendor: Gigabyte Technology Co., Ltd.
dmi.chassis.type: 3
dmi.chassis.vendor: Gigabyte Technology Co., Ltd.
dmi.modalias: dmi:bvnAwardSoftwareInternational,Inc.:bvrF8:bd08/06/2009:svnGigabyteTechnologyCo.,Ltd.:pnEX58-UD5:pvr:rvnGigabyteTechnologyCo.,Ltd.:rnEX58-UD5:rvr:cvnGigabyteTechnologyCo.,Ltd.:ct3:cvr:
dmi.product.name: EX58-UD5
dmi.sys.vendor: Gigabyte Technology Co., Ltd.

Mike (tagedieb) wrote : BootDmesg.gz
Mike (tagedieb) wrote : Lspci.txt
Mike (tagedieb) wrote : Lsusb.txt
Mike (tagedieb) wrote : UdevDb.txt
Mike (tagedieb) wrote : UdevLog.txt
z (eye-zak-devel) wrote :

I can confirm this enables bluetooth functionality for me (logitech mx5000 usb bluetooth)

Architecture: i386
DistroRelease: Ubuntu 9.10
InstallationMedia: Ubuntu-Netbook-Remix 9.10 "Karmic Koala" - Release Candidate i386 (20091020.2)
MachineType: ASUSTeK Computer INC. 900
Package: udev 147~-6.1 [modified: lib/udev/rules.d/70-hid2hci.rules]
PackageArchitecture: i386
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.31-14-generic root=UUID=bd4d5ed9-e1be-47ab-af9b-8c96e0e7b963 ro quiet splash
ProcEnviron:
 PATH=(custom, no user)
 LANG=fr_CH.UTF-8
 SHELL=/bin/zsh
ProcVersionSignature: Ubuntu 2.6.31-14.48-generic
Tags: ubuntu-unr
Uname: Linux 2.6.31-14-generic i686
UserGroups:

dmi.bios.date: 03/03/2009
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 1006
dmi.board.asset.tag: To Be Filled By O.E.M.
dmi.board.name: 900
dmi.board.vendor: ASUSTeK Computer INC.
dmi.board.version: x.xx
dmi.chassis.asset.tag: 0x00000000
dmi.chassis.type: 10
dmi.chassis.vendor: ASUSTek Computer INC.
dmi.chassis.version: x.x
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr1006:bd03/03/2009:svnASUSTeKComputerINC.:pn900:pvr0802:rvnASUSTeKComputerINC.:rn900:rvrx.xx:cvnASUSTekComputerINC.:ct10:cvrx.x:
dmi.product.name: 900
dmi.product.version: 0802
dmi.sys.vendor: ASUSTeK Computer INC.

56 comments hidden view all 136 comments
Tobbe (mrwizzard) wrote : Lsusb.txt

The fix mentioned in the first post works for me. I have an MX5000 logitech keyboard/mouse pair.

rossco (ross-jemima) wrote :

Also confirm that making the change to /lib/udev/rules.d/70-hid2hci.rules makes my bluetooth dongle (MX5000) work in Ubuntu 9.10 (Karmic).

Tobbe (mrwizzard) wrote :

Making the changes in /lib/udev/rules.d/70-hid2hci.rules works, I have to unplug an reinsert the usb cable for the bluetooth hub to be detected. I'm using a DiNovo keyboard, mediapad + mouse (MX900). Thou after approximately 24 hours I loose the bluetooth hub and it reverts back to plain "usb hid" simulation. I need to unplug and reinsert the usb cable again for it to be detected again and this buys me another 24 hours of bluetooth.

Martin Pitt (pitti) on 2010-03-24
Changed in udev (Ubuntu):
assignee: nobody → Martin Pitt (pitti)
status: New → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package udev - 151-6

---------------
udev (151-6) lucid; urgency=low

  * Merge some fixes from GIT HEAD:
    - key release quirk for Fujitsu Amilo 1848+u (LP: #530089)
    - key release quirk for Samsung Q210/P210 (LP: #530093)
    - key maps for Acer TravelMate 6593G and Acer Aspire 1640 (LP: #536914)
    - Decrease buffer size when advancing past NUL byte, to fix a buffer
      overflow the buffer if space is tight.
    - udev-acl: Correctly handle ENV{ACL_MANAGE}==0
    - input_id: Fix linking
    - firmware: fix possible segfault when firmware device goes away while
      loading
    - Fix switching Logitech bluetooth adapters into HCI mode. (LP: #444420)
    - cdrom_id: Open non-mounted optical media with O_EXCL. This should
      prevent confusing drives during CD burning sessions.
 -- Martin Pitt <email address hidden> Wed, 24 Mar 2010 18:47:51 +0100

Changed in udev (Ubuntu):
status: Fix Committed → Fix Released

If you are trying to use the Logitech MX900 dock as a bluetooth dongle on 9.10 you can do so by using hid2hci. It isn't in the distribution, but you can get the source from here:
http://bluez.cvs.sourceforge.net/viewvc/*checkout*/bluez/utils/tools/hid2hci.c?revision=1.10
Then you have to get the libusb-dev package, and compile it with this command:
$ gcc -o hid2hci hid2hci.c -lusb
After that you can run it as root from this directory, or add it to your PATH.

Martin Pitt (pitti) wrote :

This fix in udev caused a regression, see bug 550288. Can you please test changing line 14 in /lib/udev/rules.d/70-hid2hci.rules to

KERNEL=="hiddev*|hidraw*", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c70[345abce]|c71[34bc]", \

I. e. replace the first part KERNEL=="hiddev*" with KERNEL=="hiddev*|hidraw*". Does it still work for you?

Changed in udev (Ubuntu Lucid):
status: New → Fix Released
Martin Pitt (pitti) wrote :

The change which originally fixed this was reverted in maverick, thus reopening for maverick.

Changed in udev (Ubuntu Maverick):
status: Fix Released → Incomplete

Hi Martin,
I think I can't try it tonight at home..

On Wed, Jun 9, 2010 at 9:37 AM, Martin Pitt <email address hidden> wrote:
> This fix in udev caused a regression, see bug 550288. Can you please
> test changing line 14 in /lib/udev/rules.d/70-hid2hci.rules to
>
> KERNEL=="hiddev*|hidraw*", ATTRS{idVendor}=="046d",
> ATTRS{idProduct}=="c70[345abce]|c71[34bc]", \
>
> I. e. replace the first part KERNEL=="hiddev*" with
> KERNEL=="hiddev*|hidraw*". Does it still work for you?
>
> ** Also affects: udev (Ubuntu Lucid)
>   Importance: Undecided
>       Status: New
>
> ** Also affects: udev (Ubuntu Maverick)
>   Importance: Undecided
>     Assignee: Martin Pitt (pitti)
>       Status: Fix Released
>
> ** Changed in: udev (Ubuntu Lucid)
>       Status: New => Fix Released
>
> --
> USB logitech bluetooth doesn't work
> https://bugs.launchpad.net/bugs/444420
> You received this bug notification because you are a direct subscriber
> of the bug.
>

Martin Pitt (pitti) wrote :
Changed in udev (Ubuntu Maverick):
status: Incomplete → Fix Committed

I might have the opposite problem: my DiNovo Edge has a bluetooth/hid-dongle (046d:c709). It has a special button to pair the keyboard with the dongle, without the system's bluetooth interfering and in previous versions of ubuntu it was recognized as a USB HID-device, everything worked. One could use the keyboard like any other proprietary wireless keyboard (or a USB-cable keyboard), i.e. plug it into different machines and it just works, especially while booting!

Now it's recognized as a bluetooth device which isn't what I want, because my machine already has bluetooth, which I use for other devices. I don't want to re-pair the keyboard when using it with multiple machines which is why I don't use it with my normal bluetooth device but the included USB dongle.

So: how do I switch back to the old behaviour from karmic? Just apply the patch above in reverse i.e. change to hidraw?

(also, apart from minor inconvenience: the current setup doesn't allow for boot-time keyboard input, like LUKS passwords. The USB dongle is already initialized as a bluetooth device, but of course no interface is available yet to pair it)

slipdipper (elec-one) wrote :

I'm using the original logitech dinovo media deskop. The solution provided (change hidraw to hiddev) did not work for me. Instead i just removed the KERNEL matching and everything works fine now (described here: http://ubuntuforums.org/showthread.php?p=9574808).

So i changed:

KERNEL=="hidraw*", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c70[345abce]|c71[34bc]", \
to
ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c70[345abce]|c71[34bc]", \

slipdipper (elec-one) wrote :
Download full text (10.0 KiB)

Just to be thorough, here are my device attribs (running in hci mode):

udevadm_test: UDEV_LOG=6
udevadm_test: DEVPATH=/devices/pci0000:00/0000:00:0b.0/usb2/2-3/2-3.1
udevadm_test: MAJOR=189
udevadm_test: MINOR=130
udevadm_test: DEVNAME=/dev/bus/usb/002/003
udevadm_test: DEVTYPE=usb_device
udevadm_test: DRIVER=usb
udevadm_test: PRODUCT=46d/c704/2404
udevadm_test: TYPE=0/0/0
udevadm_test: BUSNUM=002
udevadm_test: DEVNUM=003
udevadm_test: ACTION=add
udevadm_test: SUBSYSTEM=usb
udevadm_test: ID_VENDOR=Logitech
udevadm_test: ID_VENDOR_ENC=Logitech
udevadm_test: ID_VENDOR_ID=046d
udevadm_test: ID_MODEL=USB_Receiver
udevadm_test: ID_MODEL_ENC=USB\x20Receiver
udevadm_test: ID_MODEL_ID=c704
udevadm_test: ID_REVISION=2404
udevadm_test: ID_SERIAL=Logitech_USB_Receiver_1BEE72
udevadm_test: ID_SERIAL_SHORT=1BEE72
udevadm_test: ID_BUS=usb
udevadm_test: ID_USB_INTERFACES=:030101:030102:
udevadm_test: DEVLINKS=/dev/char/189:130
udevadm_test: UPOWER_VENDOR=Logitech, Inc.
udevadm_test: run: 'hid2hci --method=logitech-hid --devpath=/devices/pci0000:00/0000:00:0b.0/usb2/2-3/2-3.1'

sudo lsusb -vv

Bus 002 Device 004: ID 046d:c707 Logitech, Inc. Bluetooth wireless hub
Device Descriptor:
  bLength 18
  bDescriptorType 1
  bcdUSB 1.10
  bDeviceClass 224 Wireless
  bDeviceSubClass 1 Radio Frequency
  bDeviceProtocol 1 Bluetooth
  bMaxPacketSize0 64
  idVendor 0x046d Logitech, Inc.
  idProduct 0xc707 Bluetooth wireless hub
  bcdDevice 8.46
  iManufacturer 1 Logitech
  iProduct 2 Logitech Bluetooth wireless hub
  iSerial 3 1BEE72
  bNumConfigurations 1
  Configuration Descriptor:
    bLength 9
    bDescriptorType 2
    wTotalLength 193
    bNumInterfaces 3
    bConfigurationValue 1
    iConfiguration 0
    bmAttributes 0x80
      (Bus Powered)
    MaxPower 100mA
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 0
      bAlternateSetting 0
      bNumEndpoints 3
      bInterfaceClass 224 Wireless
      bInterfaceSubClass 1 Radio Frequency
      bInterfaceProtocol 1 Bluetooth
      iInterface 0
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x81 EP 1 IN
        bmAttributes 3
          Transfer Type Interrupt
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0010 1x 16 bytes
        bInterval 1
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x02 EP 2 OUT
        bmAttributes 2
          Transfer Type Bulk
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0040 1x 64 bytes
        bInterval 1
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndp...

slipdipper (elec-one) on 2010-07-11
Changed in udev (Ubuntu Lucid):
status: Fix Released → Confirmed
Martin Pitt (pitti) wrote :

Please file a new bug using "ubuntu-bug udev", since you have different hardware.

Changed in udev (Ubuntu Maverick):
status: Fix Committed → Fix Released
Christian Reis (kiko) wrote :

Pascal: FWIW, it is still possible to have it run in embedded mode. See http://async.com.br/~kiko/diary.html?date=06.08.2010

Robert Lange (rcl24) wrote :

I have the Logitech Bluetooth dongle and I just upgraded from a working Lucid install to Maverick. Bluetooth broke. I followed slipdipper's advice from comment #114, resulting in the following patch. Now, Bluetooth works for me.

Just why exactly is it necessary to specify the kernel device type? Doesn't that vendor ID + hardware ID pretty much guarantee what device it is?

Robert Lange (rcl24) on 2010-10-11
Changed in udev (Ubuntu Maverick):
status: Fix Released → Incomplete
Martin Pitt (pitti) wrote :

No, with ATTRS you match all parent properties as well, so an entire device chain (see man udev). Robert, this bug was closed a while ago, you weren't the original reporter, and it's already quite long and confusing. Perhaps you can send a new bug with "ubuntu-bug udev", so that the report has your hardware data and we avoid spamming all the other subscribers here?

Changed in udev (Ubuntu Maverick):
status: Incomplete → Fix Released
Robert Lange (rcl24) wrote :

Okay, point taken. For people who have Maverick and stumble across this bug looking for help, I have opened a new Bug #658471 that basically continues this bug and documents the fix that I have found works.

Architecture: i386
CustomUdevRuleFiles: 10-vboxdrv.rules
DistroRelease: LinuxMint 8
InstallationMedia: Linux Mint 8 "Helena" - Release i386 (20091027)
MachineType: Gateway MX8711
NonfreeKernelModules: wl
Package: udev 147~-6
PackageArchitecture: i386
PccardctlIdent:
 Socket 0:
   no product info available
PccardctlStatus:
 Socket 0:
   no card
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.31-14-generic root=UUID=f3518ab7-40e4-4071-a8ea-748f2dbab37b ro quiet splash
ProcEnviron:
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.31-14.48-generic
Uname: Linux 2.6.31-14-generic i686
UserGroups:

dmi.bios.date: 11/28/2006
dmi.bios.vendor: Phoenix Technologies LTD
dmi.bios.version: 72.11
dmi.board.vendor: Gateway
dmi.board.version: 72.11
dmi.chassis.asset.tag: No Asset Tag
dmi.chassis.type: 8
dmi.chassis.vendor: Gateway
dmi.chassis.version: Rev.1
dmi.modalias: dmi:bvnPhoenixTechnologiesLTD:bvr72.11:bd11/28/2006:svnGateway:pnMX8711:pvr3408023R:rvnGateway:rn:rvr72.11:cvnGateway:ct8:cvrRev.1:
dmi.product.name: MX8711
dmi.product.version: 3408023R
dmi.sys.vendor: Gateway

Robert Lange (rcl24) wrote :

Can we set the Lucid target to "Invalid" or "Won't fix" since it seems like there will be no more action on this bug? That way this bug can be closed and retired from people's active bug trackers.

Hello Customer

Go to that cocktail party with this, and be sure to catch people’s attention.
All watches are packed in plain boxes and shipped discretely. They are delivered fast and in excellent condition. In case of some damage, we will reship your order.

*******************************************************
As requested, I just want to verify that I have finally received my package, and I must say it was well worth the wait! Thanks for such a high quality product! I look forward to conducting business with you again in the future.
Give thanks
                     Pierre Rossi
*******************************************************

Click here ---> http://moung.ru

Rolf Leggewie (r0lf) wrote :

lucid has seen the end of its life and is no longer receiving any updates. Marking the lucid task for this ticket as "Won't Fix".

Changed in udev (Ubuntu Lucid):
status: Confirmed → Won't Fix

Hi,
I have a problem related to this bug.
I am using a bluetooth Logitech MX5000 keyboard and MX1000 mouse. I had to replace the bluetooth dongle/receiver and now have a CSR adapter. They claim this receiver can be dual mode HCI/HID.
I would like to use it in HID mode, but have tried quite a few of the solutions here in this thread and others but seem not able to change its mode.
Also, I am on Vivid, and see that this thread is marked as "Won't fix" for Lucid. Do I create another thread?
Here is my lsusb

Displaying first 40 and last 40 comments. View all 136 comments or add a comment.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Bug attachments