N-trig DuoSense digitizer not detected on Fujitsu Lifebook T580 on Ubuntu 10.10, amd64

Bug #724831 reported by Bayle Shanks on 2011-02-25
32
This bug affects 5 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Wishlist
Chase Douglas
Oneiric
Wishlist
Chase Douglas
Precise
Wishlist
Chase Douglas

Bug Description

SRU Justification
=================
[Impact]
Newer N-Trig touchscreens on devices such as the Fujitsu Lifebook T580 do not work.

[Development Fix]
The HID parser was invalidating a field from newer N-Trig devices due to a check of the HID report size. Bumping the maximum allowed HID report size resolves the issue. N-Trig may be using an invalid report size, or the check may be incorrect, but the fix is merely a lessening of a protocol check.

[Stable Fix]
Please see the three attached patches. The first two patches revert the device IDs to match what the upstream driver has. The upstream driver is technically incorrect in how it is constructed; it preemptively lists device IDs that are unknown. However, newer devices with previously unknown device IDs have appeared, and the patch we added to restrict device IDs is preventing them from working. The best approach here is to revert to how the upstream driver handles this, and then fix any further issues when they arise. It is worth noting that no one has mentioned issues with the upstream device ID list yet.

The third patch bumps the HID report size check. It is a cherry-pick from the upstream HID tree. It will be merged into Linux 3.4 and eventually come down as a stable patch through the upstream stable queue.

[Test Case]
Try to use the touchscreen.

[Regression Potential]
Minimal. This brings us more in sync with upstream, and upstream has not reported any issues with the N-Trig device IDs. The HID report size check is a protocol check; at most, it will allow non-conformant devices to continue to operate. It is highly unlikely this will lead to any issues.

Original Bug Report
===================
Binary package hint: utouch

USB entry is Bus 002 Device 004: ID 1b96:0008 N-Trig

"Ntrig" doesn't appear in /dev/input/by-id/usb-*

utouch is version 1.1.

modprobe hid-ntrig doesn't seem to help. "sudo add-apt-repository ppa:utouch-team/utouch; sudo aptitude install hid-ntrig-dkms" doesn't seem to help.

thanks for your help

ProblemType: Bug
DistroRelease: Ubuntu 10.10
Package: utouch 1.1
ProcVersionSignature: Ubuntu 2.6.35-25.44-generic 2.6.35.10
Uname: Linux 2.6.35-25-generic x86_64
00031B9600080001:

00031B9600080002:

Architecture: amd64
Date: Fri Feb 25 01:16:46 2011
InstallationMedia: Ubuntu 10.10 "Maverick Meerkat" - Release amd64 (20101007)
MachineType: FUJITSU T580
MtDevices: No capable devices found...
PackageArchitecture: all
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.35-25-generic root=UUID=db746971-cee9-4a74-90db-0c9cb14920ea ro quiet splash
ProcEnviron:
 PATH=(custom, user)
 LANG=C
 SHELL=/bin/bash
SourcePackage: utouch
dmi.bios.date: 12/24/2010
dmi.bios.vendor: FUJITSU // Phoenix Technologies Ltd.
dmi.bios.version: Version 1.04
dmi.board.name: FJNB21E
dmi.board.vendor: FUJITSU
dmi.chassis.type: 10
dmi.chassis.vendor: AI40110911BA1023
dmi.modalias: dmi:bvnFUJITSU//PhoenixTechnologiesLtd.:bvrVersion1.04:bd12/24/2010:svnFUJITSU:pnT580:pvr:rvnFUJITSU:rnFJNB21E:rvr:cvnAI40110911BA1023:ct10:cvr:
dmi.product.name: T580
dmi.sys.vendor: FUJITSU

Bayle Shanks (bshanks) wrote :

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Henrik, did you get Micki's list of additional product id's when you
forked hid-ntrig?

Bayle, please send the output of "modinfo hid-ntrig". Specifically I
would like to know if you see this line:

alias: hid:b0003v00001B96p00000008

Also more for my curiosity than this specific bug, Bayle would you mind
sending the output of "lsusb -v" and "dmesg | grep ntrig". I have not
seen the specs of the panel on the T580.

Thanks,
Rafi
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQIcBAEBAgAGBQJNa4LAAAoJEPILXytRLnK2JIAP/3RAjf/mfMdFB4USddTdkdUS
kBx/JVAH6bu6V/pGOU5Uh2GLFQstdOdturqYwJJyX9wnREJQr+2iUg5CA0O/H2y3
UzCT8DkYNpi1SEEMCTGMabCLXzwr06GMigV/SRU8hnN55wMIL/Z0dr0TBJ+IrUAL
X4P9z3aCqt24yq+tZhvgsO2rnByDvsVwoOoLDC6DQurDXsdxZUzLwUIM87y6nrSN
RgDsKS1tQcBMhY7FoRiblSHp4dvlsr9cc8scbww0cTS8tjtRcsofqPSUQQfDtwS8
C2MxkYl1jmjMVt7cSEmixTSJc2ESzN38hvOcmpOV2wZbWMIfQo4jXQlhCHGi5ljC
iG5awsRZ5m5wib7soFlPCIwOHrB7oMfmwwyWcg3tV2alj89JWQgWqMkeoF8uq+C0
Bzpi/nHBQeWZ6zn6MnAuphXeqyjQnpWtBrx/Fkgn4AWLuFU9hjXSUaZtL/MuzcXC
PQam2lhl2OXtpNNtxJPleDwm+wv/QKrqdh/6yksBJTCN4Qm7LntKABjrkIdAOQ6m
naBfEfl+FJmWD0anZPkgumGShJTwC+Wi1Rp26hRPWARq67+5tnQFl1rsaBmITTr4
MzP6VzhkeaXA+z68xWUtl0sEpl7PFF9I0z6lfkMCAikg4hgRHJTt6ejCRYont9Qo
Y1+bMMq98+5Iw1v8upis
=gmg1
-----END PGP SIGNATURE-----

