LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices

Reply
 
Search this Thread
Old 03-11-2010, 09:14 PM   #1
mradtke
LQ Newbie
 
Registered: Mar 2010
Posts: 4

Rep: Reputation: 1
Touchscreen on Fujitsu Lifebook B series Can't be Calibrated


Hello,

I am trying to use this old notebook as a poor man's netbook. I installed Slackware 13 on it and find that the touchscreen uses the Xorg evdev driver. It starts up with both acceleration and incorrect calibration. Xinput can be used to successfully remove the acceleration. However, using xinput to set the calibration does nothing to the behavior, although the settings do seem to get registered.

After bringing up X:

fujitsu:/home/mradtke xinput list 2
"LBPS/2 Fujitsu Lifebook TouchScreen" id=2 [XExtensionPointer]
Type is TOUCHPAD
Num_buttons is 5
Num_axes is 2
Mode is Absolute
Motion_buffer is 256
Axis 0 :
Min_value is 0
Max_value is 1024
Resolution is 10000
Axis 1 :
Min_value is 0
Max_value is 1024
Resolution is 10000

fujitsu:/home/mradtke xinput list-props 2
Device 'LBPS/2 Fujitsu Lifebook TouchScreen':
Device Enabled (98): 1
Evdev Reopen Attempts (231): 10
Evdev Axis Inversion (232): 0, 0
Evdev Axis Calibration (233):
Evdev Axes Swap (234): 0
Evdev Middle Button Emulation (235): 2
Evdev Middle Button Timeout (236): 50
Evdev Wheel Emulation (237): 0
Evdev Wheel Emulation Axes (238): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (239): 10
Evdev Wheel Emulation Timeout (240): 200
Evdev Wheel Emulation Button (241): 4
Evdev Drag Lock Buttons (242): 0

I can set the calibration:

fujitsu:/home/mradtke xinput set-int-prop 2 233 32 10 100 10 100

Nothing changes in the way the touchscreen works. However, xinput shows the changed settings:

fujitsu:/home/mradtke xinput list-props 2
Device 'LBPS/2 Fujitsu Lifebook TouchScreen':
Device Enabled (98): 1
Evdev Reopen Attempts (231): 10
Evdev Axis Inversion (232): 0, 0
Evdev Axis Calibration (233): 10, 100, 10, 100
Evdev Axes Swap (234): 0
Evdev Middle Button Emulation (235): 2
Evdev Middle Button Timeout (236): 50
Evdev Wheel Emulation (237): 0
Evdev Wheel Emulation Axes (238): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (239): 10
Evdev Wheel Emulation Timeout (240): 200
Evdev Wheel Emulation Button (241): 4
Evdev Drag Lock Buttons (242): 0

In addition to the calibration not working, no button events seem to be generated or reported by xinput.

I did a lot of searching for a solution and see that many people use evtouch (http://www.conan.de/touchscreen/lifebook-2.6.html) for their Lifebooks. However, none of the binaries seem to work with the Xorg build that Slackware uses (ABI version mismatch) and I have no idea of how to fix that. I am open to recompiling Xorg to use evtouch, but I don't know if that will work and I'll need some help locating and installing the Xorg sources that were used in building Slackware 13. They don't seem to be part of the distribution.

Any suggestion?

Thanks,
Mike
 
Old 05-18-2010, 10:18 PM   #2
mradtke
LQ Newbie
 
Registered: Mar 2010
Posts: 4

Original Poster
Rep: Reputation: 1
Hello,

I have finally figured it out for myself.

I determined that, at least with Slackware 13, the evdev driver just wasn't going to work. The only driver folks seem to have success with is evtouch, which you can see from my earlier post, I couldn't get to work because of the version of Xorg shipped with Slackware 13.

The Xorg server is version 1.6.3. I found a version of evtouch patched for this level. The source can be found at:

https://launchpad.net/ubuntu/lucid/+.../0.8.8-2build1

The files to get are:

xf86-input-evtouch_0.8.8.orig.tar.gz Source
xf86-input-evtouch_0.8.8-2build1.debian.tar.gz Patches etc.

As a normal user untar the source and patch structure. Move the patches to the source directory and apply patches 01,02,03, and 05. That should result in a source compatible with Xorg 1.6.3.

Run ./configure with options of your choice including --enable-evcalibrate.

Then run make. I chose not to use make install, but as root I copied .libs/evtouch_drv.so just built into /usr/lib/xorg/modules/input. I changed the ownership an permissions to match the other drivers found there.

Slackware uses hal to build dynamic entries in the Xorg.conf file. As root, I built the /etc/hal/fdi/policy/10-x11-input.fdi file:


<?xml version="1.0" encoding="UTF-8"?> <!-- -*- SGML -*- -->
<!--
Pointer inputs for the LBPS/2 Fujitsu Lifebook Touchscreen.
Modify this file for other touchscreens or different calibration
values.
-->
<deviceinfo version="0.2">
<device>
<match key="info.product" contains="LBPS/2 Fujitsu Lifebook TouchScreen">
<merge key="input.x11_driver" type="string">evtouch</merge>
<merge key="input.x11_options.ReportingMode" type="string">Raw</merge>
<merge key="input.x11_options.MinX" type="string">80</merge>
<merge key="input.x11_options.MinY" type="string">88</merge>
<merge key="input.x11_options.MaxX" type="string">945</merge>
<merge key="input.x11_options.MaxY" type="string">980</merge>
<merge key="input.x11_options.MoveLimit" type="string">5</merge>
<merge key="input.x11_options.SendCoreEvents" type="string">true</merge>
</match>
</device>
</deviceinfo>


Reboot and bring up X. The touchscreen should now work, but will need calibration.

I found that the simplest way to calibrate the touchscreen was with the supplied calibration program. As root in the directory where the evtouch source was compiled run ./calibrate.sh.

I had two failures doing this. First, I was missing a font. I located the font and installed it.

Second, it failed with an error on the path to empty_cursor.xbm. The easiest solution is to build a symbolic link from where empty_cursor.xbm is expected to be found to where it actually is in the current directory.

Run /calibrate.sh again and X should come up. The stylus location is displayed on the screen. Run the stylus along each screen edge and record an appropriate value for X max and min and Y max and min. There should be no need to run the calibration program again.

Enter the recorded values in the /etc/hal/fdi/policy/10-x11-input.fdi file, reboot and verify the calibration.

Thanks,
Mike
 
1 members found this post helpful.
  


Reply

Tags
touchscreen


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Touchscreen Drivers - Toughbook CF-19 w/Red Hat 5.3 (Fujitsu USB Touchscreen) bsheridan Linux - Laptop and Netbook 0 11-17-2009 10:54 AM
need help slack 12.2 and lifebook p1120 touchscreen dockpunk Slackware 0 06-08-2009 10:59 AM
old fujitsu lifebook notebook to server thebloggu Linux - Laptop and Netbook 2 03-15-2008 04:53 PM
Fujitsu Lifebook A1010, won't boot from CDs Raduprv Linux - Hardware 0 06-22-2006 06:33 PM
multimedia keys with Fujitsu Siemens C Series Lifebook stunix Linux - Laptop and Netbook 0 11-05-2003 02:10 PM


All times are GMT -5. The time now is 11:12 AM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration