When sending control transfers that are a multiple of 64 bytes, add a ZLP if the host requested more bytes than we sent. This avoids timeouts for some hosts, possibly including Windows. See USB 2.0 §5.5.3.
I've tested this for some simple test cases that exhibited the symptoms before, but it could probably use more testing.
When sending control transfers that are a multiple of 64 bytes, add a ZLP if the host requested more bytes than we sent. This avoids timeouts for some hosts, possibly including Windows. See USB 2.0 §5.5.3.
I've tested this for some simple test cases that exhibited the symptoms before, but it could probably use more testing.
Fixes keyboardio/Chrysalis-Firmware-Bundle#40.