Install a NFC Reader ACR122U

Hi to all,

I have Zorin Zorin OS 16.1

I try to install ACR122U an USB NFC Reader.

ACR122U Webpage

I chose it because in the forums I red, it was recommended to be the device supported in Linux almost as-is, but i run into problems

I try to follow this guide
https://www.jamesridgway.co.uk/install-acr122u-drivers-on-linux-mint-and-kubuntu/

but I stop at the first line :frowning: If I run the first command indicated I get errors in dependencies

sudo apt-get install pcscd pcsc-tools

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 cie-middleware : Depends: pcscd but it is not going to be installed
                  Depends: libccid but it is not going to be installed
 pcsc-tools : Depends: libpcsc-perl but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

It seems dependent from pcdcd, but when I try to install iI get an other dependency...

sudo apt-get install pcscd

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 cie-middleware : Depends: libccid but it is not going to be installed
 pcscd : Depends: libccid (>= 1.4.1~) but it is not going to be installed or
                  pcsc-ifd-handler
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

... with libccid. if I try to install it, I get the dependecy with pcdcd again... so it is in circles!! So I am blocked :frowning:

sudo apt-get install libccid

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 cie-middleware : Depends: pcscd but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

I also checked the Product drivers ReadMe that I downloaded: they indicated these dependecies

To build acsccid, you need the following software indicates these softwares:

Linux
- pcsclite 1.8.3 or above
- libusb 1.0.9 or above
- flex
- perl
- pkg-config

But also here I am not able to install perl for example ... same pcsdc dependency :sob:

sudo apt-get install perl

Reading package lists... Done
Building dependency tree       
Reading state information... Done
perl is already the newest version (5.30.0-9ubuntu0.2).
perl set to manually installed.
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 cie-middleware : Depends: pcscd but it is not going to be installed
                  Depends: libccid but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

Does someone have any idea of what I am doing wrong?

Thanks in advance,
OcirneMat

This looks complicated to me, even.
One thing I notice is the age of the guide you linked to. One thing to stay wary of... Older guides may be outdated.

Please run

sudo apt --fix-broken install

I have checked the repository and these packages show as present. Let's just try these two, first:

sudo apt install libccid pcscd

HI @Aravisian thanks a lot! that fix the problem! You are the best!

I ll summarize here all the solution steps I did (maybe it is useful for others)

  1. Unfortunately the manufacturer does not distribute drivers for Ubuntu >= 20.4
    ACR122U Webpage

  2. So I started to follow this guide
    https://www.jamesridgway.co.uk/install-acr122u-drivers-on-linux-mint-and-kubuntu/
    I run this + using @Aravisian trick to fix it

sudo apt-get install pcscd pcsc-tools
sudo apt --fix-broken install
sudo apt-get install libccid pcscd
  1. I found an other excellent guide (in italian) here https://linux.debian.user.italian.narkive.com/sOGL55HY/alleluia-nuovo-nfc-reader

I basically blacklisted the drivers, but adding to this file

/etc/modprobe.d/blacklist.conf

the following text

install nfc /bin/false
install pn533 /bin/false

(
PS: in the website they also add this

install pn533_usb /bin/false

but it does not work for me, so i did not include it
)

  1. However there is still no official driver.. in the Italian post, they just install this and for me it works perfectly :slight_smile:
sudo apt install libacsccid1
  1. You can check by running and by putting on and off a card
 pcsc_scan

BONUS PART
I just add a second part because I think other users might search this too.
I think ACR122U will be used a lot in Italy, because starting from later 2021 to access public official website you need to use a digital entity or a digital ID Card ( CID Carta di Identita Digitale). Also ACR122U is the cheapest option in Amazon. I actually set up a small NUC PC with Zorin for my mum specifically for her to enter with CID. Here how set up the rest

  1. Official CIE ID app requires Java (it took me 3 hours to realized that :- :woozy_face: ) . So I install JDK (even it JDR should be enough)
sudo apt-get install default-jdk
  1. Download the latest CIE ID software from here

https://www.cartaidentita.interno.gov.it/fornitori-di-servizi/documentazione-middleware-cie/

I download the Middleware per Linux DEB - scarica la versione 1.4.2. Even if that is for amd it does not matter as the application is a .jar java file

tudo dpkg -i cie-middleware-1.4.2-1.amd64.deb
  1. You should see CIE ID in the software list. Open it and configure the cards
    Note that if there is an error, there are no messages unfortunately, but I found that logs are stored here

~/.CIEID

  1. Configure Firefox (only firefox seems supported). Open Settings->Privacy & Security. Click Security Dervice. Click Load and insert

Module CIE PKI
Path /usr/local/lib/libcie-pkcs11.so

  1. It should all work, when you ask to load the 1st time they ask you only the last 4 digit if the PIN. If you have 2 cards (like I have in my family) there an issue in Firefox because it remembers only 1 card, and with the other you can not access ( I will open a topic for it)
1 Like