Ubuntu 14.04 Trusty Tahr Support
Hi I need help about of how to install the NextWindow driver for an Hp TouchSmart 520-1060 (NextWindow Voltron manufacturer) to make working the touch functionality.
The current driver support the latest version of ubuntu 14.04?
If anyone can help my it will be very helpful for me!
Thanks
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- nwfermi Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- Andres Natanael Soria
- Solved:
- Last query:
- Last reply:
Revision history for this message
![]() |
#1 |
I too am having trouble. I downloaded the 64 bit nwfermi drivers located here:
https:/
Version 0.6.5.0
Trying to install I get a failed dependency:
ia32-libs
I read and found out that package is depricated, so I repackaged the .deb file as suggested here: http://
Now I get another failed dependency:
xf86-input-
That's even after adding the repository: ppa:djpnewton/
When I do the apt-get update, it fails to download the index files, so it may no longer be available.
So... I browsed to the URL listed in the error messages: http://
And I see that precise is the last directory there, so I edited /etc/apt/
So... after giving me a warning that the package was of low quality, I now have nwfermi installed.. I am going to reboot and see if it works...
Revision history for this message
![]() |
#3 |
I get it to work on 14.04 amd64.
Download https:/
mkdir nwfermi_temp
dpkg-deb -x nwfermi-
dpkg-deb --control nwfermi-
gedit nwfermi_
and replace ia32libs
with
lib32z1, lib32ncurses5, lib32bz2-1.0
gedit nwfermi/
I replaced all occurances of function err with pr_err.
I replaced dbg function on line 503 with
printk(KERN_DEBUG "URB Status: %d\n", urb->status);
Rebuild package:
mkdir nwfermi_new_package
dpkg -b nwfermi nwfermi_
Followed this guide for xf86-input-
http://
My modifications:
apt-add-repository ppa:djpnewton/
sudo gedit /etc/apt/
in this file I replaced trusty with precise as trusty is not yet supported so it look like this:
deb http://
deb-src http://
sudo apt-get install build-essential autoconf2.13 xorg-dev xserver-xorg-dev xutils-dev libtool debhelper
apt-get source xf86-input-
gedit xf86-input-
replaced libutouch-grail-dev (>= 1.0.10) with libgrail-dev
cd xf86-input-
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i xf86-input-
dpkg -i nwfermi_
Pointer is working, but 2-finger touch is not. Any suggestions?
Revision history for this message
![]() |
#4 |
Hello I didnt get it to work yet but I will try the above when I have time but on www.nextwindow.com there are newer drivers nw-fermi 0.7.2.0 if I'm correct maybe multi touch works then. hope it helps
Revision history for this message
![]() |
#5 |
Tried nw_fermi 0.7.2.0 but multitouch is not working (tried with ginn and touchegg in Ubuntu Unity and Gnome3 Shell). Driver still needs to be rebuild in 14.04 but without code replacement.
Maybe the problem is with xf86-input-
Revision history for this message
![]() |
#6 |
I try your procedure ales-hribar
but into last step, I get the following error:
Unpacking nwfermi (0.6.5.0) over (0.6.5.0) ...
dpkg: dependency problems prevent configuration of nwfermi:
nwfermi depends on lib32z1; however:
Package lib32z1 is not installed.
nwfermi depends on lib32ncurses5; however:
Package lib32ncurses5 is not installed.
nwfermi depends on lib32bz2-1.0; however:
Package lib32bz2-1.0 is not installed.
Can some one help me?
I think that the solution is a big workaround, for a definite solution. Will be great if the develop of this driver get support to the Ubuntu 14.04 LTS 64 bits.
Thanks
Revision history for this message
![]() |
#7 |
This is the complete procedure, that I follow and get working successfully!!! I add some steps and correction to the previous procedure.
1. Download https:/
2. mkdir nwfermi_temp
3. dpkg-deb -x nwfermi-
3. dpkg-deb --control nwfermi-
4. gedit nwfermi_
5. Replace ia32libs with lib32z1, lib32ncurses5, lib32bz2-1.0
5. gedit nwfermi_
6. Replaced all occurances of function err with pr_err and replaced dbg function on line 503 with printk(KERN_DEBUG "URB Status: %d\n", urb->status);
7. mkdir nwfermi_new_package
8. dpkg -b nwfermi_temp nwfermi_
9. apt-add-repository ppa:djpnewton/
10.sudo gedit /etc/apt/
11.Replace trusty with precise as trusty is not yet supported so it look exactly like this:
deb http://
deb-src http://
12. sudo apt-get update
13. sudo apt-get install build-essential autoconf2.13 xorg-dev xserver-xorg-dev xutils-dev libtool debhelper
14. sudo apt-get source xf86-input-
15. gedit xf86-input-
16. replaced "libutouch-
17. cd xf86-input-
17. sudo dpkg-buildpackage -d
18. cd ..
19. dpkg --add-architecture i386
20. sudo apt-get update
21. sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 libc6-i386 lib32tinfo5 libc6-i386
22. sudo dpkg -i xf86-input-
23. dpkg -i nwfermi_
Revision history for this message
![]() |
#8 |
I also got it working using aleshribar post but only single touch.
Andres do you have multi touch or just single?
Revision history for this message
![]() |
#9 |
Only single touch :( with a lot of workaround...
Revision history for this message
![]() |
#10 |
Can you help me plz? I am not guru like you! :)
I followed Anders' steps. I got it installed, rebooted but still no touch i put.
What am i missing? I checked the /dev/input/event3 and it gets the input from the screen.
How can i help you help me?? :) :) (if you want !!!)
Revision history for this message
![]() |
#11 |
Manolis do you have 64-bit or 32-bit instalation of Ubuntu? These steps here are for 64-bit only. Anyway, If you get events from screen and not cursor actualy moving, you have kernel module working (nwfermi package) and xserver input driver not working. I recommend you to check /var/log/Xorg.0.log for more details.
Revision history for this message
![]() |
#12 |
64-bit. Yes it seems like it is installed.
Can you take a look at my Xorg? I can see the problem at the log but i do not really know how to fix it :(
Again, thanx for your time for sharing this info!!
https:/
Revision history for this message
![]() |
#13 |
This is the quick method with custom packages modified by me:
1.- Download the modified packages: https:/
2. sudo apt-get install build-essential autoconf2.13 xorg-dev xserver-xorg-dev xutils-dev libtool debhelper
3. sudo dpkg --add-architecture i386
4. sudo apt-get update
5. sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 libc6-i386 lib32tinfo5 libc6-i386
6. sudo dpkg -i xf86-input-
7. sudo dpkg -i nwfermi-
8. reboot
Working successfully with Ubuntu 14.04 LTS 64 bits (clean installation) and HP TouchSmart 520-1060.
Enjoy
Revision history for this message
![]() |
#14 |
Manolis this is the problem:
[ 5128.734] (EE) module ABI major version (16) doesn't match the server's version (20)
you have to rebuild xf86-input-
Here are better instruction for building xf86-input-
1 -8 same as Anders' solution.
9. apt-add-repository ppa:djpnewton/
10.sudo gedit /etc/apt/
11.Replace trusty with precise as trusty is not yet supported so it look exactly like this:
deb http://
deb-src http://
12. sudo apt-get update
13. sudo apt-get install build-essential autoconf2.13 xorg-dev xserver-xorg-dev xutils-dev libtool debhelper
14a. sudo apt-get source xf86-input-
14b. mv xf86-input-
15a. gedit xf86-input-
15b. replace line 2:
Version: 0.3.4~precise1
with
Version: 0.3.4~trusty1
15c. gedit xf86-input-
15d. add next lines to the begining of the file:
xf86-input-
* Basic update for Trusty Tahr 14.04 LTS
-- Ales Hribar <email address hidden> Mon, 12 May 2014 12:30:00 +1200
16a. gedit xf86-input-
16b. replaced "libutouch-
17. cd xf86-input-
17. sudo dpkg-buildpackage -d
18. cd ..
19. dpkg --add-architecture i386
20. sudo apt-get update
21. sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32tinfo5
22. sudo dpkg -i xf86-input-
23. sudo dpkg -i nwfermi_
Make sure you disable the repository after you build xf86-input-
sudo gedit /etc/apt/
and add # before every line so it NOW looks exactly like this:
# deb http://
# deb-src http://
then run
sudo apt-get update
and make sure that
sudo apt-get upgrade
doesn't list xf86-input-
Finall, run:
sudo dpkg -i xf86-input-
and test that everything is correct again with
sudo apt-get update
sudo apt-get upgrade
the last command should NOT upgrade xf86-input-
I have also build i386 packages. They too work, but no 2-finger touch. If anyone is having problem with i386 distro, let me know.
Revision history for this message
![]() |
#15 |
it worked. Thanx both of you guys!
Just for the history, what I did wrong is that after all the steps above, i apt-get upgrade again, so the package from repository was installed in place of the modified package. Disabling the repository was the trick.
Thanx again everyone
Revision history for this message
![]() |
#16 |
Congratulations manolis!!!
Revision history for this message
![]() |
#17 |
Can someone please do a recapitulation of the actions required to get this touchscreen of the Asus ET 2410 All-in-One computer to work please ?!
On beforehand many Thanks !!!!
Revision history for this message
![]() |
#18 |
Hopefully someone can help.
I am running Ubuntu 14.04 x64
I have followed each tutorial listed here more than once, and even tried mixing and matching.
Still no touching :(
It seems like I'm close, but when I run nwfermi-
Error! Bad return status for module build on kernel: 3.13.0-39-generic (x86_64)
Consult /var/lib/
I tried to "consult the make.log" and I had no idea what I was looking at.
Am I missing something?
Please, feel free to call me an idiot if I am.
:)
Revision history for this message
![]() |
#19 |
Running 14.04lts 32-bit
xorg.0.log give this well known error:
module ABI major version (16) doesn't match the server's version (20)
Can someone help med with a tutorial for i386?
Regards
Kjartan
Revision history for this message
![]() |
#20 |
Andres Natanael Soria (andresnatanael)
Holy crap!!!
Thank you.
Messed with this on and off for YEARS.
Tried all the complicated stuff, and in the end your "quick method" from post #13 did the trick.
I am saving your custom packages to my server, flash drive, dvds, emailing it to myself, etc.
I never want to lose this.
I had everything working in older Ubuntu's, but was always a pain, then nothing for years.
Now I just need to copy and paste a few lines, and BOOM!
Thank you very very much.
If you're ever in the Chicagoland area, I owe you a beer, monster, redbull, mt dew, or whatever.
Revision history for this message
![]() |
#21 |
Thank you all for sharing this. I made it work in Ubuntu 14.04.
Now I'm using new Ubuntu 15.10, and I cannot figure out how to make it work again. It seems the nwfermi package published here has some kind of "incompatibility" with the new kernel... maybe just something to fix in the code, but don't know where and what...
Can someone give me some help?
Thank you
Revision history for this message
![]() |
#22 |
Hi Guys.
My pacient is Sony Vaio VPCL12M1E, tried to make it play on a clean Ubuntu 16.04 without any luck :(
Went through everything what was available over the web in this matter.
It didn't worked with any kernel (4.4.0-31-generic or 4.4.0-38-generic).
My procedure was almost same as described above with some slight mods.
1. Recompiled kernel module as described above, with dependencies: libz1:i386, libncurses5:i386, libbz2-1.0:i386, xf86-input-
2. FIxed unknown keys in /etc/udev/
dmesg | grep 'fermi\|hid'
[ 11.706482] hidraw: raw HID events driver (C) Jiri Kosina
[ 11.717117] usbcore: registered new interface driver usbhid
[ 11.717120] usbhid: USB HID core driver
[ 11.831776] hid-generic 0003:093A:
[ 12.232768] hid-generic 0003:1926:
[ 19.851326] nw_fermi: module verification failed: signature and/or required key missing - tainting kernel
[ 19.851758] nwfermi 5-2:1.0: NextWindow Fermi device now attached to nwfermi-1
[ 19.851789] usbcore: registered new interface driver nwfermi
[ 19.920248] sony 0003:054C:
[ 19.920732] sony 0003:054C:
cat /var/log/syslog | grep fermi
Sep 30 21:13:11 sdtill nwfermi_
Sep 30 21:13:11 sdtill kernel: [ 19.851326] nw_fermi: module verification failed: signature and/or required key missing - tainting kernel
Sep 30 21:13:11 sdtill kernel: [ 19.851758] nwfermi 5-2:1.0: NextWindow Fermi device now attached to nwfermi-1
Sep 30 21:13:11 sdtill kernel: [ 19.851789] usbcore: registered new interface driver nwfermi
Daemon isn't working after reboot ps aux | grep fermi
root 1485 0.0 0.0 21296 1028 pts/8 S+ 21:18 0:00 grep --color=auto fermi
But when i ask him to, it does:
/usr/sbin/
StartThreads
Starting tl thread
Starting bulk thread
Udev calling it before registering the driver ? Not sure how to debug this...
I know this may be not the best way of checking if things work or not, but daemons CPU% was rising once screen was touched.
Unfortunately my interaction with the Next Widow Touch Screen was terminated at that.
Some further outputs :
ll /dev | grep fermi
lrwxrwxrwx 1 root root 8 Sep 30 21:13 nw-fermi -> nwfermi1
crw------- 1 root root 180, 1 Sep 30 21:13 nwfermi1
lrwxrwxrwx 1 root root 7 Sep 30 21:13 nw-fermi-device -> hidraw1
Seem some udev rules worked...
xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Sony Vaio Jogdial id=8 [slave pointer (2)]
⎜ ↳ Sony RF Receiver id=11 [slave pointer (2)]
⎜ ↳ Sony RF Receiver id=12 [slave pointer (2)]
⎜ ↳ PIXART USB OPTICAL MOUSE id=14 [slave pointer (2)]
⎜ ↳ Nextwindow Fermi Touchscreen id=15 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Sony Vaio Keys id=7 [slave keyboard (3)]
↳ Video Bus id=9 [slave keyboard (3)]
↳ Power Button id=10 [slave keyboard (3)]
↳ UVC Camera (05ca:18b5) id=13 [slave keyboard (3)]
cat /var/log/Xorg.0.log
[ 35.341] (II) config/udev: Adding input device Nextwindow Fermi Touchscreen (/dev/input/event6)
[ 35.341] (**) Nextwindow Fermi Touchscreen: Applying InputClass "evdev pointer catchall"
[ 35.341] (**) Nextwindow Fermi Touchscreen: Applying InputClass "nw fermi"
[ 35.341] (II) LoadModule: "nextwindow"
[ 35.341] (II) Loading /usr/lib/
[ 35.341] (II) Module nextwindow: vendor="X.Org Foundation"
[ 35.341] compiled for 1.18.3, module version = 0.3.4
[ 35.341] Module class: X.Org XInput Driver
[ 35.341] ABI class: X.Org XInput driver, version 22.1
[ 35.341] (II) Using input driver 'nextwindow' for 'Nextwindow Fermi Touchscreen'
[ 35.341] (**) Nextwindow Fermi Touchscreen: always reports core events
[ 35.342] (**) Nextwindow Fermi Touchscreen: always reports core events
[ 35.342] (**) Option "Device" "/dev/input/event6"
[ 35.342] (II) Nextwindow Fermi Touchscreen: Using device /dev/input/event6.
[ 35.342] (**) Option "UseTouchHelp" "1"
[ 35.342] (II) Nextwindow Fermi Touchscreen: Using touch help.
[ 35.342] (**) Option "DragThreshold" "10"
[ 35.342] (**) Option "RightClickTimeout" "1200"
[ 35.342] (**) Option "DoubleClickTim
[ 35.364] (**) Option "config_info" "udev:/
[ 35.364] (II) XINPUT: Adding extended input device "Nextwindow Fermi Touchscreen" (type: UNKNOWN, id 15)
[ 35.364] (**) Nextwindow Fermi Touchscreen: (accel) keeping acceleration scheme 1
[ 35.364] (**) Nextwindow Fermi Touchscreen: (accel) acceleration profile 0
[ 35.364] (**) Nextwindow Fermi Touchscreen: (accel) acceleration factor: 2.000
[ 35.364] (**) Nextwindow Fermi Touchscreen: (accel) acceleration threshold: 4
[ 35.364] (II) Nextwindow Fermi Touchscreen: On.
[ 35.364] (II) config/udev: Adding input device Nextwindow Fermi Touchscreen (/dev/input/js0)
[ 35.364] (II) No input driver specified, ignoring this device.
[ 35.364] (II) This device may have been added with another device file.
[ 35.364] (II) config/udev: Adding input device Nextwindow Fermi Touchscreen (/dev/input/mouse2)
[ 35.364] (II) No input driver specified, ignoring this device.
[ 35.364] (II) This device may have been added with another device file.
Xorg also didn't complained about the driver, but...
Catting the /dev/input/event6 is always empty.
Also nothing in /dev/hidraw1
But on the other hand /dev/nwfermi1 sings loud with loads of binary data.
Tried many different solutions and none of them made nwfermi driver to send input events.
I'm pretty fresh linux user and have very little experience with hardware and X.org server.
Can anybody please spread some light on this one ?
Thank You!
Lucas
Revision history for this message
![]() |
#23 |
Here we are again. :(
The solution from post #13 looks like it almost works in 16.04.
It gets hung up on lib32bz2-1.0 which I assume doesn't exist in 16.04 ?
Has anyone had any luck?
Revision history for this message
![]() |
#24 |
Total noob here trying to do this on 16.04 and essentially fumbling in absolute darkness
With lots of googling I managed to get the package installed without errors but it's not actually working.
What I did:
Downloaded the modified packages from #13
Changed lib32bz2-1.0 to libbz2-1.0:i386 in nwfermi_
Added #include <linux/uaccess.h> to fermi.c (I was getting an "implicit declaration of function copy_to_user" and "copy_from_user")
Rebuilt the package
Followed the procedure in #13, changing lib32bz2-1.0 to libbz2-1.0:i386 in line 5
I also needed to install dkms (sudo apt-get install dkms)
Doing that I can get through the whole procedure in #13 without errors however the touchscreen is still not working after reboot. Meaning in touch the screen and nothing happens except me leaving fingerprints. I must be missing something that is so obvious it is not stated on this page. Any ideas?
Doing this on a HP Compaq Elite 8300 All in One Touch, dual boot Ubuntu/Windows 10. The touchscreen works fine under Windows 10.
Revision history for this message
![]() |
#25 |
Hello, I'm trying to get this working on my Touchsmart 9100. I got thru everything except the last step which gives me the following:
$ sudo dpkg -i nwfermi-
(Reading database ... 298441 files and directories currently installed.)
Preparing to unpack nwfermi-
Removing all DKMS Modules
Done.
Unpacking nwfermi (0.6.5.0) over (0.6.5.0) ...
Setting up nwfermi (0.6.5.0) ...
Removing all DKMS Modules
Done.
Adding Module to DKMS build system
driver version= 0.6.5.0
Doing initial module build
ERROR (dkms apport): kernel package linux-headers-
Error! Bad return status for module build on kernel: 4.10.0-38-generic (x86_64)
Consult /var/lib/
Installing initial module
ERROR (dkms apport): kernel package linux-headers-
Error! Bad return status for module build on kernel: 4.10.0-38-generic (x86_64)
Consult /var/lib/
Done.
Processing triggers for ureadahead (0.100.0-19) ...
ureadahead will be reprofiled on next reboot
Any suggestions? I'm running Mint 18.3.
Thanks!
Mike
Revision history for this message
![]() |
#26 |
Here is the contents of the make.log file.
DKMS make.log for nwfermi-0.6.5.0 for kernel 4.13.0-36-generic (x86_64)
Wed Mar 7 17:13:42 EST 2018
make -C /lib/modules/
make[1]: Entering directory '/usr/src/
CC [M] /var/lib/
/var/lib/
/var/lib/
err ("%s - error, can't find device for minor %d",
^
/var/lib/
/var/lib/
dbg("URB Status: %d\n", urb->status);
^
cc1: some warnings being treated as errors
scripts/
make[2]: *** [/var/lib/
Makefile:1524: recipe for target '_module_
make[1]: *** [_module_
make[1]: Leaving directory '/usr/src/
Makefile:11: recipe for target 'module' failed
make: *** [module] Error 2