- do a little more setup before connecting the two sides (device & host). I can go ahead and set the configuration on the device (since controllers generally have just a single config). Also, the endpoint for HID reports, usually sends a few messages (with initial byte 0x01,0x02,0x03) before starting to send reports (which have initial byte 0x00). I can queue up those non report transmissions before starting to relay, and send those to the host without bothering the device.
- reduce the polling time
We're hoping to have the basic functionality of our project done in a couple weeks. As a high level overview it connects a USB Device proxy to a USB Host proxy, and offers Injectors and Filters that modify the packets going from one side to the other.
some examples of a Device proxy:
- connect to a physical device using libusb
- a device emulated in software on the BBB
- a device (emulated or real) tunneled over TCP/IP
- connect to a physical host using gadgetfs (sort of like libusb but for talking to hosts rather than devices)
- connect to a host emulated in software on the BBB
- connect to a host (or multiple hosts) over TCP/IP
- listen for packets over TCP/IP and send them to the device and/or host
- replay packets from a log file
- send all packets over TCP/IP (act as a USB sniffer)
- modify the content of specific packets
- drop specific packets
- send packets over TCP/IP to a remote host which then decides whether to modify or drop them
No comments:
Post a Comment