15

我想在 Ubuntu 14 smarty 中使用我的 ACR122U 非接触式智能卡读卡器。所以我安装了我需要的包和驱动程序。

最后,当我想使用阅读器时,我收到以下错误:

rc@rc-System-Product-Name:~/Desktop/itsme$ sudo nfc-list
[sudo] password for rc: 
nfc-list uses libnfc 1.7.0
error   libnfc.driver.acr122_usb    Unable to claim USB interface (Device or resource busy)
nfc-list: ERROR: Unable to open NFC device: acr122_usb:001:020
rc@rc-System-Product-Name:~/Desktop/itsme$ 
rc@rc-System-Product-Name:~/Desktop/itsme$ sudo mfoc -O output.txt
error   libnfc.driver.acr122_usb    Unable to claim USB interface (Device or resource busy)
No NFC device found.
rc@rc-System-Product-Name:~/Desktop/itsme$ 

看来我的读者正在使用内核工具。我搜索了很多。已经有很多人有同样的问题,但我在他们中间找不到我的答案。

有人知道我该如何解决这个问题吗?(例如,通过回收设备)

4

4 回答 4

8
sudo modprobe -r pn533_usb

sudo modprobe -r pn533

为我工作。

--------@--------:~$ sudo nfc-list
nfc-list uses libnfc 1.7.1
NFC device: ACS / ACR122U PICC Interface opened
1 ISO14443A passive target(s) found:
ISO/IEC 14443A (106 kbps) target:
ATQA (SENS_RES): 00  04  
UID (NFCID1): ab  c9  67  00  
SAK (SEL_RES): 08  
于 2018-11-04T00:01:41.890 回答
8

如果您的内核版本> 3.5,nfs-list并且pcscd由于pn533驱动程序的自动加载而会报告此错误。

要读取pcscddameon 输出,您可以使用以下命令运行它:pcscd -f -d

  1. 检查安装了哪个内核版本:uname -a
  2. 黑名单pn533nfc驱动程序(参考:Arch Linux wiki Touchatag RFID Readernfc-tools forum):

    $ sudo nano /etc/modprobe.d/blacklist-libnfc.conf
    

    添加以下行:

    blacklist pn533
    blacklist nfc
    
  3. 禁用内核模块:

    $ modprobe -r pn533 nfc
    
  4. 重启pcscd守护进程:sudo service pcscd restart

在这里你可以通过一个小程序来测试你的ACR122U阅读器和更详细的指南

于 2015-11-18T21:10:32.397 回答
3

一个快速而肮脏的解决方案:

sudo rmmod pn533 ## unload the driver right now
sudo nfc-list ## now it works...
于 2018-01-30T19:21:22.507 回答
0

在较新的 ubuntu(>1804) 上,还需要黑名单 pn533_usb

$ cat /etc/modprobe.d/blacklist-libnfc.conf
blacklist nfc
blacklist pn533
blacklist pn533_usb
于 2021-03-10T05:44:23.120 回答