[請益] USB device開發請益

作者: CCT63 (CCT)   2021-11-22 23:13:34
最近因為想要弄一些東西,所以開始自修USB相關開發
因為自己對USB device / host / host driver幾乎是完全陌生,
所以想先跳過host driver的部分,之後再回來補QQ
目前想要完成的目標:
1. PC 跟device能夠透過USB交換資料,
例如PC端會需要傳一大筆資料給device & device也須做一樣的事
Q1: 參考了一些範例code,都是用vendor specific + bulk來做,
但是這樣在PC端是不是要額外寫driver?
Q2: 如果用HID class,是否能夠設定成bulk傳輸?
Q3: 如果用mass storage class + Bulk來做,PC端需要額外driver嗎?
Q4: PC端有辦法繞過driver來做到我的目標嗎?
2. PC端可以將audio raw data透過USB到device,device再將聲音撥出
=> 這部分目前還沒想法XD
謝謝
作者: james732 (好人超)   2021-11-22 23:22:00
driver端可以考慮用winusb可以省一些功
作者: gn00670191 (我想換帳號...)   2021-11-23 00:05:00
有點不太懂你想要做什麼,是寫fw, driver, 還是application
作者: enthos (影斯作業系統)   2021-11-23 00:28:00
作者: MOONY135 (談無慾)   2021-11-23 07:25:00
Hidapi
作者: doranako (真愛無限)   2021-11-23 07:27:00
我猜原po想有沒有現成driver或原生支援,然後只靠app做到資料傳輸跟聲音輸出
作者: hizuki (ayaka)   2021-11-23 08:23:00
libusb可以參考,如果不需要太高效率
作者: shooter555 (shooter)   2021-11-23 09:30:00
libusb應該可以處理掉很多東西 只要做應用的部份但你要先錄一下前面initial要設定什麼 configure選哪個, interface的alt要不要切之類的 然後最後在丟data到endpoint話說聲音應該要用isochronous 不是用bulk喔喔 看懂你的問題了 如果你已經找到透過usb傳遞資料的方法 先把資料傳過去device (linux?) device再把data透過alsa播放還是用libusb丟都可以
作者: wsad50232 (阿豐)   2021-11-23 13:14:00
Device 可以買silicon lab 的 efm8 開發板來試
作者: zerobx (隨意)   2021-11-26 22:06:00
kernel document看一下

Links booklink

Contact Us: admin [ a t ] ucptt.com