Opened 14 years ago
Last modified 4 years ago
#7481 new bug
Haiku does not support "touchscreen" - on Eee Slate. (Asus Eee ep121).
Reported by: | Bouncer | Owned by: | mmlr |
---|---|---|---|
Priority: | normal | Milestone: | R1.1 |
Component: | Drivers/Input/HID/USB | Version: | R1/alpha2 |
Keywords: | touchscreen | Cc: | |
Blocked By: | Blocking: | ||
Platform: | x86 |
Description
I am attempting to get Haiku running on Asus's new ep121 computer. It is a tablet device - with a touchscreen replacing the conventional mouse.
Yes - Haiku does run on this machine. But as expected there are a number of problems. I am currently able to run Haiku on this machine by using external usb hid devices.
FIRST PROBLEM : Haiku is not working correctly with the touchscreen device.
The touchscreen device is an 'eGalax PCAP Multitouch' controller. A usb hid device. Haiku's usb hid driver recognizes it as a generic mouse.
Yes - Haiku does respond to a screen touch. But only to position the cursor to the extreme bottom-right corner of the screen.
So - the driver is working (sort of). But haiku is getting some bad input.
I have added debugging statements to the usb_hid driver - and I can clearly see the problem is one of absolute vs relative positioning coordinates.
The device issues 'mouse movement' co-ordinates in the range of 0-32367 for both the X and Y axis. Any touch, almost anywhere on the screen, will result in huge position values. So large in fact that they move the mouse pointer to the far bottom-right corner of the display.
I have also been able to verify that the positioning coordinates reported are in fact proportional to the screen position which was touched.
I am thinking about developing a patch for this myself. It would certainly be fun. But the Input Server is pretty complicated. I would appreciate some advice as to the best approach before I spend a lot of time on this.
Perhaps a 'touchscreen' driver - similar to the way 'touchpad' was set up for the ps/2 drivers ?
Attachments (2)
Change History (10)
comment:1 by , 14 years ago
by , 14 years ago
Extract of debugging trace - when HIDProtocol::AddHandler() is called for tablet.
by , 14 years ago
Attachment: | Syslog.2.x2 added |
---|
Extract of debugging trace - when HIDProtocol::AddHandler() is called for tablet.
comment:2 by , 14 years ago
I have applied the Patch as suggested. Sorry - But it is not working.
I am providing an attachment with an extract of the syslog files. (Ignore the second attachment - duplicate).
The logs show debugging statements of when the HIDProtocol::AddHandler() fcn is called. And - if it proceeds to the TabletDevice - so debugging statements from there as well.
The TabletDevice::AddHandler() fcn seems to get called for 3 different 'HIDReports'. The first two cause the addition of the Driver. The Third does not.
After what appears to be a successfull addition of a driver - no further USB activity is seen from the eGalax device.
I cannot find any evidence that any messages are being received for this device. Though I have attempted to put debugging statements in TabletDevide::Control() - nothing seems to call this fcn. Any further suggestions ?
comment:3 by , 14 years ago
Correction - I went back and reviewed the patch from Ticket #7354. And noticed that I had only applied the 'usb_hid' patch and not the earlier 'tablet' patch. After a long struggle to get the 'tablet' to compile - (I needed to modify the 'HaikuImage' file in the Jam directory) - it finally works.
It does not work perfectly. But at least the screen pointer now tracks the movement of both mouse and finger. No pressure activity though - to simulate a button press though.
comment:4 by , 12 years ago
Ticket #7354 are not for that type of tablet. It's for thouse tablet where you have a pen and connect that to pc like a mouse.
comment:5 by , 12 years ago
Keywords: | touchscreen added |
---|
comment:6 by , 7 years ago
hrev52017 reviewed. We can modify this ticket as an enhancement ticket. I'm tracking this device now through Asus: https://www.asus.com/Tablets/Eee_Slate_EP121
Tickets referenced: #7354 ('usb_hid' and 'tablet' patches)
Some parts of those patches were integrated as of: hrev46015
Can review current state further.
comment:7 by , 6 years ago
Component: | Drivers/Mouse/USB → Drivers/Input/USB-HID |
---|
component -> USB-HID (new)
comment:8 by , 4 years ago
Milestone: | R1 → R1.1 |
---|
See #7354 which is where tablet support is being developed. It should apply for your device as well. If it does we can close this report as duplicate, please test.