radxa / manifests

91 stars 38 forks source link

Rock 5B Android USB Touchscreen maps incorrectly #34

Open Masssssy opened 1 year ago

Masssssy commented 1 year ago

Connecting a USB touchscreen of the following type work somewhat but the axis are swapped/inverted/flipped on Rock 5B.

In potrait mode as an example swiping down will swipe right. It does not matter what screen orientation that is selected. In all 4 orientations the touch is flipped around.

Vendor=2a94 Product=526d Name="G2Touch Multi-Touch by G2TSP"

The touchscreen works fine in normal orientation when connecting a Samsung phone with DeX, running KostaKangs Android on RPi4 and running Ubuntu on Rock 5B. The screen works fine, this issue is specific for the Android released for Rock 5B.

Running the following image Rock5B-Android12-rkr12-Tablet-20221129-gpt.zip

Masssssy commented 1 year ago

Can be solved by adding an .idc file in

/system/usr/idc/Vendor_2a94_Product_526.idc

with the following contents where I believe that setting device.internal to 1 is what actually solved it (deviceType and orientationAware was already set as per dumpsys). I suppose that the HDMI port on Rock 5B is not to consider external from Androids point of view but the touch interface becomes "external" and therefore resolution of the HDMI screen and the touch interface mismatches.

device.internal = 1

touch.deviceType = touchScreen touch.orientationAware = 1

zyx486013 commented 1 year ago

Thank you for sharing this solution, it also works on my Rock 5A.