Author Topic: poll rate for 1.1 ful speed  (Read 4837 times)

ulao

  • Frequent Contributor
  • ****
  • Posts: 172
poll rate for 1.1 ful speed
« on: December 25, 2018, 11:58:40 am »
I have an 8-bit AVR device using LUFA. I'm told- they're all limited to the "Low" (1.5MBit/s) and "Full" (12Mbit/s) speed USB transfer rates.  Though I'm confused on the speeds as the full speed can be 8 - 64 bytes a payload. If I set up a interrupt transfer can I move faster the 8ms a poll?

Jan Axelson

  • Administrator
  • Frequent Contributor
  • *****
  • Posts: 3033
    • Lakeview Research
Re: poll rate for 1.1 ful speed
« Reply #1 on: December 26, 2018, 12:41:31 pm »
Maximum time between polls is set in the endpoint descriptor.

A low-speed interrupt endpoint can request to send up to 8 bytes every 10 ms.

A full-speed interrupt endpoint can request to send up to 64 bytes per frame, or 64 kB/s.

The host may poll at the requested rate or faster.

ulao

  • Frequent Contributor
  • ****
  • Posts: 172
Re: poll rate for 1.1 ful speed
« Reply #2 on: December 27, 2018, 08:39:34 am »
Quote
A low-speed interrupt endpoint can request to send up to 8 bytes every 10 ms.

A full-speed interrupt endpoint can request to send up to 64 bytes per frame, or 64 kB/s.

Does the full-speed also limit to 10ms?
""A full-speed interrupt endpoint can request to send up to 64 bytes per frame, or 64 kB/s every 10 ms. ""

Jan Axelson

  • Administrator
  • Frequent Contributor
  • *****
  • Posts: 3033
    • Lakeview Research
Re: poll rate for 1.1 ful speed
« Reply #3 on: December 27, 2018, 02:48:44 pm »
A full-speed interrupt endpoint can request to send up to 64 bytes per frame, or 64 kB/second.

ulao

  • Frequent Contributor
  • ****
  • Posts: 172
Re: poll rate for 1.1 ful speed
« Reply #4 on: December 27, 2018, 05:23:51 pm »
Final clarification.


If I recall correctly a frame is 1ms long.  I should be able to set up my device as a 1.1 usb at a 1ms poll interval on windows.

but Window may not poll at that rate?

If so will..
Window will force me to poll at 2ms?
Window will force me to poll at 10ms?

Jan Axelson

  • Administrator
  • Frequent Contributor
  • *****
  • Posts: 3033
    • Lakeview Research
Re: poll rate for 1.1 ful speed
« Reply #5 on: December 27, 2018, 08:46:23 pm »
Windows will poll at that rate unless there isn't sufficient available bandwidth, which is unlikely.

ulao

  • Frequent Contributor
  • ****
  • Posts: 172
Re: poll rate for 1.1 ful speed
« Reply #6 on: December 28, 2018, 11:16:11 am »
I'm almost certain a HID (gamepad) poll rate for usb spec 1.1 is defined at 8 ms in the driver. I know there are application that will hack this. As for 2.0 spec, I'm told 2ms is achievable. I can play with it a bit I guess and see what I get.

ulao

  • Frequent Contributor
  • ****
  • Posts: 172
Re: poll rate for 1.1 ful speed
« Reply #7 on: December 31, 2018, 12:36:52 pm »
I just dug this up.

Quote
depending on the version and SP of Windows, the HID polling is a minimum of 8ms no matter what you put into the bInterval field.  Only when there is a game or multimedia app running does it poll near 1ms.  This was supposedly done to reduce jumpy behaviour with mice, but allow "those crazy gamers" (their words) who were hacking the DLLs to achieve the low latency they were after.  After much research and twiddling I gave up on modifying Windows to do the right thing and embedded a tick sound into the client program and voila - problem solved with 12 second write times.  Gates and Co. are idiots.

I think it's a windows thing.