[libhid-discuss] Opening Microchip Mouse In a Circle Demo in ubuntu

amruth amruth_pv at yahoo.com
Thu Aug 7 15:21:28 UTC 2008


Hi
Kim
Try to enable usb debug messages. You should do something like this
echo "1" > /sys/modules/usbcore/paramaters/usbfs_snoop.
You can use dmesg to get the output.
It will show what parmeters are being sent. You should be able to debug easily. Check whether that params ar correct.

Thanks
Amruth p.v


--- On Thu, 8/7/08, Kim Chuan Lim <lim.kim.chuan at gmail.com> wrote:

> From: Kim Chuan Lim <lim.kim.chuan at gmail.com>
> Subject: [libhid-discuss] Opening Microchip Mouse In a Circle Demo in ubuntu
> To: libhid-discuss at lists.alioth.debian.org
> Date: Thursday, August 7, 2008, 3:37 AM
> sorry for cross posting..
> 
> Hi ya,
> 
> I'm using kubuntu with linux kernel version 2.6.24-19.
> 
> I'm not sure what is the correct way of reading and
> writing from the
> device. The following is some output from test_libhid.c
> 
> device identification of HIDInterface 004/006[0]:
>  dev_handle:    0x0804b350
>  device:        0x08057258
>  location:      004/006
>  manufacturer:  Microchip Technology Inc.
>  product:       Mouse In a Circle Demo
> dump tree....
>  TRACE: hid_reset_parser(): resetting the HID parser for
> USB device
> 004/006[0]...
>  TRACE: hid_dump_tree(): iterating the parse tree for USB
> device 004/006[0]...
> parse tree of HIDInterface 004/006[0]:
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x80
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  path: 0xffff0001.0x00000000; type: 0x90
>  TRACE: hid_reset_parser(): resetting the HID parser for
> USB device
> 004/006[0]...
>  TRACE: hid_get_input_report(): looking up report ID...
>  TRACE: hid_prepare_parse_path(): preparing search path of
> depth 2
> for parse tree of USB device 004/006[0]...
>  TRACE: hid_prepare_parse_path(): search path prepared for
> parse tree
> of USB device 004/006[0].
>  NOTICE: hid_find_object(): found requested item.
>  TRACE: hid_get_input_report(): retrieving report ID 0x00
> (length:
> 64) from USB device 004/006[0]...
> WARNING: hid_get_input_report(): failed to retrieve report
> from USB
> device 004/006[0]:error sending control message: Broken
> pipe.
> hid_get_input_report failed with return code 20
> 
> Can someone tell me what is the correct information to
> retrieve report?
> 
> The following is some system information.
> dmesg
> [102780.879169] usb 4-1: new full speed USB device using
> uhci_hcd and address 6
> [102780.892127] usb 4-1: configuration #1 chosen from 1
> choice
> [102780.906887] hiddev96hidraw1: USB HID v1.11 Device
> [Microchip
> Technology Inc. Mouse In a Circle Demo] on
> usb-0000:00:1d.1-1
> 
> sudo lsusb -d 04d8:003f -vvv
> 
> Bus 004 Device 006: ID 04d8:003f Microchip Technology, Inc.
> Device Descriptor:
>  bLength                18
>  bDescriptorType         1
>  bcdUSB               1.10
>  bDeviceClass            0 (Defined at Interface level)
>  bDeviceSubClass         0
>  bDeviceProtocol         0
>  bMaxPacketSize0         8
>  idVendor           0x04d8 Microchip Technology, Inc.
>  idProduct          0x003f
>  bcdDevice            0.02
>  iManufacturer           1 Microchip Technology Inc.
>  iProduct                2 Mouse In a Circle Demo
>  iSerial                 0
>  bNumConfigurations      1
>  Configuration Descriptor:
>    bLength                 9
>    bDescriptorType         2
>    wTotalLength           41
>    bNumInterfaces          1
>    bConfigurationValue     1
>    iConfiguration          0
>    bmAttributes         0xc0
>      Self Powered
>    MaxPower              100mA
>    Interface Descriptor:
>      bLength                 9
>      bDescriptorType         4
>      bInterfaceNumber        0
>      bAlternateSetting       0
>      bNumEndpoints           2
>      bInterfaceClass         3 Human Interface Device
>      bInterfaceSubClass      0 No Subclass
>      bInterfaceProtocol      0 None
>      iInterface              0
>        HID Device Descriptor:
>          bLength                 9
>          bDescriptorType        33
>          bcdHID               1.11
>          bCountryCode            0 Not supported
>          bNumDescriptors         1
>          bDescriptorType        34 Report
>          wDescriptorLength      28
>          Report Descriptor: (length is 28)
>            Item(Global): Usage Page, data= [ 0xff 0xff ]
> 65535
>                            (null)
>            Item(Local ): Usage, data= [ 0x01 ] 1
>                            (null)
>            Item(Main  ): Collection, data= [ 0x01 ] 1
>                            Application
>            Item(Local ): Usage Minimum, data= [ 0x01 ] 1
>                            (null)
>            Item(Local ): Usage Maximum, data= [ 0x40 ] 64
>                            (null)
>            Item(Global): Logical Minimum, data= [ 0x00 ] 0
>            Item(Global): Logical Maximum, data= [ 0xff ]
> 255
>            Item(Global): Report Size, data= [ 0x08 ] 8
>            Item(Global): Report Count, data= [ 0x40 ] 64
>            Item(Main  ): Input, data= [ 0x02 ] 2
>                            Data Variable Absolute No_Wrap
> Linear
>                            Preferred_State No_Null_Position
> Non_Volatile Bitfield
>            Item(Local ): Usage Minimum, data= [ 0x01 ] 1
>                            (null)
>            Item(Local ): Usage Maximum, data= [ 0x40 ] 64
>                            (null)
>            Item(Main  ): Output, data= [ 0x02 ] 2
>                            Data Variable Absolute No_Wrap
> Linear
>                            Preferred_State No_Null_Position
> Non_Volatile Bitfield
>            Item(Main  ): End Collection, data=none
>      Endpoint Descriptor:
>        bLength                 7
>        bDescriptorType         5
>        bEndpointAddress     0x81  EP 1 IN
>        bmAttributes            3
>          Transfer Type            Interrupt
>          Synch Type               None
>          Usage Type               Data
>        wMaxPacketSize     0x0040  1x 64 bytes
>        bInterval              10
>      Endpoint Descriptor:
>        bLength                 7
>        bDescriptorType         5
>        bEndpointAddress     0x01  EP 1 OUT
>        bmAttributes            3
>          Transfer Type            Interrupt
>          Synch Type               None
>          Usage Type               Data
>        wMaxPacketSize     0x0040  1x 64 bytes
>        bInterval              10
> Device Status:     0x0001
>  Self Powered
> 
> Hope you guys can help me.
> 
> Regards,
> Kim Chuan.
> 
> _______________________________________________
> libhid-discuss mailing list
> libhid-discuss at lists.alioth.debian.org
> http://lists.alioth.debian.org/mailman/listinfo/libhid-discuss


      




More information about the libhid-discuss mailing list