From f834210391b0549770947019c8bf6b5c5034d04c Mon Sep 17 00:00:00 2001 From: Jacek Kowalski <Jacek@jacekk.info> Date: Fri, 24 Jul 2020 19:35:18 +0000 Subject: [PATCH] ControlVault 3 - initial support --- README.md | 16 +++++++++------- 1 files changed, 9 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 83c0e71..659ed04 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Enable NFC on Dell ControlVault2 +# Enable NFC on Dell ControlVault2 and ControlVault3 ## Introduction @@ -14,7 +14,7 @@ 1. Clone the repository. 1. Install python3 and python3-usb. -1. Run: `./bcm20795.py on` (use `sudo` if necessary). +1. Run: `./nfc.py on` (use `sudo` if necessary). 1. Run `pcsc_scan` or whatever you prefer. 1. Enjoy! @@ -24,8 +24,9 @@ Currently only the following devices were tested and are known to work: -* `0a5c:5832` -* `0a5c:5834` +* `0a5c:5832` (ControlVault 2), +* `0a5c:5834` (ControlVault 2), +* `0a5c:5843` (ControlVault 3). Firmware update (done during driver installation on Windows) may be required. @@ -36,19 +37,20 @@ * Dell Latitude 7280 * Dell Latitude 7290 * Dell Latitude 7390 +* Dell Latitude 7400 * Dell Latitude E5270 * Dell Latitude E7470 * Dell Latitude E7490 ## How it works? -Python script sends the same sequence of commands the Windows driver does. The traffic was sniffed using USBPcap and Wireshark (kudos to [~jkramarz](https://github.com/jkramarz) for that). +Python script sends the same sequence of commands the Windows driver does. The traffic was sniffed using USBPcap and Wireshark (kudos to [~jkramarz](https://github.com/jkramarz) and [~lgarbarini](https://github.com/lgarbarini) and for that). The data is sent as-is and responses are read, but no error-checking is done. -The semi-annotated traffic dump is available as [traffic.txt](traffic.txt) - feel free to decode it further! +The semi-annotated traffic dumps are available as [traffic_cv2.txt](traffic_cv2.txt) and [traffic_cv3.txt](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 some structs. +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. ## References -- Gitblit v1.9.1