nfc-tools/libnfc

Support for ACR1283L/U

cocus opened this issue · 0 comments

Hi,
I found this device and I'll like to use it hopefully with libnfc. I think this should be straightforward, but this particular device has 4 contact interfaces, one contactless, a keypad and a display. I certainly don't care at all about the display, keypad and the contact interfaces :).
The ACR API PDF talks about how it works, but I'm not well versed in PCSC as to identify what should I do, or if it's way too different than the ACR122 that everyone seems to have available.
I just did a cursory examination of the frames, the slot numbers for the PICC and such, and seem to be similar.

Adding this device as a new supported device on acr122_usb.c I get some activity, but it seems the PC_To_RDR_XfrBlock and RDR_To_PC_DataBlock return an error:

debug	libnfc.driver.acr122_usb	TX: 62 00 00 00 00 00 00 01 00 00 
debug	libnfc.driver.acr122_usb	RX: 80 00 00 00 00 00 00 42 fe 00 
debug	libnfc.driver.acr122_usb	ACR122 PICC Operating Parameters
debug	libnfc.driver.acr122_usb	TX: 6f 05 00 00 00 00 00 00 00 00 ff 00 51 00 00 
debug	libnfc.driver.acr122_usb	RX: 80 00 00 00 00 00 00 42 ff 00 
debug	libnfc.chip.pn53x	GetFirmwareVersion
debug	libnfc.driver.acr122_usb	TX: 6f 07 00 00 00 00 00 00 00 00 ff 00 00 00 02 d4 02 
debug	libnfc.driver.acr122_usb	RX: 80 02 00 00 00 00 00 02 81 00 63 00 
error	libnfc.driver.acr122_usb	PN532 didn't reply
error	libnfc.driver.acr122_usb	PN532 init failed, trying again...

I took it apart, and found that it has a MFRC531, and it's way too different than the PN53x (i.e. different set of commands, formats, etc.).
This is the full command set of the MFRC531 (or the one publicly available):
image
image
You think it'd be possible to adapt one of the lower layers (i.e. a pn53x.c like driver) for this? I didn't check if every available command matches the one of the pn53x series, but I can do that.

Thank you!