소스 검색

fix hid_test.py for hid inout to correctly preceeded with dummy reportID

add note for install hidapi on windows
hathach 4 년 전
부모
커밋
312fd5f839
2개의 변경된 파일21개의 추가작업 그리고 10개의 파일을 삭제
  1. 4 1
      examples/device/hid_generic_inout/hid_test.py
  2. 17 9
      examples/device/hid_generic_inout/src/main.c

+ 4 - 1
examples/device/hid_generic_inout/hid_test.py

@@ -11,7 +11,10 @@ for dict in hid.enumerate(USB_VID):
     if dev:
         while True:
             # Get input from console and encode to UTF8 for array of chars.
-            str_out = input("Send text to HID Device : ").encode('utf-8')
+            # hid generic inout is single report therefore by HIDAPI requirement
+            # it must be preceeded with 0x00 as dummy reportID
+            str_out = b'\x00'
+            str_out += input("Send text to HID Device : ").encode('utf-8')
             dev.write(str_out)
             str_in = dev.read(64)
             print("Received from HID Device:", str_in, '\n')

+ 17 - 9
examples/device/hid_generic_inout/src/main.c

@@ -36,16 +36,24 @@
  *
  * There are 2 ways to test the sketch
  * 1. Using nodejs
- *    - Install nodejs and npm to your PC
- *    - Install excellent node-hid (https://github.com/node-hid/node-hid) by
- *      $ npm install node-hid
- *    - Run provided hid test script
- *      $ node hid_test.js
+ * - Install nodejs and npm to your PC
  *
- * 2. Using python hidRun
- *    - Python and `hid` package is required, for installation please follow https://pypi.org/project/hid/
- *    - Run provided hid test script to send and receive data to this device.
- *      $ python3 hid_test.py
+ * - Install excellent node-hid (https://github.com/node-hid/node-hid) by
+ *   $ npm install node-hid
+ *
+ * - Run provided hid test script
+ *   $ node hid_test.js
+ *
+ * 2. Using python
+ * - Install `hid` package (https://pypi.org/project/hid/) by
+ *   $ pip install hid
+ *
+ * - hid package replies on hidapi (https://github.com/libusb/hidapi) for backend,
+ *   which already available in Linux. However on windows, you may need to download its dlls from their release page and
+ *   copy it over to folder where python is installed.
+ *
+ * - Run provided hid test script to send and receive data to this device.
+ *   $ python3 hid_test.py
  */
 
 //--------------------------------------------------------------------+