10

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.

  • I have the same question for my Nexus 6p. There is no option in the settings either. – Devin Ersoy Aug 4 '16 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... – Josh Aug 6 '16 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 '16 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. – Josh Aug 6 '16 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 '18 at 2:28
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/

  • To do the stuff on every boot automatically, you can refer to my answer to another question. – iBug May 16 '17 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.

  • 3
    And how to do this? Keep in mind OP by no way indicated a rooted device. Based on that, please edit your post and include the steps to achieve your proposed solution. – Izzy May 12 '17 at 9:35
  • Why renaming a binary and fail safety net when you can just disable the sensor ? – Zulgrib May 15 '17 at 21:47
  • 1
    @Izzy the accepted answer implied a rooted device as well :) – gldraphael Oct 14 '17 at 18:21

Not the answer you're looking for? Browse other questions tagged or ask your own question.