Re: USB Barcode Scanner Won't Load

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Greg,

  No, I don't think that is it.  The device is powered via USB, and it
maintains power until I unplug it.  Also, the device works fine in
Windows on the same box, and if you look at the udevmon section the
kernel removes it as a HID device right after udev finishes processing
it, then adds it back as a generic USB device with no drivers.  Here's
an annotated description of the process:

Plug in the device.  Kernel recognizes it:
KERNEL[1289756866.849673] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
KERNEL[1289756866.859563] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
KERNEL[1289756866.859674] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A (hid)
KERNEL[1289756866.872800] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13 (input)
KERNEL[1289756866.872891] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13/event7
(input)
KERNEL[1289756866.872909] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A/hidraw/hidraw3
(hidraw)

All the devices are registered, so UDEV creates the /dev entries...

UDEV [1289756866.873915] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
UDEV [1289756866.874327] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
UDEV [1289756866.874441] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A (hid)
UDEV [1289756866.874724] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A/hidraw/hidraw3
(hidraw)

Something triggers the kernel to unregister the device from the input
layer...

KERNEL[1289756867.166734] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13/event7
(input)
KERNEL[1289756867.216580] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13 (input)
KERNEL[1289756867.216609] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A/hidraw/hidraw3
(hidraw)
KERNEL[1289756867.216703] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A (hid)
KERNEL[1289756867.216741] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
KERNEL[1289756867.216834] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)

UDEV deletes the devices...

UDEV [1289756867.216935] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A/hidraw/hidraw3
(hidraw)
UDEV [1289756867.217063] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/0003:0C2E:0200.000A (hid)
UDEV [1289756867.271298] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13 (input)
UDEV [1289756867.303544] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13/event7
(input)
UDEV [1289756867.303727] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13/event7
(input)
UDEV [1289756867.303820] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13 (input)
UDEV [1289756867.303965] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
UDEV [1289756867.304191] remove
/devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)

The kernel then adds it back as some sort of generic device...

KERNEL[1289756870.808673] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
KERNEL[1289756870.817600] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)

UDEV sees this but doesn't create any /dev entries.

UDEV [1289756870.818662] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
UDEV [1289756870.837532] add
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)

Physically unplugging the device then causes this:

KERNEL[1289919402.423327] remove  
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
KERNEL[1289919402.423414] remove  
/devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)
UDEV  [1289919402.423536] remove  
/devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0 (usb)
UDEV  [1289919402.424162] remove  
/devices/pci0000:00/0000:00:1d.1/usb7/7-1 (usb)


It seems to be something in either the kernel itself or UDEV is telling
the system that this is not a keyboard, so not to treat it as such.  But
grepping for the vendor and device IDs in both the udev and kernel
sources dirs doesn't seem to show why it's getting blacklisted.



On 11/16/2010 10:36 AM, Greg KH wrote:
> On Tue, Nov 16, 2010 at 09:44:49AM -0400, Charles Tassell wrote:
>> Hi Everyone,
>>
>>   I'm trying to get a Metrologic Quantum IS3480 barcode scanner to work
>> with my Linux box.  It's supposed to present as a USB keyboard, but my
>> system (and two other Linux boxes I've tried it on) seem to unregister
>> it as a HID device for some reason I can't quite figure out.  I thought
>> it might be blacklisted, but I did a quick search in hid-ids.h but the
>> vendor ID doesn't seem to be there...  Any ideas?
>>
>>   Here's the dmesg output when I plug it in:
>>
>> usb 7-1: new low speed USB device using uhci_hcd and address 16
>> input: Metrologic Metrologic Scanner as
>> /devices/pci0000:00/0000:00:1d.1/usb7/7-1/7-1:1.0/input/input13
>> generic-usb 0003:0C2E:0200.000A: input,hidraw3: USB HID v1.11 Keyboard
>> [Metrologic Metrologic Scanner] on usb-0000:00:1d.1-1/input0
>> usb 7-1: USB disconnect, address 16
> Your device disconnects itself.  Perhaps you need a new cable for it or
> a better USB hub with more power?  This is an electrical issue, nothing
> the kernel can do about it.
>
> thanks,
>
> greg k-h

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux