11

I don't really like all the hype about the fingerprint sensor, I'd rather like to have it killed down, so that it doesn't register any fingerprints.

On a desktop Linux I'd simply modprobe -r the relevant kernel module. Can I do something like that on Android? I don't want to simply disable it in the settings - then I have to trust the system that nothing really uses it.

5
  • I have the same question for my Nexus 6p. There is no option in the settings either. Aug 4, 2016 at 23:00
  • Can you not just not touch it, or cover it with something? Any kind of covering would stop it working (even water does temporarily). You'd have to trust that the system has disabled it even if you used modprobe...
    – ash
    Aug 6, 2016 at 15:33
  • @Josh not really if the fingerprint sensor is built into the home button. If the kernel module is not loaded, how can the device work?
    – marmistrz
    Aug 6, 2016 at 16:53
  • @marmistrz ah, I forgot some devices had it on the home button (I have a Nexus 5X, which has the sensor on the back). What I meant was you're still trusting that the kernel module isn't loaded - all the software on your phone could be conspiring against you to hide the fact that the fingerprint sensor is still active. I don't know of a way to do what you want though, so I'll stop cluttering the comments here.
    – ash
    Aug 6, 2016 at 17:00
  • I'm looking for something similar to the OP, but I was thinking more in terms of a way of physically disabling the fingerprint sensor. E.g. go in and cut a wire somewhere. It's going to be phone model specific though. If the OP posted their phone model they might get more suggestions of possible approaches.
    – mc0e
    Apr 1, 2018 at 2:28

2 Answers 2

4

On Linux (and Android) it is possible to disconnect a device from its driver[1]. The fingerprint driver (denoted as fpc) on my LG G5 has the name fpc1020. Searching in the /sys path gave me the folder /sys/bus/spi/drivers/fpc1020/. This folder has four files: bind, unbind, uevent AND spi8.1. What we do is to unbind the device spi8.1 from the driver fpc1020.

Now how to disable the sensor:

  1. we need to find the driver name:
    Try this command: find /sys/bus -name 'fpc*'
    For me it's: /sys/bus/spi/drivers/fpc1020/

  2. we need to find the device name:
    The device name is the fourth file in this folder.
    ls /sys/bus/spi/drivers/fpc1020/ (depends on your result from 1.)
    For me it's: spi8.1

  3. unbind this device:
    echo spi8.1 > /sys/bus/spi/drivers/fpc1020/unbind (depends on your result from 1. & 2.)
    Now you are not able to use the fingerprint sensor until the next restart.

  4. unbind on every system boot:
    We want/need to execute this command on every boot. Currently I'm not sure what's the best way to do it.

Requirements:

  • Root Access
  • Terminal App (or adb shell from PC)

References:
1. https://lwn.net/Articles/143397/

1
  • To do the stuff on every boot automatically, you can refer to my answer to another question.
    – iBug
    May 16, 2017 at 7:31
-1

Or just remove (rename) system/bin/fingerprintd and fingerprint sensor will stop working after phone restart. Rooted phone and a root file explorer are prerequisites.

This method is useful on Xiaomi phones running MIUI 8.2.5.0, on which although fingerprint based authentication is turned off, display still awakes when you touch the sensor.

1
  • Why renaming a binary and fail safety net when you can just disable the sensor ?
    – Zulgrib
    May 15, 2017 at 21:47

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .