jb-x86: Enabling touchpad as a mouse in generic/x86

3,592 views
Skip to first unread message

Ron M

unread,
Feb 10, 2013, 6:09:37 PM2/10/13
to andro...@googlegroups.com
I have a feeling this is a trivial one, but I don't have enough experience with the idc files:

I am trying to run jb-x86 on a Dell E6420 laptop, which has no touchscreen, but does have a touchpad.
ics-x86 ran great on it without any modifications (e.g, the asus-laptop target), but jb-x86 has the following annoying behavior:
1. Touchpad is not used as a mouse - but rather as a touch device. For example, if I swipe my finger on the launcher it will move screens
2. The upper mouse buttons  do not work. Only the lower ones do. So does the trackball.

I think I set all relevant kernel params, so it is probably not a kernel config issue,and I tried to modify GenericTouch.idc as follows:
- setting  touch.deviceType   to touchPad -   didn't help
- setting touch.deviceType to default resulted in the system getting stuck on  "A N D R O I D".

From a quick look I saw in other projects that this can be resolved by setting a config in  framework/base/services/java/com/android/server/input/InputManagerService.java for deciding laptopmode from tabletmode - 
but I'm almost sure there is a much simpler solution.

Any Ideas? 

Thanks,
Ron

Chih-Wei Huang

unread,
Feb 10, 2013, 9:45:55 PM2/10/13
to andro...@googlegroups.com
If you change to use ics-x86 kernel in jb-x86,
does it work normal?

2013/2/11 Ron M <ron...@gmail.com>:
--
Chih-Wei
Android-x86 project
http://www.android-x86.org

JPT

unread,
Feb 11, 2013, 7:48:22 AM2/11/13
to andro...@googlegroups.com
I get this behavior for my Touchpad with thinkpad ics builds, not for jb, or other ics builds.
(I like it, because I may use the touchpad for scrolling and the mouse for clicking. Would be great though if the stick (the one in the keyboard) worked for emergency fallback when no mouse is attached.)

I believe it's because of the idc files. But I wasn't able to change the behavoir yet (did not try hard)
For examples have a look into the config for synaptic touchpad in the thinkpad device and compare to wacom or mouse config.

Ron M

unread,
Feb 11, 2013, 8:21:09 AM2/11/13
to andro...@googlegroups.com

It doesn't work with ics-x86 or with the Android-IA kernel either.
I am pretty sure it's userspace configuration issue and not kernel.

--
You received this message because you are subscribed to the Google Groups "Android-x86" group.
To unsubscribe from this group and stop receiving emails from it, send an email to android-x86...@googlegroups.com.
To post to this group, send email to andro...@googlegroups.com.
Visit this group at http://groups.google.com/group/android-x86?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


dscm

unread,
Feb 11, 2013, 2:44:04 PM2/11/13
to Android-x86
FWIW:

got a chance to try it today on my wife's older laptop....

HP G60T

was running our latest build(from liveusb) and the touchpad on the
laptop controlled the mouse on the screen exactly as it does in
windows
on this laptop...

On Feb 11, 8:21 am, Ron M <ron...@gmail.com> wrote:
> It doesn't work with ics-x86 or with the Android-IA kernel either.
> I am pretty sure it's userspace configuration issue and not kernel.
>

Ron M

unread,
Feb 11, 2013, 4:03:31 PM2/11/13
to andro...@googlegroups.com
I found that bastard:
CONFIG_MOUSE_PS2_ALPS should be disabled.

If you run into a similiar problem, try to check the output of
"dmesg | grep input".
If you see (when an external mouse is not connected of course) a
message such as the following message:
"input: PS/2 Generic Mouse as
/devices/platform/i8042/serio1/input/input4" , indicating that a PS/2
device has been discovered - you are good to go.

If you see something else, such as:
"input: AlpsPS/2 ALPS DualPoint TouchPad as
/devices/platform/i8042/serio1/input/input5 " - there goes your
problem.

We will need to work hard to support a generic target with all those
different manufacturers.

-Ron Munitz
Message has been deleted

dscm

unread,
Feb 11, 2013, 4:42:57 PM2/11/13
to Android-x86
so the "newer" laptops use a different protocol from the older PS2
stuff??

and cause issues???

http://www.ubuntu.com/certification/catalog/component/input:10236-TOUCH/

and disabling CONFIG_MOUSE_PS2_ALPS may eliminate 75% of the older
laptops...

so much for a universal build.....LOL

Ron M

unread,
Feb 11, 2013, 4:59:04 PM2/11/13
to andro...@googlegroups.com
in ics-x86 it was set only for ideapad, that's how I figured out I
must have missed some kernel config.

fuzzy7k

unread,
Feb 12, 2013, 11:44:03 AM2/12/13
to andro...@googlegroups.com
Disabling the driver is probably the lame way to go. This was done back in froyo or gingerbread days for the synaptics touchpads. The reason you are having problems is probably the same, the driver reports the device as a touchpad, and Android does not know how to interpret that.

