The raw USB bus
In some circumstances, a USB device may lack a dedicated device driver. In this case, a GNU/Linux system simply enumerates it, and then, no driver is loaded at all. In this situation, the user cannot get access to the new USB device in any usual manner, except by using raw commands directly over the bus. Simply speaking, it consists of directly sending the USB messages to the new device and then managing the answers without using any dedicated driver at all.
You should note that if this new device has no available driver, then it cannot be seen from the system as any usual device (that is, a keyboard or a storage disk), so we have no /dev/event2
or /dev/sdb
entries to use! However, even if this situation may appear quite strange and difficult, in reality, it's not so terrible. In fact, for very simple devices, we can implement a simple management code in user space using the libusb
library on the host PC.
Tip
We can use the libusb
library on the BeagleBone Black too if...