-
Notifications
You must be signed in to change notification settings - Fork 117
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
Feature Request - absolute mouse #30
Comments
Dear @jrsmile ,
There we need to replace the relative mouse by an absolute positioned. Here is an example for this report map: https://forums.obdev.at/viewtopic.php?t=2559 |
i have seen a map here: HERE unfortunately i know to little to modify the code the correct way. |
hi, https://github.com/asterics/AsTeRICS/blob/master/CIMs/HID_actuator/Mouse_Keyboard_Joystick/Descriptors.c |
@ChrisVeigl , @jrsmile THX for the suggestions, based on this I will implement an additional report with an absolute mouse. |
thank you very much, looking forward to it. |
Ah, sounds nice! Regarding the serial device: Pairing with multiple devices: |
In the branch "absoluteMouse", there is a basic implementation of an absolute mouse report. Could you please test it and report back? |
Is there any progress change. |
I have a branch with the absolute mouse descriptor for testing. |
@benjaminaigner @zuozhehao thanks for the absolute mouse branch/progress and any help needed on test or code i will try to support this issue.
|
Dear all, Still, I try my best to support you and see what we can do about the absolute mouse. Current status: I wanted to try my "real" absolute mouse (touchscreen) on iOS for @zuozhehao , but iPads do not accept USB accessory with 100mA current. Unfortunately I have no USB-C OTG cable available to test it on Android. I will keep you updated, today I can spare some time for further testing. |
OK, I tested following absolute HID descriptors: https://www.codeproject.com/Articles/1001891/A-USB-HID-Keyboard-Mouse-Touchscreen-emulator-with Variant 0: works on Debian, but not on iOS / Android https://www.schoeldgen.de/avr/ (USB Interface for Tektronix 4957 tablet using V-USB) Next try: remove all other reports except the absolute mouse, maybe this helps for iOS. |
@benjaminaigner thanks for the update, |
@benjaminaigner I have tried replacing the "touch_device=1" HID Descriptor from codeproject into this block : HID Descriptor Mouse Absolute but it did not work for abs move on Android (8.0 and 9.0) tablets and iOS. Could you tell me how did you replace the HID Descriptor in your code so I can follow-up tests ? Regards. |
Dear @xcarcelle , for testing, I replaced following parts accordingly (in master branch): esp32_mouse_keyboard/main/esp_hidd_prf_api.c Line 135 in ffc6d08
change the bytestuffing for the mouse report here (some HID descriptors require more than 5 Bytes; change HID_MOUSE_IN_RPT_LEN accordingly)
Place the HID report map here: esp32_mouse_keyboard/main/hid_device_le_prf.c Line 145 in ffc6d08
Please be careful to place the report ID in any report map to be tested: 0x85, 0x03, // Report Id (3)
For testing, I placed this source into the main file:
Yesterday night, I tried my 13" touchscreen with Android, connected via USB. |
Dear @benjaminaigner ,
|
@benjaminaigner : I was wondering if you had more tests with master or absolute branch to test the different HID Descriptors. I want to test different descriptors with different devices but I want to be sure to replicate your methodology to push significant results. Cheers. |
Dear @xcarcelle Regarding your question with your test:
I had still no time until now to extract the HID descriptor of my USB-Touchscreen, which works on Android & Linux (can't be tested on iOS because the Lightning to USB adapter does not provide sufficient current). |
@zuozhehao : have you been able to do some tests on your side with android/ios ? |
Dear @benjaminaigner I guess the workload is crazy w/ the current Covid situation and remote session of classes, good luck ! |
Dear @xcarcelle , I've uploaded the raw dump from USBlyzer, which needs re-formating into a C-array. |
At least I found the time to put into a C-array... |
This is the corresponding dump of HID data:
As this seems to be a multitouch display (1B for button + 4B for X/Y repeat 10x times), the HID report map Sry for the format of this file, quick & dirty copy'n'paste... |
Following problems with this HID report map: I've tried to strip down this report map to following result, but currently not functioning on Android (if anybody can spot the error, I would be really happy):
I've used this output function, now HID_MOUSE_IN_RPT_LEN is 10B.
|
@benjaminaigner thanks a lot for all these informations ! I will give a try on iOS later today and feedback you on this HID Descriptor if I can implement this Descriptor/Report. |
Would it be possible to adapt the mouse hid class to send absolute coordinates like a touchscreen?
The text was updated successfully, but these errors were encountered: