C. Dautermann
C. Dautermann

Reputation: 119

ACR122 NFC reader does not work with libnfc ubuntu

I just got myself a new ACR122U-A9 nfc reader that I need to set up with libnfc on ubuntu 18.10. It needs to work with libnfc because mfoc interfaces wit that (If there is a way to use mfoc without libnf, great! That solution would help me as well!) After installing libnfc 1.7.1 and doing a few hours of research I still did not get it to work. Every time I use sudo nfc-list and pcscd is not running it gives me the following error:

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

If pcscd isrunning, the error reads as follows:

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

And sometimes this shows up as well:

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

What I read from that is:

I already did the following things:

Can anyone help me out and/or tell me what I did wrong? Thank you in advance!

PS: I somehow got it to work with pcscd, but since I couldn't figure out how to make mfoc use that (if that's even possible) it's no use.

Upvotes: 8

Views: 8208

Answers (1)

Juan
Juan

Reputation: 574

Nowadays you can install from sources version 1.8.0. This version have this problem resolved.

First uninstall libnfc-bin

download sources of version 1.8.0 And that is what I have done:

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

After that I have tried nfc-list and it works

nfc-list uses libnfc 1.8.0
NFC device: ACS / ACR122U PICC Interface opened

Upvotes: 0

Related Questions