BBBでACR122Uを動かしたい
BBBでACR122U(NFCカードリーダ)つないで、pcsc_scanするまでのメモ
pcscdをインストールする
$ sudo apt-get install pcscd
動作確認(NG)
$ sudo pcscd -d -a -f 00000000 pcscdaemon.c:240:main() pcscd set to foreground with debug send to stdout 00002456 configfile.l:254:DBGetReaderListDir() Parsing conf directory: /etc/reader.conf.d 00001351 configfile.l:307:DBGetReaderList() Parsing conf file: /etc/reader.conf.d/libccidtwin 00001649 configfile.l:266:DBGetReaderListDir() Skipping non regular file: . 00000855 configfile.l:266:DBGetReaderListDir() Skipping non regular file: .. 00002992 pcscdaemon.c:545:main() pcsc-lite 1.8.10 daemon ready. 00022437 hotplug_libudev.c:269:get_driver() Looking for a driver for VID: 0x1D6B, PID: 0x0002, path: /dev/bus/usb/001/001 00003044 hotplug_libudev.c:269:get_driver() Looking for a driver for VID: 0x1D6B, PID: 0x0002, path: /dev/bus/usb/001/001 00002742 hotplug_libudev.c:269:get_driver() Looking for a driver for VID: 0x1A40, PID: 0x0101, path: /dev/bus/usb/001/002 00003023 hotplug_libudev.c:269:get_driver() Looking for a driver for VID: 0x0411, PID: 0x01A2, path: /dev/bus/usb/001/003 00002633 hotplug_libudev.c:269:get_driver() Looking for a driver for VID: 0x1A40, PID: 0x0101, path: /dev/bus/usb/001/002 00002614 hotplug_libudev.c:269:get_driver() Looking for a driver for VID: 0x072F, PID: 0x2200, path: /dev/bus/usb/001/004 00001405 hotplug_libudev.c:269:get_driver() Looking for a driver for VID: 0x072F, PID: 0x2200, path: /dev/bus/usb/001/004 00001227 hotplug_libudev.c:321:HPAddDevice() Adding USB device: ACS ACR122U PICC Interface 00001368 readerfactory.c:989:RFInitializeReader() Attempting startup of ACS ACR122U PICC Interface 00 00 using /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Linux/libccid.so 00003569 readerfactory.c:874:RFBindFunctions() Loading IFD Handler 3.0 00001718 ifdhandler.c:1910:init_driver() Driver version: 1.4.15 00010156 ifdhandler.c:1927:init_driver() LogLevel: 0x0003 00001240 ifdhandler.c:1938:init_driver() DriverOptions: 0x0004 00003629 ifdhandler.c:83:CreateChannelByNameOrChannel() Lun: 0, device: usb:072f/2200:libudev:0:/dev/bus/usb/001/004 00001643 ccid_usb.c:281:OpenUSBByName() Using: /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist 00009564 ccid_usb.c:299:OpenUSBByName() ifdManufacturerString: Ludovic Rousseau (ludovic.rousseau@free.fr) 00000993 ccid_usb.c:300:OpenUSBByName() ifdProductString: Generic CCID driver 00001749 ccid_usb.c:301:OpenUSBByName() Copyright: This driver is protected by terms of the GNU Lesser General Public License version 2.1, or (at your option) any later version. 00021725 ccid_usb.c:582:OpenUSBByName() Can't claim interface 1/4: -6 00001490 ccid_usb.c:191:close_libusb_if_needed() libusb_exit 00002553 ifdhandler.c:117:CreateChannelByNameOrChannel() failed 00001181 readerfactory.c:1020:RFInitializeReader() Open Port 0x200000 Failed (usb:072f/2200:libudev:0:/dev/bus/usb/001/004) 00000928 readerfactory.c:312:RFAddReader() ACS ACR122U PICC Interface init failed. 00000907 readerfactory.c:535:RFRemoveReader() UnrefReader() count was: 1 00000795 readerfactory.c:1040:RFUnInitializeReader() Attempting shutdown of ACS ACR122U PICC Interface 00 00. 00000771 readerfactory.c:911:RFUnloadReader() Unloading reader driver. 00001460 hotplug_libudev.c:391:HPAddDevice() Failed adding USB device: ACS ACR122U PICC Interface 00003804 hotplug_libudev.c:269:get_driver() Looking for a driver for VID: 0x1A40, PID: 0x0101, path: /dev/bus/usb/001/002 exit ^C13467170 pcscdaemon.c:726:signal_trap() Received signal: 2 00000160 pcscdaemon.c:745:signal_trap() Preparing for suicide ^C00632125 pcscdaemon.c:726:signal_trap() Received signal: 2 00000189 readerfactory.c:1273:RFCleanupReaders() entering cleaning function 00000103 winscard_svc.c:130:ContextsDeinitialize() remaining threads: 0 00000074 pcscdaemon.c:670:at_exit() cleaning /var/run/pcscd
どうやら、別の何かがデバイスをつかんでいるぽい? https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=57037 ここの「Thu Mar 13, 2014 8:58 am」の書き込みによると、
Also it was not very clear that you need to prevent modprobe from autoload pn533 and nfc modules. To do that, create /etc/modprobe.d/blacklist-libnfc.conf with this content: blacklist pn533 blacklist nfc
ということらしい。 lsmodたたいてみると、確かにこのモジュールがロードされてる。 上記の通りブラックリストに指定して再起動かければpcsc_scanでカードが読み込める。