Search code examples
linuxdebianraspberry-piraspbianpcsc

Is it possible to install pcsc-lite 1.8.13 on Raspbian OS?


I'm working on a Raspberry Pi project. I'm trying to install a driver package for ACR1251U-A1 NFC tag.

This package requires to install pcsc-lite package at first. But as I understand after a search on the internet, pcsc-lite 1.8.13 is not available for Raspbian OS.

My supervisor persists that pcsc-lite 1.8.13 should be installed on Raspberry Pi to make NFC tag work.

Is it possible to install it on a Raspbian? If it is so, could you help me how to do that?


Solution

  • I was able to install pcscd daemon and using pcsc-lite wrapper in NodeJS on Raspbian (Linux raspberrypi 3.18.11-v7+ #781 SMP PREEMPT Tue Apr 21 18:07:59 BST 2015 armv7l GNU/Linux) using Raspberry Pi B+ and Raspberry Pi 2.

    Here an extract of the Requirements installation from the full guide of mine project on GitHub:

    1. Install PC/SC and libnfc (references: nfc-tools, libnfc):

      sudo apt-get install pcscd libusb-dev libpcsclite1 libpcsclite-dev dh-autoreconf
      
      cd /opt/
      sudo wget https://github.com/nfc-tools/libnfc/archive/libnfc-1.7.1.zip
      sudo unzip libnfc-1.7.1.zip
      cd libnfc-libnfc-1.7.1/
      sudo autoreconf -vis
      sudo ./configure --with-drivers=all
      sudo make
      sudo make install
      

      Additionaly, you may need to grant permissions to your user to drive the device. Under GNU/Linux systems, if you use udev, you could use the provided udev rules. e.g. under Debian: sudo cp /opt/libnfc-libnfc-1.7.1/contrib/udev/42-pn53x.rules /lib/udev/rules.d/

    2. Make sure the NFC reader is properly recognized:

      sudo nfc-list
      
      1. To fix: error while loading shared libraries: libnfc.so.4: cannot open shared object file: No such file or directory (reference)

        echo '/usr/local/lib' | sudo tee -a /etc/ld.so.conf.d/usr-local-lib.conf && sudo ldconfig
        
      2. If you have kernel version > 3.5, probably pcscd and also nfc-list will report this error: Unable to claim USB interface (Device or resource busy) due to the automatic load of pn533 driver.

        To read the pcscd dameon output you can run it using: pcscd -f -d

        1. Check which kernel version is installed: uname -a
        2. Blacklist pn533 and nfc drivers (references: Arch Linux wiki Touchatag RFID Reader, nfc-tools forum):

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

          Add the following lines:

          blacklist pn533 blacklist nfc

        3. Disable kernel modules:

          modprobe -r pn533 nfc
          
        4. Restart the pcscd daemon: sudo service pcscd restart