系统:ubuntu16.04
我看GUI的源码是qt编译的,usb通信是用的hidapi,都可以跨平台的,为什么我编译成功却连接不上?单步调试发现hidapi无法打开设备,是缺少什么驱动还是其他什么?或者说还有其他什么sdk支持linux的。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
感谢您使用TI的DLP产品。
目前TI官方release的版本是基于windows的,在Linux上使用时可能会遇到一些问题。在E2E论坛上有一个类似的问题,请参考是否对您有帮助:
your problem probably is in the udev configuration, which is necessary to allow userspace programs to access usb devices.
You can compile the hidapi in a libusb or hidraw version, and I found libusb to work better:
# using hidraw
#unix: !macx: SOURCES += ../GUI/hidapi-master/linux/hid.c
#CONFIG += link_pkgconfig
#PKGCONFIG += libudev
# using libusb
unix: !macx: SOURCES += ../GUI/hidapi-master/libusb/hid.c
CONFIG += link_pkgconfig
PKGCONFIG += libusb-1.0
My /etc/udev/rules.d/lightcrafter.rules looks like this:
# for libusb, kernel v < 2.6.24
SUBSYSTEM=="usb_device", ACTION=="add", ATTRS{idVendor}=="0451", ATTRS{idProduct}=="6401", GROUP="plugdev", MODE="0666"
# for libusb, kernel v > 2.6.24
SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="0451", ATTRS{idProduct}=="6401", GROUP="plugdev", MODE="0666"
# for hidraw version of hidapi
KERNEL=="hidraw*", ATTRS{busnum}=="1", ATTRS{idVendor}=="0451", ATTRS{idProduct}=="6401", GROUP="plugdev", MODE="0666"
问题参考链接如下:

希望这个回答可以帮助到您。