使用指纹扫描仪作为鼠标中键

rub*_*o77 7 mouse fingerprint-reader

在 Android 上,可以将指纹传感器重新配置为一些更有用的功能,例如使用指纹手势

这在 Ubuntu 上也有可能吗?

(目前,我在 Lenovo Yoga 720-15IKB 上使用 Ubuntu 18.04,但我也很乐意为未来的 Ubuntu 版本找到解决方案)

指纹模块目前无法在 Ubuntu 18.04 上运行。我发现没有设备使用fprint_demo.

指纹传感器称为“Synaptics WBDI”。唯一使用的设备lsusb是:

$ lsusb |grep Synap
Bus 001 Device 004: ID 06cb:0081 Synaptics, Inc. 
Run Code Online (Sandbox Code Playgroud)

但这也可能是触摸板。

Synaptic 检查有一些命中 hwinfo

$ hwinfo
  ...
  P: /devices/pci0000:00/0000:00:14.0/usb1/1-6
  N: bus/usb/001/004
  E: BUSNUM=001
  E: DEVNAME=/dev/bus/usb/001/004
  E: DEVNUM=004
  E: DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-6
  E: DEVTYPE=usb_device
  E: DRIVER=usb
  E: ID_BUS=usb
  E: ID_MODEL=0081
  E: ID_MODEL_ENC=0081
  E: ID_MODEL_ID=0081
  E: ID_REVISION=0164
  E: ID_SERIAL=06cb_0081_9413a800b66b
  E: ID_SERIAL_SHORT=9413a800b66b
  E: ID_USB_INTERFACES=:ff0000:
  E: ID_VENDOR=06cb
  E: ID_VENDOR_ENC=06cb
  E: ID_VENDOR_FROM_DATABASE=Synaptics, Inc.
  E: ID_VENDOR_ID=06cb
  E: MAJOR=189
  E: MINOR=3
  E: PRODUCT=6cb/81/164
  E: SUBSYSTEM=usb
  E: TYPE=255/16/255
  E: USEC_INITIALIZED=2015135

  P: /devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6:1.0
  E: DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6:1.0
  E: DEVTYPE=usb_interface
  E: ID_USB_CLASS_FROM_DATABASE=Vendor Specific Class
  E: ID_VENDOR_FROM_DATABASE=Synaptics, Inc.
  E: INTERFACE=255/0/0
  E: MODALIAS=usb:v06CBp0081d0164dcFFdsc10dpFFicFFisc00ip00in00
  E: PRODUCT=6cb/81/164
  E: SUBSYSTEM=usb
  E: TYPE=255/16/255
  E: USEC_INITIALIZED=4293294

...

50: USB 00.0: 0000 Unclassified device
  [Created at usb.122]
  Unique ID: MtLc.g9F1G8rI369
  Parent ID: k4bc.2DFUsyrieMD
  SysFS ID: /devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6:1.0
  SysFS BusID: 1-6:1.0
  Hardware Class: unknown
  Model: "Synaptics Unclassified device"
  Hotplug: USB
  Vendor: usb 0x06cb "Synaptics, Inc."
  Device: usb 0x0081 
  Revision: "1.64"
  Serial ID: "9413a800b66b"
  Speed: 12 Mbps
  Module Alias: "usb:v06CBp0081d0164dcFFdsc10dpFFicFFisc00ip00in00"
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #52 (Hub)
Run Code Online (Sandbox Code Playgroud)

在 Windows 中,它显示为:

Synaptics WBDI
USB\VID_06CB&PID_0081\9413A800B66B
USB\VID_06CB&PID_0081&REV_0164
Bios name: \_SB.PCI0.XHC.RHUB.HS06
\Device\USBPDO-4
PCIROOT(0)#PCI(1400)#USBROOT(0)#USB(6)
ACPI(_SB_)#ACPI(PCI0)#ACPI(XHC_)#ACPI(RHUB)#ACPI(HS06)
oem3.inf:542d598d9aceb7d5:Biometric_Install.NT:5.5.2603.1050:USB\VID_06CB&PID_0081
Driverkey: {53d29ef7-377c-4d14-864b-eb3a85769359}\0000
Run Code Online (Sandbox Code Playgroud)

也许这个 QA会给出一个提示,如何解决生物识别设备。

Fab*_*bby 5

谷歌所做的是一个黑客:指纹读取器可以被认为是一个微小的触摸板,Android 内核可以生成指纹手势,然后让应用程序对其进行操作。

然而,在 Linux 内核中,没有人在做这件事所以如果你想要这样的东西,那就意味着:

  • 成为内核开发人员
  • 自己开发这个,所以它对你有用
  • 因破坏其他东西而被 Linus Torvalds 抨击 ;-)
  • 正确地重新做
  • 涅槃!

对不起!:-(