| 1 | = drvAsynUSBHID (汎用USB HID用asynPortDriver) = |
| 2 | |
| 3 | [https://www.minicircuits.com/WebStore/dashboard.html?model=USB-SP4T-63 mini-circuits社USB-SP4T-63]をEPICSで制御するためのIOCをBBB上に作成することになった。[[br]] |
| 4 | このデバイスは制御するためのIFがUSBしかなく、OSからはUSB HIDデバイスとして認識されるという代物だった。[[br]] |
| 5 | 帯名さんが事前にpython + [https://github.com/signal11/hidapi HIDAPI]を使って制御できることを確認してくれていたので、制御自体は簡単であることがわかっていた。[[br]] |
| 6 | ちょうど、drvAsynI2Cを触ったこともあり、いっその事 USB HID デバイスで汎用的に使用できるものを asynPortDriver で作ってしまおうということになった。[[br]] |
| 7 | |
| 8 | == 概要 == |
| 9 | |
| 10 | ドライバサポート名は、drvAsynUSBHID とした。[[br]] |
| 11 | |
| 12 | * デバイスのオープンやデータの送受信は drvAsynUSBHIDで行う。 |
| 13 | * 送受信するデータは streamdevice を使って解析する。 |
| 14 | * データの送受信は 65 byte単位で行う。 |
| 15 | * USBデバイスへのアクセスには HIDAPI を使う。 |
| 16 | |
| 17 | 何故、一回の送受信データが65byteなのか詳しくはわかりませんが、今回は深く突っ込みません(^^;)。[[br]] |
| 18 | |
| 19 | |
| 20 | |
| 21 | |
| 22 | |
| 23 | |
| 24 | |
| 25 | |
| 26 | |
| 27 | |
| 28 | |
| 29 | |
| 30 | |
| 31 | |
| 32 | |
| 33 | |
| 34 | |
| 35 | |
| 36 | |
| 37 | == 参照HP == |
| 38 | |
| 39 | [https://github.com/signal11/hidapi signal11/hidapi][[br]] |
| 40 | [http://www.signal11.us/oss/hidapi/ HID API for Linux, Mac OS X, and Windows][[br]] |
| 41 | [http://rilassaru.blog.jp/archives/1808192.html HIDAPI:Signal11の罠][[br]] |
| 42 | |