Henrik Rydberg (rydberg) wrote :

Boyle, here is a first attempt at support for your device. Please install the package and report the output of "dmesg | grep -i ntrig".

Henrik Rydberg (rydberg) wrote :
Bayle Shanks (bshanks) wrote :
Download full text (4.7 KiB)

thanks, after installing the attachment "test support for 0x0008 (test1)" on my test 11.4 installation (Linux bshanks 2.6.38-5-generic #32-Ubuntu SMP Tue Feb 22 16:10:15 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux), I get:

bshanks@bshanks:~$ dmesg | grep -i ntrig
[ 13.211555] ntrig 0003:1B96:0008.0001: usb_submit_urb(ctrl) failed
[ 13.211584] ntrig 0003:1B96:0008.0001: timeout initializing reports
[ 13.211851] ntrig 0003:1B96:0008.0001: hiddev0,hidraw14: USB HID v1.10 Device [N-trig DuoSense] on usb-0000:00:1d.0-1.3/input0
[ 13.212028] ntrig 0003:1B96:0008.0001: Firmware version: 0.1.6.36.0 (0410 90c4)
[ 13.213455] ntrig 0003:1B96:0008.0002: parse failed
[ 13.213468] ntrig: probe of 0003:1B96:0008.0002 failed with error -22

bshanks@bshanks:~$ modinfo hid-ntrig
filename: /lib/modules/2.6.38-5-generic/updates/dkms/hid-ntrig.ko
license: GPL
srcversion: C2B326CAE71747C1D44D978
alias: hid:b0003v00001B96p00000008
alias: hid:b0003v00001B96p00000001
depends: hid,usbhid
vermagic: 2.6.38-5-generic SMP mod_unload modversions

and the ntrig portion of lsusb -v:

Bus 002 Device 004: ID 1b96:0008 N-Trig
Device Descriptor:
  bLength 18
  bDescriptorType 1
  bcdUSB 2.00
  bDeviceClass 0 (Defined at Interface level)
  bDeviceSubClass 0
  bDeviceProtocol 0
  bMaxPacketSize0 64
  idVendor 0x1b96 N-Trig
  idProduct 0x0008
  bcdDevice 11.00
  iManufacturer 6
  iProduct 5
  iSerial 4
  bNumConfigurations 1
  Configuration Descriptor:
    bLength 9
    bDescriptorType 2
    wTotalLength 75
    bNumInterfaces 3
    bConfigurationValue 1
    iConfiguration 0
    bmAttributes 0xe0
      Self Powered
      Remote Wakeup
    MaxPower 100mA
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 0
      bAlternateSetting 0
      bNumEndpoints 1
      bInterfaceClass 3 Human Interface Device
      bInterfaceSubClass 0 No Subclass
      bInterfaceProtocol 0 None
      iInterface 2
        HID Device Descriptor:
          bLength 9
          bDescriptorType 33
          bcdHID 1.10
          bCountryCode 0 Not supported
          bNumDescriptors 1
          bDescriptorType 34 Report
          wDescriptorLength 100
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x83 EP 3 IN
        bmAttributes 3
          Transfer Type Interrupt
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0040 1x 64 bytes
        bInterval 2
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 1
      bAlternateSetting 0
      bNumEndpoints ...

Read more...

Bayle Shanks (bshanks) wrote :

i meant 11.04 (natty), not 11.4, sorry

Henrik Rydberg (rydberg) wrote :

Hi again, does this version work better? Thanks for testing!

Bayle Shanks (bshanks) wrote :

hi, right now i'm on 2.6.35-28 [maverick], lemme know if that's a problem

compile error:

$ cat /var/lib/dkms/hid-ntrig/1.1.3/build/make.log
DKMS make.log for hid-ntrig-1.1.3 for kernel 2.6.35-28-generic (x86_64)
Tue Mar 22 09:42:49 PDT 2011
make: Entering directory `/usr/src/linux-headers-2.6.35-28-generic'
  CC [M] /var/lib/dkms/hid-ntrig/1.1.3/build/hid-ntrig.o
/var/lib/dkms/hid-ntrig/1.1.3/build/hid-ntrig.c: In function 'ntrig_report_version':
/var/lib/dkms/hid-ntrig/1.1.3/build/hid-ntrig.c:128: error: implicit declaration of function 'hid_info'
/var/lib/dkms/hid-ntrig/1.1.3/build/hid-ntrig.c: In function 'ntrig_probe':
/var/lib/dkms/hid-ntrig/1.1.3/build/hid-ntrig.c:445: error: implicit declaration of function 'hid_err'
make[1]: *** [/var/lib/dkms/hid-ntrig/1.1.3/build/hid-ntrig.o] Error 1
make: *** [_module_/var/lib/dkms/hid-ntrig/1.1.3/build] Error 2
make: Leaving directory `/usr/src/linux-headers-2.6.35-28-generic'

[this error does not occur when i install the "test1" package that you provided in attachment #4, only with the test5 package that you just sent]

thanks

Henrik Rydberg (rydberg) wrote :

My bad, I assumed this would be for natty now. Backporting to maverick will probably happen at some point, but it would be even better to get a confirmation that this works in natty.

Bayle Shanks (bshanks) wrote :

ok i tried it on 2.6.38, but it didnt work and i got this in the syslog:

Mar 23 00:10:00 bshanks kernel: [ 3.173909] ntrig 0003:1B96:0008.0001: hiddev0,hidraw0: USB HID v1.10 Device [N-trig DuoSense] on u
sb-0000:00:1d.0-1.3/input0
Mar 23 00:10:00 bshanks kernel: [ 3.174121] ntrig 0003:1B96:0008.0001: Firmware version: 0.1.6.36.0 (0410 90c4)
Mar 23 00:10:00 bshanks kernel: [ 3.175493] ntrig 0003:1B96:0008.0002: parse failed
Mar 23 00:10:00 bshanks kernel: [ 3.175501] ntrig: probe of 0003:1B96:0008.0002 failed with error -22

Henrik Rydberg (rydberg) wrote :

Interesting. This will turn on more information:

echo 1 | sudo tee /sys/module/hid/parameters/debug

(a zero will turn debug output off)

In addition, since it seems to be a parsing error, having the full description of the device would be useful. Please download this script, for instance like

wget http://lii-enac.fr/en/architecture/linux-input/report.py

And run, as root

python report.py > descriptors.txt

Attach the descriptors.txt file here. That should give the full picture.

Thanks!

Bayle Shanks (bshanks) wrote :

ok, on 2.6.38, i did roughly:

sudo dpkg -i hid-ntrig-dkms_1.1.3~test5_all.deb
echo 1 | sudo tee /sys/module/hid/parameters/debug
sudo modprobe hid-ntrig
tail /var/log/syslog

wget http://lii-enac.fr/en/architecture/linux-input/report.py
sudo python report.py > descriptors.txt

the relevant entries in the syslog tail are:

Mar 24 23:33:04 bshanks kernel: [ 212.011538] ntrig 0003:1B96:0008.0001: hiddev0,hidraw6: USB HID v1.10 Device [N-trig DuoSense] on usb-0000:00:1d.0-1.3/input0
Mar 24 23:33:04 bshanks kernel: [ 212.012574] ntrig 0003:1B96:0008.0001: Firmware version: 0.1.6.36.0 (0410 90c4)
Mar 24 23:33:04 bshanks kernel: [ 212.014315] /build/buildd/linux-2.6.38/drivers/hid/hid-core.c: invalid report_size 48
Mar 24 23:33:04 bshanks kernel: [ 212.014330] /build/buildd/linux-2.6.38/drivers/hid/hid-core.c: item 0 1 1 7 parsing failed
Mar 24 23:33:04 bshanks kernel: [ 212.014357] /build/buildd/linux-2.6.38/drivers/hid/usbhid/hid-core.c: parsing report descriptor failed
Mar 24 23:33:04 bshanks kernel: [ 212.014370] ntrig 0003:1B96:0008.0002: parse failed
Mar 24 23:33:04 bshanks kernel: [ 212.014389] ntrig: probe of 0003:1B96:0008.0002 failed with error -22

and descriptors.txt is attached. however, report.py reported an error:

can't get debug descriptor: Connection timed out

Henrik Rydberg (rydberg) wrote :

Thank you very much for this information. It seems your device hits a limitation in the hid parser. The attached package changes that limitation, but might have other side effects. Once again, the debug output will be most valuable. Thanks!

Henrik Rydberg (rydberg) wrote :
Bayle Shanks (bshanks) wrote :

initially (perhaps all the new stuff was not installed yet?)

Apr 5 22:01:42 bshanks dkms_autoinstaller: hid-ntrig (1.1.3): Installing module on kernel 2.6.38-8-generic.

after rebooting,

$ sudo modprobe hid-ntrig
FATAL: Error inserting hid_ntrig (/lib/modules/2.6.38-8-generic/updates/dkms/hid-ntrig.ko): Invalid argument
and in syslog

Apr 5 22:17:12 bshanks kernel: [ 338.328883] usbhid: disagrees about version of symbol hid_output_report
Apr 5 22:17:12 bshanks kernel: [ 338.328892] usbhid: Unknown symbol hid_output_report (err -22)
Apr 5 22:17:12 bshanks kernel: [ 338.329729] usbhid: disagrees about version of symbol hid_unregister_driver
Apr 5 22:17:12 bshanks kernel: [ 338.329733] usbhid: Unknown symbol hid_unregister_driver (err -22)
Apr 5 22:17:12 bshanks kernel: [ 338.330468] usbhid: disagrees about version of symbol __hid_register_driver
Apr 5 22:17:12 bshanks kernel: [ 338.330475] usbhid: Unknown symbol __hid_register_driver (err -22)
Apr 5 22:17:12 bshanks kernel: [ 338.330745] usbhid: disagrees about version of symbol hid_allocate_device
Apr 5 22:17:12 bshanks kernel: [ 338.330747] usbhid: Unknown symbol hid_allocate_device (err -22)
Apr 5 22:17:12 bshanks kernel: [ 338.330993] usbhid: disagrees about version of symbol hid_destroy_device
Apr 5 22:17:12 bshanks kernel: [ 338.330999] usbhid: Unknown symbol hid_destroy_device (err -22)
Apr 5 22:17:12 bshanks kernel: [ 338.333297] usbhid: disagrees about version of symbol hid_set_field
Apr 5 22:17:12 bshanks kernel: [ 338.333303] usbhid: Unknown symbol hid_set_field (err -22)
Apr 5 22:17:12 bshanks kernel: [ 338.334201] usbhid: disagrees about version of symbol hid_check_keys_pressed
Apr 5 22:17:12 bshanks kernel: [ 338.334208] usbhid: Unknown symbol hid_check_keys_pressed (err -22)
Apr 5 22:17:12 bshanks kernel: [ 338.335952] usbhid: disagrees about version of symbol hid_input_report
Apr 5 22:17:12 bshanks kernel: [ 338.335958] usbhid: Unknown symbol hid_input_report (err -22)
Apr 5 22:17:12 bshanks kernel: [ 338.337911] usbhid: disagrees about version of symbol hidinput_find_field
Apr 5 22:17:12 bshanks kernel: [ 338.337918] usbhid: Unknown symbol hidinput_find_field (err -22)
Apr 5 22:17:12 bshanks kernel: [ 338.338420] usbhid: disagrees about version of symbol hid_parse_report
Apr 5 22:17:12 bshanks kernel: [ 338.338426] usbhid: Unknown symbol hid_parse_report (err -22)
Apr 5 22:17:12 bshanks kernel: [ 338.339247] usbhid: disagrees about version of symbol hid_add_device
Apr 5 22:17:12 bshanks kernel: [ 338.339254] usbhid: Unknown symbol hid_add_device (err -22)

$ sudo python report.py > descriptors.txt
Traceback (most recent call last):
  File "report.py", line 13, in <module>
    os.chdir("/sys/bus/usb/drivers/usbhid")
OSError: [Errno 2] No such file or directory: '/sys/bus/usb/drivers/usbhid'

thanks

Henrik Rydberg (rydberg) wrote :

The latest ntrig driver is 1.1.4, so perhaps you like to try again with a fully updated system.
Also, the hid-dkms package was updated for other reasons, so please try the new attached version. Thanks!

Henrik Rydberg (rydberg) wrote :
Henrik Rydberg (rydberg) wrote :

The hid-ntrig-dkms-1.1.3 version had mismatching package and installation version, very confusing. I have uploaded 1.1.5 to fix that. All current package do however compile and run as expected, so previous comments still apply. Thanks!

Bayle Shanks (bshanks) wrote :

same as before

$ echo 1 | sudo tee /sys/module/hid/parameters/debug

$ sudo modprobe hid-ntrig
FATAL: Error inserting hid_ntrig (/lib/modules/2.6.38-8-generic/updates/dkms/hid-ntrig.ko): Invalid argument

in /var/log/syslog:

Apr 14 23:37:00 bshanks dkms_autoinstaller: hid-ntrig (1.1.5): Installing module on kernel 2.6.38-8-generic.

Apr 15 00:01:44 bshanks kernel: [ 30.545899] usbhid: disagrees about version of symbol hid_output_report
Apr 15 00:01:44 bshanks kernel: [ 30.545906] usbhid: Unknown symbol hid_output_report (err -22)
Apr 15 00:01:44 bshanks kernel: [ 30.546385] usbhid: disagrees about version of symbol hid_unregister_driver
Apr 15 00:01:44 bshanks kernel: [ 30.546388] usbhid: Unknown symbol hid_unregister_driver (err -22)
Apr 15 00:01:44 bshanks kernel: [ 30.546746] usbhid: disagrees about version of symbol __hid_register_driver
Apr 15 00:01:44 bshanks kernel: [ 30.546748] usbhid: Unknown symbol __hid_register_driver (err -22)
Apr 15 00:01:44 bshanks kernel: [ 30.546884] usbhid: disagrees about version of symbol hid_allocate_device
Apr 15 00:01:44 bshanks kernel: [ 30.546886] usbhid: Unknown symbol hid_allocate_device (err -22)
Apr 15 00:01:44 bshanks kernel: [ 30.547003] usbhid: disagrees about version of symbol hid_destroy_device
Apr 15 00:01:44 bshanks kernel: [ 30.547006] usbhid: Unknown symbol hid_destroy_device (err -22)
Apr 15 00:01:44 bshanks kernel: [ 30.547816] usbhid: disagrees about version of symbol hid_set_field
Apr 15 00:01:44 bshanks kernel: [ 30.547818] usbhid: Unknown symbol hid_set_field (err -22)
Apr 15 00:01:44 bshanks kernel: [ 30.548137] usbhid: disagrees about version of symbol hid_check_keys_pressed
Apr 15 00:01:44 bshanks kernel: [ 30.548140] usbhid: Unknown symbol hid_check_keys_pressed (err -22)
Apr 15 00:01:44 bshanks kernel: [ 30.548765] usbhid: disagrees about version of symbol hid_input_report
Apr 15 00:01:44 bshanks kernel: [ 30.548767] usbhid: Unknown symbol hid_input_report (err -22)
Apr 15 00:01:44 bshanks kernel: [ 30.549456] usbhid: disagrees about version of symbol hidinput_find_field
Apr 15 00:01:44 bshanks kernel: [ 30.549459] usbhid: Unknown symbol hidinput_find_field (err -22)
Apr 15 00:01:44 bshanks kernel: [ 30.549639] usbhid: disagrees about version of symbol hid_parse_report
Apr 15 00:01:44 bshanks kernel: [ 30.549641] usbhid: Unknown symbol hid_parse_report (err -22)
Apr 15 00:01:44 bshanks kernel: [ 30.549930] usbhid: disagrees about version of symbol hid_add_device

$ sudo python report.py > descriptors.txt
Traceback (most recent call last):
  File "report.py", line 13, in <module>
    os.chdir("/sys/bus/usb/drivers/usbhid")
OSError: [Errno 2] No such file or directory: '/sys/bus/usb/drivers/usbhid'

Bayle Shanks (bshanks) wrote :

i should note that there was some difficulty installing hid-ntrig-dkms -- it complained that it couldn't find /usr/src/hid-ntrig-1.1.5.dkms.tar.gz. I did "sudo apt-get source hid-ntrig-dkms" and then manually moved the resulting hid-ntrig-dkms_1.1.5.tar.gz to /usr/src/hid-ntrig-1.1.5.dkms.tar.gz

Henrik Rydberg (rydberg) wrote :

Something else seems to be wrong here. I have never seen the package problem before, and it works fine in this end. Fully updated natty. I just do

sudo apt-get install hid-ntrig-dkms
reboot

to install, and

sudo apt-get purge hid-ntrig-dkms
reboot

to uninstall.

Johan Bernhardsson (smallone) wrote :

By adding a device id in hid-ntrig.c so it looks like this:

static const struct hid_device_id ntrig_devices[] = {
        NTRIG_DEVICE(0x0001),
        NTRIG_DEVICE(0x0006),
        NTRIG_DEVICE(0x0008),
        { }
};
MODULE_DEVICE_TABLE(hid, ntrig_devices);

that makes my computer show ntrig in dmesg :

[ 20.514656] ntrig 0003:1B96:0008.0001: hiddev0,hidraw0: USB HID v1.10 Device [N-trig DuoSense] on usb-0000:00:1d.0-1.3/input0
[ 20.515236] ntrig 0003:1B96:0008.0001: Firmware version: 0.1.6.36.0 (0410 90c4)
[ 20.516555] ntrig 0003:1B96:0008.0002: parse failed
[ 20.516564] ntrig: probe of 0003:1B96:0008.0002 failed with error -22

Showing firmware and creates a device but i guess it should have shown more.

Johan Bernhardsson (smallone) wrote :

After reading the activity log more properly .. im using hid-ntrig 1.1.5 with my own patch above and using the hid-limits package from henrik rydberg.

Attaching descriptors (still getting the connection timed out message)

Johan Bernhardsson (smallone) wrote :
Johan Bernhardsson (smallone) wrote :

[ 151.613829] usb 2-1.3: usbfs: USBDEVFS_CONTROL failed cmd lsusb rqt 128 rq 6 len 4 ret -110
[ 151.618989] /build/buildd/linux-2.6.38/drivers/hid/usbhid/hid-core.c: HID probe called for ifnum 0
[ 151.620742] ntrig 0003:1B96:0008.0003: hiddev0,hidraw0: USB HID v1.10 Device [N-trig DuoSense] on usb-0000:00:1d.0-1.3/input0
[ 151.620976] ntrig 0003:1B96:0008.0003: Firmware version: 0.1.6.36.0 (0410 90c4)
[ 151.627119] /build/buildd/linux-2.6.38/drivers/hid/usbhid/hid-core.c: HID probe called for ifnum 1
[ 151.629557] /var/lib/dkms/hid/1.1.2/build/hid-core.c: invalid report_size 96
[ 151.629572] /var/lib/dkms/hid/1.1.2/build/hid-core.c: item 0 1 1 7 parsing failed
[ 151.629602] /build/buildd/linux-2.6.38/drivers/hid/usbhid/hid-core.c: parsing report descriptor failed
[ 151.629614] ntrig 0003:1B96:0008.0004: parse failed
[ 151.629632] ntrig: probe of 0003:1B96:0008.0004 failed with error -22

i got that whilst running the descriptors.py

Johan Bernhardsson (smallone) wrote :

After chaning report_size to 96 in hid-core.c i did get :

[ 880.381868] usbhid: USB HID core driver
[ 880.385237] ntrig 0003:1B96:0008.0001: hiddev0,hidraw0: USB HID v1.10 Device [N-trig DuoSense] on usb-0000:00:1d.0-1.3/input0
[ 880.385411] ntrig 0003:1B96:0008.0001: Firmware version: 0.1.6.36.0 (0410 90c4)
[ 880.387597] input: N-trig DuoSense as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3/2-1.3:1.1/input/input14
[ 880.387800] input: N-trig DuoSense as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3/2-1.3:1.1/input/input15
[ 880.387979] input: N-trig DuoSense as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3/2-1.3:1.1/input/input16
[ 880.388147] ntrig 0003:1B96:0008.0002: input,hidraw1: USB HID v1.10 Device [N-trig DuoSense] on usb-0000:00:1d.0-1.3/input1
[ 880.392107] ntrig 0003:1B96:0008.0002: Firmware version: 0.1.6.36.0 (0410 90c4)

attachting descriptors (still get the connection time out)

Johan Bernhardsson (smallone) wrote :

And presto .. that change also gave me a working touch .. only comfirmed pen for now

I have added some rows in udev from rafi .. 90-ntrig something aswell

oot@pico:~# ls -l /dev/input/by-id/
total 0
lrwxrwxrwx 1 root root 10 2011-05-09 07:04 usb-Chicony_Electronics_Co.__Ltd._FJ_Camera-event-if00 -> ../event10
lrwxrwxrwx 1 root root 9 2011-05-09 07:20 usb-N-trig_DuoSense_08.01.06.36.16-if01-mouse -> ../mouse3
lrwxrwxrwx 1 root root 9 2011-05-09 07:20 usb-N-trig_DuoSense_08.01.06.36.16-mouse -> ../mouse3
root@pico:~# ls -l /dev/input/by-path/
total 0
lrwxrwxrwx 1 root root 10 2011-05-09 07:04 pci-0000:00:1a.0-usb-0:1.6:1.0-event -> ../event10
lrwxrwxrwx 1 root root 9 2011-05-09 07:20 pci-0000:00:1d.0-usb-0:1.3:1.1-mouse -> ../mouse3
lrwxrwxrwx 1 root root 10 2011-05-09 07:20 pci-0000:00:1d.0-usb-0:1.3:1.1-n-trig -> ../event14
lrwxrwxrwx 1 root root 10 2011-05-09 07:20 pci-0000:00:1d.0-usb-0:1.3:1.1-n-trig-mttouch -> ../event15
lrwxrwxrwx 1 root root 10 2011-05-09 07:20 pci-0000:00:1d.0-usb-0:1.3:1.1-n-trig-touch -> ../event16
lrwxrwxrwx 1 root root 9 2011-05-09 07:04 platform-fsc_btns-event -> ../event7
lrwxrwxrwx 1 root root 9 2011-05-09 07:04 platform-i8042-serio-0-event-kbd -> ../event4
lrwxrwxrwx 1 root root 10 2011-05-09 07:04 platform-i8042-serio-4-event-mouse -> ../event11
lrwxrwxrwx 1 root root 9 2011-05-09 07:04 platform-i8042-serio-4-mouse -> ../mouse0

Johan Bernhardsson (smallone) wrote :

This is a package that makes ntrig driver for the fujitsu lifebook t580 to load.

Johan Bernhardsson (smallone) wrote :

ntrig driver with the device id for the fujitsu lifebook t580

Johan Bernhardsson (smallone) wrote :

ntrig driver with the device id for the fujitsu lifebook t580

Johan Bernhardsson (smallone) wrote :

Tested on several t580 ... and after changing some code it works

Changed in utouch (Ubuntu):
status: New → In Progress
kinta (kinta-communia) wrote :

After installing the last two packages I can confirm that ntrig on xps 15 is working too. No multitouch at first sight.

kinta (kinta-communia) wrote :

Sorry, but multitouch is working, what's not working is pen. (xps 15 l502x with 11.04)

cortes_ (sovmirich) wrote :

Hi, I have Fujitsu t580... What do I need to install that would touchscreen. If you can describe the process steps. Or by mail sovmirich @ gmail.com. Thank you!

adamovera (adamovera) wrote :

I also have a Fujitsu LIFEBOOK T580. I tried two of the last 3 packages on Oneiric 32-bit. The first one labelled 1.1.2~utouch2-test gave off an installation error, but it shows up as installed. The next one labelled 1.1.5~test (this appears twice, so I'm assuming that's just a double post) installs fine. The touchscreen is still unresponsive. Am I missing any steps, something else? The last post from smallone says 'after changing some code it works' - what changes?

Johan Bernhardsson (smallone) wrote :

adamovera: the changes i did isnt in the ntrig driver in the kernel for onceric apparently.

By adding a device id in hid-ntrig.c ( i dont know what row atm) so it looks like this:

static const struct hid_device_id ntrig_devices[] = {
        NTRIG_DEVICE(0x0001),
        NTRIG_DEVICE(0x0006),
        NTRIG_DEVICE(0x0008),
        { }
};
MODULE_DEVICE_TABLE(hid, ntrig_devices);

And by changing report_size to 96 in hid-core.c did the trick in the driver here.

I havent done the same for onceric yet. Can someone push these changes upstream to the kernelteam ?

Chase Douglas (chasedouglas) wrote :

I have added the new ntrig device id to this package. I have not modified hid-core.c because I'm not sure exactly what needs to be changed and changing hid-core would require modifying another package. Please test this package out, and if it doesn't work please check dmesg for any error messages.

Thanks!

Changed in utouch (Ubuntu):
assignee: nobody → Chase Douglas (chasedouglas)
importance: Undecided → Wishlist
tuxsurfer (thomas-bretthauer) wrote :

Hi Chase,

installed the package on the T580 running oneiric ocelot, but touch and pen don't work.
dmesg shows:
----
[ 17.990572] ntrig 0003:1B96:0008.0001: hiddev0,hidraw0: USB HID v1.10 Device [N-trig DuoSense] on usb-0000:00:1d.0-1.3/input0
[ 17.990816] ntrig 0003:1B96:0008.0001: Firmware version: 0.1.6.36.0 (0410 90c4)
[ 17.992083] ntrig 0003:1B96:0008.0002: parse failed
[ 17.992093] ntrig: probe of 0003:1B96:0008.0002 failed with error -22
----

Thanks,
Thomas

Johan Bernhardsson (smallone) wrote :

Thats probably beacuse the hid-core cant handle the output from
hid-ntrig.

I will try tomorrow to build the hid-core package aswell

On Mon, 2011-10-24 at 20:54 +0000, tuxsurfer wrote:
> Hi Chase,
>
> installed the package on the T580 running oneiric ocelot, but touch and pen don't work.
> dmesg shows:
> ----
> [ 17.990572] ntrig 0003:1B96:0008.0001: hiddev0,hidraw0: USB HID v1.10 Device [N-trig DuoSense] on usb-0000:00:1d.0-1.3/input0
> [ 17.990816] ntrig 0003:1B96:0008.0001: Firmware version: 0.1.6.36.0 (0410 90c4)
> [ 17.992083] ntrig 0003:1B96:0008.0002: parse failed
> [ 17.992093] ntrig: probe of 0003:1B96:0008.0002 failed with error -22
> ----
>
> Thanks,
> Thomas
>

adamovera (adamovera) wrote :

Johan, did you ever have any luck?

Johan Bernhardsson (smallone) wrote :

No time. But as bord hid-core and hid-ntrig is in the kernel. This
should be reported to the kernelteam with the patches contained in
here.

If i get some time i will send a patch to the kernel.org so it will be
in upstream later on.

/Johan

On Fri, 2011-10-28 at 00:40 +0000, adamovera wrote:
> Johan, did you ever have any luck?
>

--
Security all the way ...

Linux/CMS/Network/Print/Virtualisation/VoIP Consultant

Kafit AB
Orgnr: 556792-5945
Mobile: +46-705-111751
Email: <email address hidden>
Web: http://www.kafit.se

About me: http://about.me/smallone/bio
LinkedIn: http://www.linkedin.com/in/smallone

Chase Douglas (chasedouglas) wrote :

I have build a new hid-dkms package that bumps the maximum hid item size from 32 to 96. This is merely a guess based on what was suggested in a previous comment, but it shouldn't be harmful if it's incorrect. Please install this alongside the hid-ntrig-dkms package and reboot to test.

Thanks!

adamovera (adamovera) wrote :

Chase,

Nice! Both pen and touch work in Oneiric now. I'll shoot you an email with any impressions/questions/concerns after I have some time to play around with it.

-Adam

Chase Douglas (chasedouglas) wrote :

Our kernel has differed with regard to the ntrig driver. We are investigating our options with how to proceed with it. It is possible that the upstream driver works properly without any patches. I would appreciate it if someone with this device could test out the latest upstream kernel at:

http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.1-oneiric/

Thanks!

Johan Bernhardsson (smallone) wrote :

@chasedouglas i did test the kernel. In that kernel there are the parse issue in the hid driver. Where you need to raise hid item size from 32 to 96.

The ntrig driver is detected correctly but fails to load due to that.

/Johan

igor messina (igor-messina) wrote :

hi, i wanna say that also latitude xt3 digitizer doesn't work, but neither with these patches!

ciao Igor

Monica Jae (monicajae) wrote :

i want to also add that none of these patches helps me and i have a t580. i installed ubuntu via wubi. the reason for this is that my cdrom drive is not detected at startup. this was the only way to get ubuntu insatlled and in the boot menu.

my ntrig is not being detected at boot so it is neither being loaded. i cannot load hid-dkms due to an error that file is not found. i cannot either install compiz-utouch because i cannot find the abiversion. i would like some help with thses issues if someone can find me a direction. thanks
Monica

affects: utouch (Ubuntu) → linux (Ubuntu)
description: updated
Changed in linux (Ubuntu Oneiric):
status: New → In Progress
importance: Undecided → Wishlist
assignee: nobody → Chase Douglas (chasedouglas)
Chase Douglas (chasedouglas) wrote :

The fixes should land in the next Precise kernel upload.

Changed in linux (Ubuntu):
status: In Progress → Fix Committed
Tim Gardner (timg-tpi) on 2011-11-22
Changed in linux (Ubuntu Oneiric):
status: In Progress → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 3.2.0-2.4

---------------
linux (3.2.0-2.4) precise; urgency=low

  [ Andy Whitcroft ]

  * rebase to v3.2-rc3

  [ Leann Ogasawara ]

  * Revert "SAUCE: xen: Do not use pv spinlocks on HVM"
  * Revert "fix ERROR: __devcgroup_inode_permission undefined"
  * Revert "olpc_dcon_xo_1_5 needs delay.h"
  * Revert "olpc_dcon_xo_1 needs delay.h"
  * rebase to 6fe4c6d4
  * [Config] updateconfigs after rebase to 6fe4c6d4

  [ Tim Gardner ]

  * [Config] Replace wireless-crda with crda,wireless-regdb
    - LP: #856421
  * [Config] Relax the dependencies on crda

  [ Upstream Kernel Changes ]

  * (pre-stable) HID: bump maximum global item tag report size to 96 bytes
    - LP: #724831
  * Ubuntu: remove coreutils|fileutils package dependency
    - LP: #892814
  * iio: iio_event_getfd -- fix ev_int build failure

  [ Upstream Kernel Changes ]

  * Rebase to v3.2-rc3
 -- Andy Whitcroft <email address hidden> Thu, 24 Nov 2011 16:20:45 +0000

Changed in linux (Ubuntu Precise):
status: Fix Committed → Fix Released
Herton R. Krzesinski (herton) wrote :

This bug is awaiting verification that the kernel for Oneiric in -proposed solves the problem (3.0.0-15.24). Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-oneiric' to 'verification-done-oneiric'.

If verification is not done by one week from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-oneiric
Erno Kuusela (erno-iki) wrote :

This works very well, three-finger dragging of windows works, and up to 5 finger painting with qt fingerpaint example (from qt4-demos).
Excellent work!

tags: added: verification-done-oneiric
removed: verification-needed-oneiric
Launchpad Janitor (janitor) wrote :
Download full text (13.9 KiB)

This bug was fixed in the package linux - 3.0.0-15.25

---------------
linux (3.0.0-15.25) oneiric-proposed; urgency=low

  [Brad Figg]

  * Release Tracking Bug
    - LP: #910894

  [ Upstream Kernel Changes ]

  * Revert "clockevents: Set noop handler in clockevents_exchange_device()"
    - LP: #904569

linux (3.0.0-15.24) oneiric-proposed; urgency=low

  [Herton R. Krzesinski]

  * Release Tracking Bug
    - LP: #903188

  [ Alex Bligh ]

  * (config) Change Xen paravirt drivers to be built-in
    - LP: #886521

  [ Chase Douglas ]

  * Revert "SAUCE: HID: hid-ntrig: add support for 1b96:0006 model"
    - LP: #724831
  * Revert "SAUCE: hid: ntrig: Remove unused device ids"
    - LP: #724831

  [ Seth Forshee ]

  * SAUCE: dell-wmi: Demote unknown WMI event message to pr_debug
    - LP: #581312

  [ Upstream Kernel Changes ]

  * Revert "leds: save the delay values after a successful call to
    blink_set()"
    - LP: #893741
  * xfs: Fix possible memory corruption in xfs_readlink, CVE-2011-4077
    - LP: #887298
    - CVE-2011-4077
  * drm/i915: fix IVB cursor support
    - LP: #893222
  * drm/i915: always set FDI composite sync bit
    - LP: #893222
  * jbd/jbd2: validate sb->s_first in journal_get_superblock()
    - LP: #893148
    - CVE-2011-4132
  * ALSA: hda - Don't add elements of other codecs to vmaster slave
    - LP: #893741
  * virtio-pci: fix use after free
    - LP: #893741
  * ASoC: Don't use wm8994->control_data in wm8994_readable_register()
    - LP: #893741
  * sh: Fix cached/uncaced address calculation in 29bit mode
    - LP: #893741
  * drm/i915: Fix object refcount leak on mmappable size limit error path.
    - LP: #893741
  * drm/nouveau: initialize chan->fence.lock before use
    - LP: #893741
  * drm/radeon/kms: make an aux failure debug only
    - LP: #893741
  * ALSA: usb-audio - Check the dB-range validity in the later read, too
    - LP: #893741
  * ALSA: usb-audio - Fix the missing volume quirks at delayed init
    - LP: #893741
  * KEYS: Fix a NULL pointer deref in the user-defined key type
    - LP: #893741
  * hfs: add sanity check for file name length
    - LP: #893741
  * drm/radeon: add some missing FireMV pci ids
    - LP: #893741
  * sfi: table irq 0xFF means 'no interrupt'
    - LP: #893741
  * x86, mrst: use a temporary variable for SFI irq
    - LP: #893741
  * b43: refuse to load unsupported firmware
    - LP: #893741
  * md/raid5: abort any pending parity operations when array fails.
    - LP: #893741
  * mfd: Fix twl4030 dependencies for audio codec
    - LP: #893741
  * xen:pvhvm: enable PVHVM VCPU placement when using more than 32 CPUs.
    - LP: #893741
  * xen-gntalloc: integer overflow in gntalloc_ioctl_alloc()
    - LP: #893741
  * xen-gntalloc: signedness bug in add_grefs()
    - LP: #893741
  * powerpc/ps3: Fix lost SMP IPIs
    - LP: #893741
  * powerpc: Copy down exception vectors after feature fixups
    - LP: #893741
  * backing-dev: ensure wakeup_timer is deleted
    - LP: #893741
  * block: Always check length of all iov entries in blk_rq_map_user_iov()
    - LP: #893741
  * Linux 3.0.10
    - LP: #893741
  * drm/i915: add multi-threaded forcewake support
    - LP: #891270
  * (pre-sta...

Changed in linux (Ubuntu Oneiric):
status: Fix Committed → Fix Released
Herton R. Krzesinski (herton) wrote :

The fix for this on Lucid came through 2.6.32.55 upstream stable update, thus is not subject to the standard verification process.

tags: added: verification-done-lucid
Andrew McIver (mciverza) wrote :

Ubuntu 12.04 Daily build 23 Feb i386 does not detect the touchscreen
on Dell Lattitude xt3

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers