This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

LPC2148HID

I need to send more data on lpc214 (USBHID Class). give me for example. How HIDclass can send more data?
I need up to 5 Mbps

Parents
  • The maximum speed of HID is 64 byte/ 1msec USB frame (512kbps) on Full-Speed (FS) bus. It is the limitation of interrupt transfer, on which HID is established. Apply bulk transfer instead.

    It is easy to modify the HID firmware to bulk one, just modify the descriptors. You'll see an example in LPCUSB main_custom.c

    Configuration desc
    - wTotalLength = 0x0020
    Interface desc
    - bInterfaceClass = 0xFF
    - bInterfaceSubClass = 0x00
    - bInterfaceProtocol = 0x00
    HID desc
    - delete all
    Endpoint descs
    - bmAttributes = 0x02 (bulk)
    - wMaxPacketSize = 0x0040
    - bInterval = 0

    LPCUSB
    " from MS WHDC
    www.microsoft.com/.../default.mspx
    Find "Download the Windows Server 2003 SP1 DDK [236 MB ISO file]" link

    New WinUSB device driver from MS has problems on stability and performance. It'll take long time until MS fixes it.

    I don't think it is a good idea to measure USB transfer speed in bps. Instead of UART, USB bus clock is always constant, 12Mbps for FS bus. USB is a bus scheduled in every USB frame (1msec in FS). Then, byte/frame is better unit.

    Tsuneo

Reply
  • The maximum speed of HID is 64 byte/ 1msec USB frame (512kbps) on Full-Speed (FS) bus. It is the limitation of interrupt transfer, on which HID is established. Apply bulk transfer instead.

    It is easy to modify the HID firmware to bulk one, just modify the descriptors. You'll see an example in LPCUSB main_custom.c

    Configuration desc
    - wTotalLength = 0x0020
    Interface desc
    - bInterfaceClass = 0xFF
    - bInterfaceSubClass = 0x00
    - bInterfaceProtocol = 0x00
    HID desc
    - delete all
    Endpoint descs
    - bmAttributes = 0x02 (bulk)
    - wMaxPacketSize = 0x0040
    - bInterval = 0

    LPCUSB
    " from MS WHDC
    www.microsoft.com/.../default.mspx
    Find "Download the Windows Server 2003 SP1 DDK [236 MB ISO file]" link

    New WinUSB device driver from MS has problems on stability and performance. It'll take long time until MS fixes it.

    I don't think it is a good idea to measure USB transfer speed in bps. Instead of UART, USB bus clock is always constant, 12Mbps for FS bus. USB is a bus scheduled in every USB frame (1msec in FS). Then, byte/frame is better unit.

    Tsuneo

Children
No data