linux 查看libusb版本,linux – 从使用libusb的设备读取问题
情況是這樣的:我有一個USB設備(我試圖與之交談的自定義設備)有兩個端點,一個寫入設備,一個從設備讀取.兩者都是批量轉移.每個通信事務采取以下形式:(1)向設備寫入命令(2)讀取響應.我正在使用libusb(版本0.1而不是1.0 beta)來實際執行通信.
在Windows上,一切都很好.我可以連接設備,聲稱界面并愉快地溝通.但是,在Ubuntu(標準Hardy桌面安裝)中,雖然我可以連接到設備并寫入它,但所有讀取操作都會失敗,并顯示libusb報告的錯誤“錯誤提交URB:無效參數”(錯誤代碼-22).
如果我檢查/ var / log / messages,我會看到在嘗試讀取的同時記錄了一條警告消息:“sysfs:duplicate filename’usbdev4.3_ep81’無法創建” – 這與設備相符(確實是在那輛公共汽車和它的端點81我試圖讀取).
所以…有人看到使用libusb的類似問題,或者有任何想法如何解決它?
解決方法:
事實證明,這是設備本身描述符中的錯誤配置. lsusb -v顯示了一個從未使用的額外接口,它具有單個等時端點0x81.由于這從未使用過(并且從未經過我所見過的測試,因此很可能甚至沒有正確定義)我將其從設備描述符中完全刪除(在固件中).
現在我有一個完全正常工作的設備.為什么linux拒絕從設備上讀取,但Windows工作得很好,我不知道,但它肯定讓我瘋狂追逐.
標簽:linux,usb,libusb
來源: https://codeday.me/bug/20190627/1302651.html
總結
以上是生活随笔為你收集整理的linux 查看libusb版本,linux – 从使用libusb的设备读取问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux查看无线网卡频率,查看无线网卡
- 下一篇: linux项目运行日志查看,Linux项