Hello.
(first post here but longtime lurker).
A little background. I'm a big fan of rawhid. I used it with 32u4 based boards (such as sparkfun pro micros), and I've switched to teensy LCs. I use them for custom flight sim hardware (Not xplane thou,so I use custom C# code to interface to the sim).
Anyways, Yes, I have noticed a big performance hit, which may or may or may not be rawhid related.
I need to send small packets (64 bytes) every 10-15 ms to the teensy-LC.Since I'm driving needle gauges (with steppers and/or DC motors), and the data comes from the flight sim "real time") I need the stream to be reliable and packets need to be received in order (otherwise the needles jump!!).
What began to happen with windows 10.
First of all, I noticed serial monitor was "lagging" every few second.(even without any actual rawhid comm, just for example try looping an analogRead as first line into setup() ).
I began simple tracing with printf and what I get is this:
basically, average time between packets is 15ms which is fine, but there is a packet loss, for about 700 ms, every 4-4.5 seconds.
A usb debug with message analyzer shows this:
and of course this happens every 4-4.5 seconds...
If I understand correcly, then, every 4 seconds the device is "silently" getting reenumerated in a transparent manner.
any ideas ?