Having a proper idc file should solve the problem. The settings below should make the device act as a mouse. I noticed a bug in jb though, it expects clicks to come from tapping the pad. If you use a button, tracking get temporarily disabled.

# Basic Parameters
touch.deviceType = pointer
touch.gestureMode = pointer

# Touch Size
touch.touchSize.calibration = default

# Tool Size
touch.toolSize.calibration = default

# Pressure
touch.pressure.calibration = default

# Size
touch.size.calibration = default

# Orientation
touch.orientation.calibration = none
touch.orientationAware = 1
Message has been deleted

Chih-Wei Huang

unread,
Feb 13, 2013, 1:58:55 AM2/13/13
to andro...@googlegroups.com
Please create another thread for a new discussion.

To answer this question, ;& means pass through
the next case. It's intentional, not a bug.

2013/2/13 tabletsx86 <rbg.tab...@gmail.com>:
>>noticed a bug in jb
>
> is or is not this also a bug in jb......???
>
>
>
>
> in init.sh for x86 product
>
>
>
>
> case statement for init_hal_gralloc
>
>
>
>
> init_uvesafb
> ;& <------------operator termination ?????
>
>
>
>
> am familiar with starting a background process but thought a case
> operator had to be terminated with
>
>
>
>
> ;; <-------------case operator terminator......
>
>
>
>
> been too long.....so am not sure???

fuzzy7k

unread,
Feb 13, 2013, 8:01:42 AM2/13/13
to andro...@googlegroups.com
Yeah, I'm sorry. It's also a bug in ics.


On Tuesday, February 12, 2013 2:46:57 PM UTC-5, tabletsx86 wrote:
>noticed a bug in jb




is or is not this also a bug in jb......???




  in init.sh for x86 product




       case statement for init_hal_gralloc




               init_uvesafb
               ;&      <------------operator termination ?????




am familiar with starting a background process but thought a case
operator had to be terminated with




               ;;        <-------------case operator terminator......




been too long.....so am not sure???

> > On Mon, Feb 11, 2013 at 9:44 PM, dscm <rbg.hp...@gmail.com <javascript:>>
> > >> > email to android-x86...@googlegroups.com <javascript:>.
> > >> > To post to this group, send email to andro...@googlegroups.com<javascript:>.
>
> > >> > Visit this group athttp://groups.google.com/group/android-x86?hl=en.
> > >> > For more options, visithttps://groups.google.com/groups/opt_out.
>
> > > --
> > > You received this message because you are subscribed to the Google
> > Groups "Android-x86" group.
> > > To unsubscribe from this group and stop receiving emails from it, send
> > an email to android-x86...@googlegroups.com <javascript:>.
> > > To post to this group, send email to andro...@googlegroups.com<javascript:>.
Message has been deleted
Message has been deleted

Greg McGee

unread,
Mar 31, 2013, 7:12:14 PM3/31/13
to andro...@googlegroups.com
what, exactly, IS "my HP laptop?

the previous posts covered what to look for and how...

A lot of newer machines actually have USB touchpads etc.
(even some 5 year old machinesl, my X300 Thinkpad falls into that camp)

On Sunday, March 31, 2013 7:50:30 AM UTC-5, Amir Rizvi wrote:
Hi any one can explain this in simple steps how to enable the touchpad in android x86 for my hp laptop. I can not figure how to enable it. Thanks
 

Amir Rizvi

unread,
Apr 5, 2013, 7:21:03 AM4/5/13
to andro...@googlegroups.com
Hi Thanks for the reply it is HP nc6400 and I am using android x86 for thinkpad it works fine except that i have to attach a usb mouse to it.
Thanks in advance

Greg McGee

unread,
Apr 6, 2013, 3:09:39 AM4/6/13
to andro...@googlegroups.com
Booting into Linux via a current std Live CD/DVD distro should provide info on exactly what touchpad hardware you have, the correct drivers etc.
Most touchpads use the Synaptics driver. (I was under the impression they all use it, even Alps etc)

Mageia has a some very nice GUI based system management/info tools, but usually dmesg tells all.

Having it actually installed makes managing Android a lot easier as well IMHO.
Most linux distros can be installed and quite usable on an 8G partition, as long as you aren't trying to say ...build Android.

My old Lenovo X200 is my Linux  "devel box" for Android as well as usual host.
(8GB ram and a hybrid 750GB drive and it gets along surprisingly well)

As far as the idc files, android noob as well, but Google is usually my friend.

Amir Rizvi

unread,
Apr 6, 2013, 10:01:11 AM4/6/13
to andro...@googlegroups.com
I am not an expert  and was just looking if some one can explain      CONFIG_MOUSE_PS2_ALPS should be disabled. As this may help with the touch pad.
Reply all
Reply to author
Forward
0 new messages