You are not logged in.

#1 2016-11-03 19:56:17

zezadas
Member
Registered: 2013-04-11
Posts: 35

FingerPrint reader, not working on lockScreen after suspend

I have a thinkpad X1, and I'm using I3
Currently I have installed fprintd and configured PAM. Everything works great.

The problem appears on suspend, since I3 wont handle ACPI events, I wrote a systemd service, to call i3lock before go to sleep.
When resuming from suspend, fingerprint reader wont even light up. It just accepts password.
Have tried to lock before and after suspend with no success.
After unlocking, fingerprint reader works good and calling lock script works as expected.

I guess its something to do with resuming USB devices. But can't find any information.

Any ideas?

Regards, Zezadas

Offline

#2 2016-11-04 07:27:45

mich41
Member
Registered: 2012-06-22
Posts: 796

Re: FingerPrint reader, not working on lockScreen after suspend

One possibility is that i3lock/fprintd opens the fingerprint reader device before suspend, loses access to it because the device is logically discsonnected/reconnected by the kernel during suspend/resume cycle and then doesn't reopen the device after resuming until you stop it by typing password and start it again.

See here for some more information and possible solution. BTW, if this works, it should also be possible to fix fprintd to reopen the device when it disappears. Maybe there is some configuration option you missed, maybe you could file a bug.

Last edited by mich41 (2016-11-04 07:43:17)

Offline

#3 2016-11-04 16:25:53

zezadas
Member
Registered: 2013-04-11
Posts: 35

Re: FingerPrint reader, not working on lockScreen after suspend

thanks for your reply. I found a clue, but dont know how to solve.

The problem cames from systemd service.

[Unit]
Description=Local system resume actions
Before=sleep.target

[Service]
User=anon
Type=forking
Environment=DISPLAY=:0
ExecStart=/home/user/.bin/i3lock

[Install]
WantedBy=sleep.target

If just calling the service without depends, samething happens.

Offline

#4 2022-02-03 13:44:03

Bamboo
Member
Registered: 2018-04-24
Posts: 1

Re: FingerPrint reader, not working on lockScreen after suspend

Do you still experience this problem?
I am using ThinkPad X280 and just managed to make the fingerprint work with i3lock-color a couple of days ago.
I am now facing the same problem of using the fingerprint after suspend.
But for me, after unlocking with password, the fingerprint just stop working altogether, no matter how many times I tried.
I think this is PAM issue tho.
https://github.com/i3/i3lock/issues/210
https://github.com/linux-pam/linux-pam/issues/301

Offline

#5 2023-06-29 07:55:56

iridos
Member
Registered: 2023-06-29
Posts: 1

Re: FingerPrint reader, not working on lockScreen after suspend

As nobody answered this to my satisfaction (neihther here nor in my other search results), I will answer it here.

The screen savers use pam, so the exact screensaver doesnt matter.

I also could not use stock fprintd on my system, but had to install open-fprintd to get my fingerprint sensor supported.

For me, the fingerprint sensor started working again, after restarten open-fprintd. So now I only had to do that restart automatically after restart, which can be done by creating this file:

cat /etc/pm/sleep.d/20-restart-fprintd
#!/bin/sh

case "${1}" in
  hibernate)
     # nothing
       ;;
  resume|thaw)
	  systemctl restart open-fprintd
	  systemctl restart python3-validity
	  systemctl restart open-fprintd-resume.service
       ;;
esac

files and directory contain scripts that cause certain actions before suspend/hibernate and also on resume.

Edit1: only restarting one service alone didn't reliably work.

Edit2: There is another thread that arrived pretty much at the same solution at https://github.com/uunicorn/python-validity/issues/106

Last edited by iridos (2023-07-11 07:32:43)

Offline

Board footer

Powered by FluxBB