summaryrefslogtreecommitdiff
path: root/usb/kmdf_enumswitches/README.md
diff options
context:
space:
mode:
authorBarry Golden <[email protected]>2019-09-30 10:40:48 -0700
committerGitHub <[email protected]>2019-09-30 10:40:48 -0700
commit85e09b9be0b4359d46d3fdf196b4a39e74060920 (patch)
treec0d6a9f68787fa8b2d991fe7ee91507e12547339 /usb/kmdf_enumswitches/README.md
parentf7eb738097908a1e32ca2a07a605bba0e85ccb95 (diff)
Diffstat (limited to 'usb/kmdf_enumswitches/README.md')
-rw-r--r--usb/kmdf_enumswitches/README.md18
1 files changed, 17 insertions, 1 deletions
diff --git a/usb/kmdf_enumswitches/README.md b/usb/kmdf_enumswitches/README.md
index 6f8b2195..2bfb8ac3 100644
--- a/usb/kmdf_enumswitches/README.md
+++ b/usb/kmdf_enumswitches/README.md
@@ -19,13 +19,18 @@ This sample is written for the OSR USB-FX2 Learning Kit. The specification for t
To test the device, follow these steps:
1. If you test signed your driver package, you must enable installation of test signed drivers on the target machine. To do so, either press F8 as the target machine comes up from a reboot, or specify **Bcdedit.exe -set TESTSIGNING ON** and reboot. If you use F8, the change only applies until the next reboot.
+
1. Plug in the OSR USB-FX-2 Learning Kit (must be version 2.00 or later).
+
1. In Device Manager, select **Update Driver Software**, **Browse my computer for driver software**, **Let me pick from a list of device drivers on my computer**, **Have Disk**. Navigate to the directory that contains your driver package and select the INF file.
+
1. After the driver installs, verify that the device appears under the **Sample Device** node in Device Manager.
+
1. Flip the switches on the OSR USB-FX-2 hardware board and watch the raw PDO entries appear and disappear under **Sample Device** in Device Manager.
+
1. Right-click a raw PDO entry, select **Properties**, and then click the **Events** tab. Under **Information**, examine the hardware ID for the PDO. It should be something like this:
- **6FDE7521-1B65-48ae-B628-80BE62016026}\OsrUsbFxRawPdo\6&227995e2&0&08**
+ `6FDE7521-1B65-48ae-B628-80BE62016026}\OsrUsbFxRawPdo\6&227995e2&0&08`
The last digit matches the number of the switch that you toggled.
@@ -34,20 +39,31 @@ To test the device, follow these steps:
Here is the overview of the device:
- Device is based on the development board supplied with the Cypress EZ-USB FX2 Development Kit (CY3681).
+
- Contains 1 interface and 3 endpoints (Interrupt IN, Bulk Out, Bulk IN).
+
- Firmware supports vendor commands to query or set LED Bar graph display, 7-segment LED display and query toggle switch states.
+
- Interrupt Endpoint:
- Sends an 8-bit value that represents the state of the switches.
+
- Sent on startup, resume from suspend, and whenever the switch pack setting changes.
+
- Firmware does not de-bounce the switch pack.
+
- One switch change can result in multiple bytes being sent.
+
- Bits are in the reverse order of the labels on the pack
For example, bit 0x80 is labeled 1 on the pack
- Bulk Endpoints are configured for loopback:
+
- Device moves data from IN endpoint to OUT endpoint.
+
- Device does not change the values of the data it receives nor does it internally create any data.
+
- Endpoints are always double buffered.
+
- Maximum packet size depends on speed (64 Full speed, 512 High speed).