Kirk, This may not jive with synth manufacturers, but I am keen on standard USB devices that "just work" because they use the standard drivers. In the case of a USB serial port, the CDC (Communications Device Class) already provides a COM port class driver for the serial device (this is true on both linux and windows per the USB CDC spec): http://www.usb.org/developers/devclass_docs/usbcdc11.pdf Sorry the spec is only available in pdf I have firmware that implements the USB CDC http://www.atmel.com/dyn/resources/prod_documents/doc6269.pdf Sorry again this is only available in pdf The CDC can be very complicated depending on the device, but it can also be very simple in the form of what appears as a virtual COM port to the system. This is what I am working towards, so the existing USB class driver in the kernel will already support the device. The source for the USB serial device is in /usr/src/linux/drivers/usb/serial/usbserial.c Assuming that a virtual COM port is available, the speech synth connecting through this microcontroller with USB device hardware, and implementing USB CDC ACM in firmware, should be very similar to existing RS232 serial doubletalk driver. In fact, the microcontroller simply functions as a USB device, with the firmware correctly implementing CDC, all the firmware does is pass the data out a TTL level UART to the speech hardware. I will take a look at the existing speakup doubletalk code soon and see if I can find a way to make this work ... -- Doug Kirk Reiser wrote: I need to write speakup device drivers to handle the usb synths such as the TrippleTalk and DECTalk usb synths. I have not started working on that yet