Barcode scanners as a new hardware category
submitted by lammi87, 22:08, 22 Ιούνιος 2012
ΘΕΜΑ: new categories of hardware

Hi, this is lammi87

I would like to suggest barcode scanners as a new hardware category. They are really handy when paying bills. I have one which works with free software. I just plug it in to the usb port and star using it right away.

I tried to see the information about my barcode reader with lsusb but it seems that it is not recognized correctly/completely. Here's the output:

lsusb -v

Bus 002 Device 003: ID 0000:0001  
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0000 
  idProduct          0x0001 
  bcdDevice            1.00
  iManufacturer           1 ZEBEX Industries Inc.
  iProduct                2 Barcode Scanner
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           34
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              200mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.01
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      64
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
Device Status:     0x0000
  (Bus Powered)

The vendor and product IDs (VendorID:ProductID) look strange, I can't find a name or vendor for the product in idVendor and idProduct (that is where the wiki tells me to look them for) and it is recognized as a keyboard. What's wrong?

What do you think? Should these be added as a category?


Hi lammi87, it could be interesting to add that category of hardware. I will do it as soon as possible.

It's not easy to recognize the device from the class, subclass and protocol for USB devices, most times those parameters are ffffff (Vendor Specific Class, subclass and protocol), sometimes they are wrong. It is easier for PCI devices..

submitted by tonicucoz, 09:09, 23 Ιούνιος 2012
Hi tonicucoz, thanks for noticing. I'm glad I can help.
submitted by lammi87, 11:47, 23 Ιούνιος 2012

Write below your motivation is a hardware database project. It runs the h-source PHP software, version SVN-387, available under the GNU General Public (GPLv3) License.
JavaScript license information