Skip to content

Commit b750d36

Browse files
committed
updated README
1 parent a9a097f commit b750d36

File tree

1 file changed

+11
-47
lines changed

1 file changed

+11
-47
lines changed

drivers/windows/README.md

+11-47
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,8 @@ features.
5656

5757
# Building the Project:
5858

59-
This project was developed with Visual Studio 2015, the Windows SDK,
60-
and the Windows Driver Kit (WDK). At the time of writing, there is not
61-
a stable WDK for Visual Studio 2017, but this project should build
62-
with the new WDK and Visual Studio when it is available.
59+
This project is developed with Visual Studio 2017, the Windows SDK,
60+
and the Windows Driver Kit (WDK).
6361

6462
The WDK is only required for creating the signed WinUSB inf file. The
6563
WDK may also provide the headers for WinUSB.
@@ -102,50 +100,18 @@ A simple tool for testing J2534 drivers is DrewTech's 'J2534-1 Bus Analysis
102100
Tool' available in the 'Other Support Applications' section of their
103101
[Download Page](http://www.drewtech.com/downloads/).
104102

105-
# Dealing with self signed drivers:
103+
# Installing WinUSB driver:
106104

107-
Installation would be straightforward were it not for the USB Driver
108-
that needs to be setup. The driver itself is only a WinUSB inf file
109-
(no actual driver), but it still needs to be signed.
105+
Installation automatically happens for Windows 8 and Windows 10 because the panda
106+
firmware contains the USB descriptors necessary to auto-install the WinUSB driver.
110107

111-
Driver signing is a requirement of Windows starting in 8 (64 bit
112-
versions only for some reason). If your Windows refuses to install
113-
the driver, there are three choices:
108+
Windows 7 will not auto-install the WinUSB driver. You can use Zadig to install
109+
the WinUSB driver. This software is not tested on anything before 7.
114110

115-
- Self Sign the Driver.
116-
- Disable Driver Signature Verification
117-
- Purchase a certificate signed by a trusted authority.
118-
119-
Since self signed certificates have no chain of trust to a known
120-
certificate authority, if you self sign, you will have to add your
121-
cert to the root certificate store of your Windows' installation. This
122-
is dangerous because it means anything signed with your cert will be
123-
trusted. If you make your own cert, add a password so someone can't
124-
copy it and screw with your computer's trust.
125-
126-
Disabling Signature Verification allows you to temporarily install
127-
drivers without a trusted signature. Once you reboot, new drivers will
128-
need to be verified again, but any installed drivers will stay where
129-
they are. This option is irritating if you are installing and
130-
uninstalling the inf driver multiple times, but overall, is safer than
131-
the custom root certificate described above.
132-
133-
Purchasing a signed certificate is the best long term option, but it
134-
is not useful for open source contributors, since the certificate will
135-
be kept safe by the comma.ai team. Developers should use one of the
136-
other two options.
137-
138-
**Note that certificate issues apply no matter if you are building
139-
from source or running an insaller .exe file.**
140-
141-
Some people have reported that the driver installs without needing to
142-
disable driver signing, or that visual studio correctly sets up a
143-
temporary signing key for them. I call witchcraft because I have not
144-
had that happen to me. The signed certificate is still the correct
145-
thing to do in the end.
146-
147-
Windows 7 will not force driver signing. This software is not tested
148-
on anything before 7.
111+
More details here:
112+
[WinUSB (Winusb.sys) Installation](https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/winusb-installation)
113+
[WCID Devices](https://github.com/pbatard/libwdi/wiki/WCID-Devices)
114+
[Zadig for installing libusb compatible driver](https://github.com/pbatard/libwdi/wiki/Zadig)
149115

150116
# Developing:
151117

@@ -154,8 +120,6 @@ on anything before 7.
154120

155121
# ToDo Items:
156122

157-
- Get official signing key for WinUSB driver inf file.
158-
- Implement TxClear and RxClear. (Requires reading vague specifications).
159123
- Apply a style-guide and consistent naming convention for Classes/Functions/Variables.
160124
- Send multiple messages (each with a different address) from a given connection at the same time.
161125
- Implement ISO14230/KWP2000 FAST (LIN communication is already supported with the raw panda USB driver).

0 commit comments

Comments
 (0)