2010-10-18

Linux on a Fujitsu U810, P1620, T1010 - Ubuntu 10.10 Maverick

Last week I upgraded to latest Ubuntu, Maverick 10.10.

Everything seems fine; Ireally suggest anyone of you with a u810 to upgraded asap.

- external monitor: works great

- suspend/resume: works great

- touchscreen: uhm ... the touch driver failed working. As pointed by nerd65536 and mifa (thanks for the fast fix), just with a small modification everything is working again.


So please find here the latest version of the driver !!

Also, following the suggestions from nerd65536, this version fixes the driver problem on suspend/restart, and README instructions are improved.

15 comments:

  1. This is great! I did have some issues installing under gentoo, but it seems to be running now and calibration works like a charm.

    However, there is one thing that has me stumped right now: fujitsu_touchscreen_rotate.py promptly dies ...

    Traceback (most recent call last):
    File "./fujitsu_touchscreen_rotate.py", line 103, in
    sessbus = dbus.SessionBus()
    File "/usr/lib/python2.6/site-packages/dbus/_dbus.py", line 219, in __new__
    mainloop=mainloop)
    File "/usr/lib/python2.6/site-packages/dbus/_dbus.py", line 108, in __new__
    bus = BusConnection.__new__(subclass, bus_type, mainloop=mainloop)
    File "/usr/lib/python2.6/site-packages/dbus/bus.py", line 125, in __new__
    bus = cls._new_for_bus(address_or_type, mainloop=mainloop)
    dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

    Any ideas?

    ReplyDelete
  2. OK, never mind, I needed to run dbus-launch. Now all is well! Many thanks for this great driver.

    ReplyDelete
  3. Do the keyboard lights work in Maverick?

    ReplyDelete
  4. Hi Anonymous,

    yes, keyboard lights work in maverick !!

    ReplyDelete
  5. Good day to all folks. I don't like pasting code on blogs, but it's interesting this "fix" that it mention but no luck on applying it correctly.

    fujitsu@fujitsu-LifeBook-U810:~/Downloads/fujitsu-usb-touchscreen-0.3.8$ ls
    copyright fujitsu_touchscreen_helper.c Makefile
    fujitsu_touchscreen fujitsu_touchscreen_rotate.py README
    fujitsu_touchscreen_calibration.py fujitsu_usb_touchscreen.c
    fujitsu@fujitsu-LifeBook-U810:~/Downloads/fujitsu-usb-touchscreen-0.3.8$ sudo make
    make -C /lib/modules/2.6.35-23-generic/build M=/home/fujitsu/Downloads/fujitsu-usb-touchscreen-0.3.8 modules
    make[1]: Entering directory `/usr/src/linux-headers-2.6.35-23-generic'
    CC [M] /home/fujitsu/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.o
    Building modules, stage 2.
    MODPOST 1 modules
    CC /home/fujitsu/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.mod.o
    LD [M] /home/fujitsu/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.ko
    make[1]: Leaving directory `/usr/src/linux-headers-2.6.35-23-generic'
    gcc -o fujitsu_touchscreen_helper fujitsu_touchscreen_helper.c
    fujitsu@fujitsu-LifeBook-U810:~/Downloads/fujitsu-usb-touchscreen-0.3.8$ sudo make install
    make -C /lib/modules/2.6.35-23-generic/build M=/home/fujitsu/Downloads/fujitsu-usb-touchscreen-0.3.8 modules_install
    make[1]: Entering directory `/usr/src/linux-headers-2.6.35-23-generic'
    INSTALL /home/fujitsu/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.ko
    DEPMOD 2.6.35-23-generic
    make[1]: Leaving directory `/usr/src/linux-headers-2.6.35-23-generic'
    if test -x /sbin/depmod; then /sbin/depmod -a 2.6.35-23-generic; fi
    cp fujitsu_touchscreen_helper /usr/bin
    cp fujitsu_touchscreen_rotate.py /usr/bin
    cp fujitsu_touchscreen_calibration.py /usr/bin
    cp fujitsu_touchscreen /etc/init.d/
    ln -fs ../init.d/fujitsu_touchscreen /etc/rc2.d/S99fujitsu_touchscreen
    ln -fs ../../init.d/fujitsu_touchscreen /etc/pm/sleep.d/99_fujitsu_touchscreen
    chmod +s /usr/bin/fujitsu_touchscreen_helper
    /etc/init.d/fujitsu_touchscreen start
    * Starting loading fujitsu_usb_touchscreen module fujitsu_touchscreen /etc/init.d/fujitsu_touchscreen: 102: /usr/bin/lshal: not found
    Fujitsu touchscreen driver: ERROR [ERR1] - Device /org/freedesktop/Hal/devices/usb_device_430_530_noserial_if0 not found
    [fail]
    if test ! -f /etc/hal/fdi/policy/fujitsu_usb_touchscreen.fdi; then /usr/bin/fujitsu_touchscreen_helper writecalibrate 124 266 3827 3940 ; fi
    fujitsu_usb_touchscreen::error::parameter not available [/sys/module/fujitsu_usb_touchscreen/parameters/touch_minx]
    fujitsu_usb_touchscreen::error::parameter not available [/sys/module/fujitsu_usb_touchscreen/parameters/touch_miny]
    fujitsu_usb_touchscreen::error::parameter not available [/sys/module/fujitsu_usb_touchscreen/parameters/touch_maxx]
    fujitsu_usb_touchscreen::error::parameter not available [/sys/module/fujitsu_usb_touchscreen/parameters/touch_maxy]
    fujitsu_usb_touchscreen::error::cannot create file [/etc/hal/fdi/policy/fujitsu_usb_touchscreen.fdi]
    ERROR: Module fujitsu_usb_touchscreen does not exist in /proc/modules
    fujitsu@fujitsu-LifeBook-U810:~/Downloads/fujitsu-usb-touchscreen-0.3.8$

    So I can't do touchscreen, yes I change BIOS to tablet mode, lights works and rotation work.

    Ubuntu 10.10 updated, upgrated to december 2nd.

    rene

    ReplyDelete
  6. I can't compile under a 2.6.36 kernel, and this uses HAL, which is now deprecated and newer xorg (>1.7) has moved to udev. Is there a new version of this in the works? Pretty please!

    ReplyDelete
  7. i have a p1630 with a clean new 10.10 installation. i seem to have the same error as the post above?

    i downloaded the newest version and it compiled ok but 'make install' returns errors because files are not found.
    what did i wrong? which files should i have installed before?

    thanks for your help!
    andrew


    frank@oulu-MM:~/programs/fujitsu-usb-touchscreen-0.3.8$ sudo make install
    [sudo] password for frank:
    make -C /lib/modules/2.6.35-24-generic-pae/build M=/home/frank/programs/fujitsu-usb-touchscreen-0.3.8 modules_install
    make[1]: Entering directory `/usr/src/linux-headers-2.6.35-24-generic-pae'
    INSTALL /home/frank/programs/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.ko
    DEPMOD 2.6.35-24-generic-pae
    make[1]: Leaving directory `/usr/src/linux-headers-2.6.35-24-generic-pae'
    if test -x /sbin/depmod; then /sbin/depmod -a 2.6.35-24-generic-pae; fi
    cp fujitsu_touchscreen_helper /usr/bin
    cp fujitsu_touchscreen_rotate.py /usr/bin
    cp fujitsu_touchscreen_calibration.py /usr/bin
    cp fujitsu_touchscreen /etc/init.d/
    ln -fs ../init.d/fujitsu_touchscreen /etc/rc2.d/S99fujitsu_touchscreen
    ln -fs ../../init.d/fujitsu_touchscreen /etc/pm/sleep.d/99_fujitsu_touchscreen
    chmod +s /usr/bin/fujitsu_touchscreen_helper
    /etc/init.d/fujitsu_touchscreen start
    * Starting loading fujitsu_usb_touchscreen module fujitsu_touchscreen /etc/init.d/fujitsu_touchscreen: 102: /usr/bin/lshal: not found
    Fujitsu touchscreen driver: ERROR [ERR1] - Device /org/freedesktop/Hal/devices/usb_device_430_530_noserial_if0 not found
    [fail]
    if test ! -f /etc/hal/fdi/policy/fujitsu_usb_touchscreen.fdi; then /usr/bin/fujitsu_touchscreen_helper writecalibrate 124 266 3827 3940 ; fi
    fujitsu_usb_touchscreen::error::parameter not available [/sys/module/fujitsu_usb_touchscreen/parameters/touch_minx]
    fujitsu_usb_touchscreen::error::parameter not available [/sys/module/fujitsu_usb_touchscreen/parameters/touch_miny]
    fujitsu_usb_touchscreen::error::parameter not available [/sys/module/fujitsu_usb_touchscreen/parameters/touch_maxx]
    fujitsu_usb_touchscreen::error::parameter not available [/sys/module/fujitsu_usb_touchscreen/parameters/touch_maxy]
    fujitsu_usb_touchscreen::error::cannot create file [/etc/hal/fdi/policy/fujitsu_usb_touchscreen.fdi]
    ERROR: Module fujitsu_usb_touchscreen does not exist in /proc/modules

    ReplyDelete
  8. When I upgraded from 10.4 to 10.10 on my P1620, I lost touchscreen functionality and had to reinstall drivers as you described. Fortunately my wubi installation crashed and I had to start from scratch (well, I was too tired to work out what the problem was!)

    After installing a clean copy of 10.10, touchscreen worked out of the box! The touchscreen was misaligned but that was easily fixed by installing and running xinput_calibrator.

    https://launchpad.net/~tias/+archive/xinput-calibrator-ppa

    After all the painful installation processes, finally something easy for a change!!

    ReplyDelete
  9. Errors compiling under 2.6.36 kernel (works under 2.6.35):

    /usr/local/src/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c: In function ‘usb_u810_tablet_probe’:
    /usr/local/src/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:326: error: ‘struct input_dev’ has no member named ‘absmin’
    /usr/local/src/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:327: error: ‘struct input_dev’ has no member named ‘absmin’
    /usr/local/src/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:328: error: ‘struct input_dev’ has no member named ‘absmax’
    /usr/local/src/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:329: error: ‘struct input_dev’ has no member named ‘absmax’
    /usr/local/src/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:343: error: ‘struct input_dev’ has no member named ‘absfuzz’
    /usr/local/src/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:344: error: ‘struct input_dev’ has no member named ‘absfuzz’
    m

    Is there a fix for this? Thanks.

    ReplyDelete
  10. I'm also getting the same error:

    /home/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c: In function ‘usb_u810_tablet_probe’:
    /home/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:326:13: error: ‘struct input_dev’ has no member named ‘absmin’
    /home/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:327:13: error: ‘struct input_dev’ has no member named ‘absmin’
    /home/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:328:13: error: ‘struct input_dev’ has no member named ‘absmax’
    /home/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:329:13: error: ‘struct input_dev’ has no member named ‘absmax’
    /home/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:343:11: error: ‘struct input_dev’ has no member named ‘absfuzz’
    /home/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:344:11: error: ‘struct input_dev’ has no member named ‘absfuzz’
    make[2]: *** [/home/Downloads/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.o] Error 1
    make[1]: *** [_module_/home/Downloads/fujitsu-usb-touchscreen-0.3.8] Error 2
    make[1]: Leaving directory `/usr/src/linux-headers-2.6.38-8-generic'
    make: *** [fujitsu_usb_touchscreen.ko] Error 2

    Running:

    Kubuntu Natty
    Kernel 2.6.38
    Fujitsu P1620
    2 GB RAM

    Are there updated drivers for kernels 2.6.36 and later?

    ReplyDelete
  11. I was wondering if someone can help me with these errors...


    metungkp1@metungkp1:~/fujitsu_touchscreen_driver$ cd fujitsu-usb-touchscreen-0.3.8
    metungkp1@metungkp1:~/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8$ make
    make -C /lib/modules/2.6.38-8-generic/build M=/home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8 modules
    make[1]: Entering directory `/usr/src/linux-headers-2.6.38-8-generic'
    CC [M] /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.o
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c: In function ‘usb_u810_tablet_probe’:
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:318:13: error: ‘struct input_dev’ has no member named ‘absmin’
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:319:13: error: ‘struct input_dev’ has no member named ‘absmin’
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:320:13: error: ‘struct input_dev’ has no member named ‘absmax’
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:321:13: error: ‘struct input_dev’ has no member named ‘absmax’
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:335:11: error: ‘struct input_dev’ has no member named ‘absfuzz’
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:336:11: error: ‘struct input_dev’ has no member named ‘absfuzz’
    make[2]: *** [/home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.o] Error 1
    make[1]: *** [_module_/home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8] Error 2
    make[1]: Leaving directory `/usr/src/linux-headers-2.6.38-8-generic'
    make: *** [fujitsu_usb_touchscreen.ko] Error 2
    metungkp1@metungkp1:~/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8$ sudo make install
    [sudo] password for metungkp1:
    Sorry, try again.
    [sudo] password for metungkp1:
    make -C /lib/modules/2.6.38-8-generic/build M=/home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8 modules
    make[1]: Entering directory `/usr/src/linux-headers-2.6.38-8-generic'
    CC [M] /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.o
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c: In function ‘usb_u810_tablet_probe’:
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:318:13: error: ‘struct input_dev’ has no member named ‘absmin’
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:319:13: error: ‘struct input_dev’ has no member named ‘absmin’
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:320:13: error: ‘struct input_dev’ has no member named ‘absmax’
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:321:13: error: ‘struct input_dev’ has no member named ‘absmax’
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:335:11: error: ‘struct input_dev’ has no member named ‘absfuzz’
    /home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.c:336:11: error: ‘struct input_dev’ has no member named ‘absfuzz’
    make[2]: *** [/home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8/fujitsu_usb_touchscreen.o] Error 1
    make[1]: *** [_module_/home/metungkp1/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8] Error 2
    make[1]: Leaving directory `/usr/src/linux-headers-2.6.38-8-generic'
    make: *** [fujitsu_usb_touchscreen.ko] Error 2
    metungkp1@metungkp1:~/fujitsu_touchscreen_driver/fujitsu-usb-touchscreen-0.3.8$

    ReplyDelete
  12. I'm getting the same compile errors on my p1620. My touchscreen seems to work, but buttons on rotation don't seem to work. The screen needs to be calibrated also as I can't get to the edges of the screen. Pressing the screen away from the edges works fine.

    This is on a clean install of Natty 64 bit btw. Just finished installing a few minutes ago and was googling for info on what to do about the touchscreen and came across this site.

    ReplyDelete
  13. I'm getting the same errors compiling on a Fujitsu P1620 with Ubuntu 11.04 Natty (64 bit alternate install). Are these drivers still being maintained? It appears they're incompatible with the kernel (Linux 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:24 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux).

    I got a drive for the button, and can rotate my screen. The built in Ubuntu calibration app is clunky, but seems to work, although you can only calibrate for one orientation. I have calibrated for the portrait orientation. Also the calibration doesn't seem to be very accurate with Ubuntu's calibration. Is this driver/app any better?

    If anyone has any suggestions feel free to email me. steven dot b dot hoff at g m a i l dot c o m

    ReplyDelete
  14. For Unbuntu 11.04:

    You will need 0.3.9 at
    https://bitbucket.org/cybergene/fujitsu-usb-touchscreen

    ReplyDelete
  15. If you use >11.04 and have error on input_dev, you need to download new module src 0.3.9 here:
    https://bitbucket.org/cybergene/fujitsu-usb-touchscreen

    It works!

    ReplyDelete