-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cannot work with 16-bit hid descriptor #7
Comments
Hi @threedlife , Mmh I am not quite sure, it is probably linked to the hid_input_report structure's alignment. Have you try to comment the packing pragmas (push/pop) and add manual padding to your structure instead ? I'll try to reproduce this when I could, thanks for the feedback. (EDIT) Relevant links: |
Thanks for quick response. Tried to remove packing pragmas and came to same error. The BLE device received an onDisconnectionComplete event with disconnection reason "CONNECTION_TIMEOUT = 0x08" |
Come to think of it I believe it's the REPORT_SIZE macro in the See |
sorry for late reply as was working on some other projects. I don't think the REPORT_SIZE was the issue as I was already setting size of LOGICAL_MINIMUM / LOGICAL_MAXIMUM to 2 (pls see my initial post). Just noticed that the caused of disconnection is Message Integrity Check (MIC) failure raised by host controller. It appears a problem with mBed OS, see lancaster-university/microbit-dal#61. BTW, I was able to run the same report descriptor with a FreeRTOS device without any problem. I will spend some more time to find out the problem. Were you able to reproduce the same problem? Any thoughts are appreciated. |
Your report descriptor works fine on my android device (and GNU / Linux), I'll have to try it on Windows though. Thanks for the link. |
Hi, I've tried to modified the hid_report_map in HIDGamepadService.cpp to 16-bit version as following.
The motion function was changed to following:
Compilation and flashing on Arduino Nano Ble 33 was successful. On Windows it reported
I googled around and found out that Mbed should support 16-bit HID (https://os.mbed.com/questions/1318/16-bit-values-for-a-joystick/). The original 8-bit version worked perfectly.
What might go wrong here? Thanks.
The text was updated successfully, but these errors were encountered: