Olin Lathrop wrote: > For this project I could probably make due with the device acting like a > HID, but part of my motivation for doing this project is to have a full > native USB implementation from host library to PIC pins that I can easily > re-use for other projects. I'm planning on making the application > interface > to the USB device look like a bi-directional stream of bytes. This will > make it possible to use other low level connection schemes to a device > without the higher layers of the software needing to know the > difference. A > bi-directional stream of bytes makes the most sense as you can get pretty > much anything with that with the right high level protocol. And, other low > level interfaces provide this too, like RS-232 and TCP. Hi Olin, I'm not sure whether this will be exactly what you want, but over the past little while I've been playing with the 2550 and written a C library for SDCC. It's available for download here: http://www.geocities.com/tegale2001/downloads/pickit2.tar.gz usb.c and comms.c are the places where the main USB work is done. Unfortunately, no support for interrupt pipes as yet, but bulk ones appear to go pretty well (using linux here for the client). As suggested by the filename, it's intended for the PICkit 2 - the goal is to get STDP for dspics working, but unfortunately at the moment it doesn't seem to be working, whether due to not entering the mode or not recognising commands I'm not sure. If anyone figures out what's wrong, I'd be very grateful! Hope this is of some use Tim PS SDCC version used was from about June - not sure whether the current one will still work -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist