linux-surface / iptsd

Userspace daemon for Intel Precise Touch & Stylus
GNU General Public License v2.0
94 stars 46 forks source link

Pen not working on surface pro 7 #71

Open edofullin opened 2 years ago

edofullin commented 2 years ago

Hello, I have recently installed Linux (Fedora 36) on my Surface Pro 7 (model 1866) but unfortunately I can't get multitouch and pen working.

I already opened an issue on the linux-surface/linux-surface repo but I was advised to also open one here. Basically I compiled from source both iptsd (from this repo) and linux-surface/intel-precise-touch from their respective master branches as of today (august 25) and the pen seems to work for after a reboot the first time I try it. As soon as I stop hovering and the pen leaves the screen it never works again (evtest also does not detect anything)

I leave here my dmesg and some stuff that might help debugging. Also I do have a fairly bad screen protector but it never gave issues on Windows.

I don't know if I did something wrong but it was not much I did after all, maybe someone else with surface pro 7 can test it out as well?

dmesg -> https://hastebin.com/elikuleqoh.yaml

systemd deamon ->

[edoardo@fedora ~]$ sudo systemctl status iptsd@-dev-hidraw1.service 
[sudo] password for edoardo: 
● iptsd@-dev-hidraw1.service - Intel Precise Touch & Stylus Daemon
     Loaded: loaded (/usr/lib/systemd/system/iptsd@.service; static)
     Active: active (running) since Thu 2022-08-25 23:06:11 CEST; 1h 35min left
       Docs: https://github.com/linux-surface/iptsd
   Main PID: 1555 (iptsd)
      Tasks: 1 (limit: 9010)
     Memory: 4.4M
        CPU: 259ms
     CGroup: /system.slice/system-iptsd.slice/iptsd@-dev-hidraw1.service
             └─1555 /usr/local/bin/iptsd /dev/hidraw1

Aug 25 23:06:11 fedora systemd[1]: Started iptsd@-dev-hidraw1.service - Intel Precise Touch & Stylus Daemon.
Aug 25 23:06:11 fedora iptsd[1555]: [23:06:11.018] [info] Connected to device 045E:099F
NP-chaonay commented 2 years ago

Also I do have a fairly bad screen protector but it never gave issues on Windows.

as guess it is not aboue screen protector any more >80%.

fairly bad screen protector

why you think it is bad?

mattiamelodia commented 2 years ago

Hi, I have the same problem, always on SP 7 and Fedora 36. Everything works except pen, and multitouch. I also tested IPTS Touch and IPTS Stylus with evtest, but the latter doesn't return any values.

NP-chaonay commented 2 years ago

Hi, I have the same problem, always on SP 7 and Fedora 36. Everything works except pen, and multitouch. I also tested IPTS Touch and IPTS Stylus with evtest, but the latter doesn't return any values.

does you use the compiled version from github repo of linux-surface/iptsd (not one from system repo)

and If I not remember wrong, you haave to do the same for ipts driver in linux-surface/intel-precise-touch

just like author have done (he/she said in 1st comment)

mattiamelodia commented 2 years ago

does you use the compiled version from github repo of linux-surface/iptsd (not one from system repo)

Yes, I have installed iptsd from linux-surface/iptsd/actions.

and If I not remember wrong, you haave to do the same for ipts driver in linux-surface/intel-precise-touch

Regarding intel-precise-touch, I haven’t done that yet, because I'm not sure what to do with the patches. Thank you for help.

edofullin commented 2 years ago

Regarding intel-precise-touch, I haven’t done that yet, because I'm not sure what to do with the patches.

You absolutely need that. Skip the patch part if you already use the surface kernel, it just add pen IDs to recognize the hardware they are already included.

mattiamelodia commented 2 years ago

Skip the patch part if you already use the surface kernel

Ok now it is much clearer, but I have already installed surface kernel. [mattiamelodia@surface-pro-7 ~]$ uname -r 5.19.4-1.surface.fc36.x86_64 That should be my version.

Probably something wrong, but if the kernel and iptsd are installed, and touchscreen works, what could be the problem ? How can I use patches to fix the problem ? Thank you for help.