Hi,
Thanks Mark. Actually, bpaddock, I know the #define is working fine because if I change the value, the polling interval is responding. Results:
#define FS_HID_GENERIC_INTERRUPT_OUT_INTERVAL (0x08U)
#define FS_HID_GENERIC_INTERRUPT_IN_INTERVAL (0x08U)
Gives a polling of 62 packets/second -> 16ms
#define FS_HID_GENERIC_INTERRUPT_OUT_INTERVAL (0x04U)
#define FS_HID_GENERIC_INTERRUPT_IN_INTERVAL (0x04U)
Gives a polling of 125 packets/second -> 8ms
#define FS_HID_GENERIC_INTERRUPT_OUT_INTERVAL (0x02U)
#define FS_HID_GENERIC_INTERRUPT_IN_INTERVAL (0x02U)
Gives a polling of 250 packets/second -> 4ms
#define FS_HID_GENERIC_INTERRUPT_OUT_INTERVAL (0x01U)
#define FS_HID_GENERIC_INTERRUPT_IN_INTERVAL (0x01U)
Gives a polling of 500 packets/second -> 2ms
So, mjbcswitzerland, it doesn't seem an issue with the speed of my software (I'm using HIDSharp with C#). Actually, to make sure this wasn't a software issue, I've placed a packet counter in USB_DeviceHidGenericCallback function, which is incremented by 1 every time a kUSB_DeviceHidEventRecvResponse is received. Then, I reset this packet counter once per second in the main loop. This packet counter is sent as data into the HID data buffer, and my program reads it back, and I'm getting the same 500 packets per second.
Watching the sequence, the next logical step was decreasing the FS_HID_GENERIC_INTERRUPT_IN_INTERVAL to 0, but I'm still getting 500 packets per second.
Any other ideas?
Thank you!