Recent Dell laptops - i.e. E7470 - contain integrated Broadcom NFC (contactless), (contacted) chip card and fingerprint reader (USB 0a5c:5834 - Broadcom BCM5880 USH).
The contacted card reader works out of the box on Linux, yet NFC reader does not - no RF field is present.
Instructions from blog.g3rt.nl are not applicable: the ushdiag.exe does not recognize the device at all.
This project aims to enable Linux to read NFC cards the same way Windows does.
./nfc.py on
(use sudo
if necessary).pcsc_scan
or whatever you prefer.To disable the reader replace on
with off
.
Currently only the following devices were tested and are known to work:
0a5c:5832
(ControlVault 2),0a5c:5834
(ControlVault 2),0a5c:5842
(ControlVault 3).0a5c:5843
(ControlVault 3).Firmware update (done during driver installation on Windows) may be required.
Python script sends the same sequence of commands the Windows driver does. The traffic was sniffed using USBPcap and Wireshark (kudos to ~jkramarz and ~lgarbarini and for that).
The data is sent as-is and responses are read, but no error-checking is done.
The semi-annotated traffic dumps are available as traffic_cv2.txt and traffic_cv3.txt - feel free to decode it further!
The communication protocol is based on NCI (NFC Controller Interface). Unfortunately the specs are not freely available and some proprietary extensions are used. libnfc-nci and kernel sources were used to decode vendor-independent structs.