> Doesn't USB sort-of want to know quite a lot of details about such > "byte streams" ? > Total bandwidth, latency vs efficiency, etc, etc... > That stuff only applies to synchronous endpoints, which are used for things like streaming audio/video etc. where timing is critical and needs to be enforced with dropped frames. In general, the only parameter for an endpoint is type (control, bulk, interrupt, or isochronous) and max transfer size (up to 512 bytes for HS/bulk, 16 for interrupt (I think - not sure about this one but I think windows has some issue with larger sizes) and 64 otherwise). The main issue with using USB for hobby stuff is that, unless you use an existing protocol like CDC, you need a driver on the PC side which is a pain to debug in parallel with your application (and has a whole string of consequences for distributing your hardware etc.). -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist