我刚刚给自己买了一个新的ACR122U-A9 nfc阅读器,我需要在ubuntu 18.10上使用libnfc设置它。它需要与 libnfc 一起工作,因为 mfoc 接口可以做到这一点(如果有一种方法可以在没有 libnf 的情况下使用 mfoc,那就太好了!该解决方案也将对我有所帮助!安装 libnfc 1.7.1 并做了几个小时的研究后,我仍然没有让它工作。每次我使用sudo nfc-list
并且 pcscd 没有运行时,它都会给我以下错误:
nfc-list uses libnfc 1.7.1
error libnfc.driver.acr122_usb Unable to set alternate setting on USB interface (Connection timed out)
nfc-list: ERROR: Unable to open NFC device: acr122_usb:004:005
如果 pcscd 正在运行,则错误如下所示:
nfc-list uses libnfc 1.7.1
error libnfc.driver.acr122_usb Unable to set alternate setting on USB interface (Connection timed out)
nfc-list: ERROR: Unable to open NFC device: acr122_usb:004:007
nfc-list: ERROR: Unable to open NFC device: acr122_pcsc:ACS ACR122U 00 00
有时这也会出现:
nfc-list uses libnfc 1.7.1
error libnfc.driver.acr122_usb Unable to set alternate setting on USB interface (Connection timed out)
nfc-list: ERROR: Unable to open NFC device: acr122_usb:004:007
error libnfc.driver.acr122_pcsc No ACR122 firmware received, Error: 80100016
nfc-list: ERROR: Unable to open NFC device: acr122_pcsc:ACS ACR122U 00 00
我从中读到的是:
- 自由足球俱乐部作品
- 有一些驱动程序问题
- 有些东西挡住了读者
- 有些东西是PCSCD(适应互联网(
我已经做了以下事情:
- 将文件
/etc/modprobe.d/blacklist-libnfc.conf
中的nfc
pn533
pn533_usb
列入黑名单 - 停止PCSCD恶魔
- 使用
sudo modprobe -r <driver>
手动删除上述驱动程序 - 从此处安装设备驱动程序:https://www.acs.com.hk/en/products/3/acr122u-usb-nfc-reader/
- 重新启动我的笔记本电脑大约 100 次
- 向NFC上帝祈祷
谁能帮助我和/或告诉我我做错了什么?提前谢谢你!
PS:我以某种方式让它与pcscd一起使用,但是由于我无法弄清楚如何使mfoc使用它(如果可能的话(,因此没有用。
如今,您可以从源代码版本1.8.0安装。此版本已解决此问题。
首先卸载 libnfc-bin
下载版本 1.8.0 的源代码 这就是我所做的:
export CFLAGS="-Wall -g -O2 -Wextra -pipe -funsigned-char -fstrict-aliasing
-Wchar-subscripts -Wundef -Wshadow -Wcast-align -Wwrite-strings -Wunused
-Wuninitialized -Wpointer-arith -Wredundant-decls -Winline -Wformat
-Wformat-security -Wswitch-enum -Winit-self -Wmissing-include-dirs
-Wmissing-prototypes -Wstrict-prototypes -Wold-style-definition
-Wbad-function-cast -Wnested-externs -Wmissing-declarations"
autoreconf -Wall -vis
./configure --prefix=/usr --sysconfdir=/etc
sudo make clean
sudo make
sudo make install
之后我尝试了nfc-list
并且它可以工作
nfc-list uses libnfc 1.8.0
NFC device: ACS / ACR122U PICC Interface opened