- Stephen Rothwell: APM updates
[davej-history.git] / Documentation / usb / usb-serial.txt
blob2fc5ac8eb9414f7a0f5e67ae4029902eafbfa9b4
1 INTRODUCTION
3   The USB serial driver currently supports a number of different USB to
4   serial converter products, as well as some devices that use a serial
5   interface from userspace to talk to the device.
7   See the individual product section below for specific information about
8   the different devices.
11 CONFIGURATION
13   Currently the driver can handle up to 256 different serial interfaces at
14   one time. 
16   If you are not using devfs:
17     The major number that the driver uses is 188 so to use the driver,
18     create the following nodes:
19         mknod /dev/ttyUSB0 c 188 0
20         mknod /dev/ttyUSB1 c 188 1
21         mknod /dev/ttyUSB2 c 188 2
22         mknod /dev/ttyUSB3 c 188 3
23                 .
24                 .
25                 .
26         mknod /dev/ttyUSB254 c 188 254
27         mknod /dev/ttyUSB255 c 188 255
29   If you are using devfs:
30     The devices supported by this driver will show up as
31     /dev/usb/tts/{0,1,...}
33   When the device is connected and recognized by the driver, the driver
34   will print to the system log, which node(s) the device has been bound
35   to.
36   
38 SPECIFIC DEVICES SUPPORTED
41 ConnectTech WhiteHEAT 4 port converter
43   ConnectTech has been very forthcoming with information about their
44   device, including providing a unit to test with. This driver will end up
45   being fully supported.
47 Current status:
48   The device's firmware is downloaded on connection, the new firmware 
49   runs properly and all four ports are successfully recognized and connected.
50   Data can be sent and received through the device on all ports.
51   Hardware flow control needs to be implemented.
54 HandSpring Visor USB docking station
56 Current status:
57   Only when the Visor tries to connect to the host, does the docking
58   station show up as a valid USB device. When this happens, the device is
59   properly enumerated, assigned a port, and then communication _should_ be
60   possible. The driver cleans up properly when the device is removed, or
61   the connection is canceled on the Visor.
63   NOTE:
64     This means that in order to talk to the Visor, the sync button must be
65     pressed BEFORE trying to get any program to communicate to the Visor.
66     This goes against the current documentation for pilot-xfer and other
67     packages, but is the only way that it will work due to the hardware
68     in the Visor.
69   
70   When the device is connected, try talking to it on the second port
71   (this is usually /dev/ttyUSB1 if you do not have any other usb-serial
72   devices in the system.) The system log should tell you which port is
73   the port to use for the HotSync transfer. The "Generic" port can be used
74   for other device communication, such as a PPP link.
76   There is a webpage and mailing lists for this portion of the driver at: 
77   http://usbvisor.sourceforge.net/
80 Keyspan PDA Serial Adapter
82   Single port DB-9 serial adapter, pushed as a PDA adapter for iMacs (mostly
83   sold in Macintosh catalogs, comes in a translucent white/green dongle).
84   Fairly simple device. Firmware is homebrew.
86 Current status:
87  Things that work:
88    basic input/output (tested with 'cu')
89    blocking write when serial line can't keep up
90    changing baud rates (up to 115200)
91    getting/setting modem control pins (TIOCM{GET,SET,BIS,BIC})
92    sending break (although duration looks suspect)
93  Things that don't:
94    device strings (as logged by kernel) have trailing binary garbage
95    device ID isn't right, might collide with other Keyspan products
96    changing baud rates ought to flush tx/rx to avoid mangled half characters
97  Big Things on the todo list:
98    parity, 7 vs 8 bits per char, 1 or 2 stop bits
99    HW flow control
100    not all of the standard USB descriptors are handled: Get_Status, Set_Feature
101    O_NONBLOCK, select()
104 Keyspan USA-series Serial Adapters
106   Single and Dual port adapters - driver uses Keyspan supplied 
107   firmware and is being developed with their support.
108   
109   Driver isn't as far advanced as Keyspan PDA driver mentioned above.
110   
111 Current status:
112  Things that work:
113    Firmware upload for USA-18X, USA-28, USA-28X, USA-19 and USA-19W 
114    Simple character I/O fixed at 9600 baud on USA-19 only
115    
116  Things that don't:
117    Everything else. (for now...)
118    
119  Big Things on the todo list:
120    Driver is in infancy, much functionality remains to be added
123 FTDI Single Port Serial Driver
125   This is a single port DB-25 serial adapter. More information about this
126   device and the Linux driver can be found at:
127         http://reality.sgi.com/bryder_wellington/ftdi_sio/
130 ZyXEL omni.net lcd plus ISDN TA
132   This is an ISDN TA. Please report both successes and troubles to the
133   author at omninet@kroah.com
136 Digi AccelePort Driver
138   This driver supports the Digi AccelePort USB 2 and 4 devices, 2 port
139   (plus a parallel port) and 4 port USB serial converters.  The driver
140   does NOT yet support the Digi AccelePort USB 8.
142   This driver works under SMP with the usb-uhci driver.  It does not
143   work under SMP with the uhci driver.
145   The driver is generally working, though we still have a few more ioctls
146   to implement and final testing and debugging to do.  The paralled port
147   on the USB 2 is supported as a serial to parallel converter; in other
148   words, it appears as another USB serial port on Linux, even though
149   physically it is really a parallel port.  The Digi Acceleport USB 8
150   is not yet supported.
152   Please contact Peter Berger (pberger@brimson.com) or Al Borchers
153   (alborchers@steinerpoint.com) for questions or problems with this
154   driver.
157 Belkin USB Serial Adapter F5U103
159   Single port DB-9/PS-2 serial adapter from Belkin with firmware by eTEK Labs.
161 Current status:
162   The following have been tested and work:
163     Baud rate    300-230400               
164     Data bits    5-8
165     Stop bits    1-2
166     Parity       N,E,O,M,S
167     Handshake    None, Software (XON/XOFF), Hardware (CTSRTS,CTSDTR)*
168     Break        Set and clear
169     Line contrl  Input/Output query and control **
171     *  Hardware input flow control is only enabled for firmware
172        levels above 2.06.  Read source code comments describing Belkin
173        firmware errata.  Hardware output flow control is working for all
174        firmware versions.
175     ** Queries of inputs (CTS,DSR,CD,RI) show the last
176        reported state.  Queries of outputs (DTR,RTS) show the last
177        requested state and may not reflect current state as set by
178        automatic hardware flow control.
180 TO DO List:
181   -- Add true modem contol line query capability.  Currently tracks the
182      states reported by the interrupt and the states requested.
183   -- Add error reporting back to application for UART error conditions.
184   -- Add support for flush ioctls.
185   -- Add everything else that is missing :)
188 Empeg empeg-car Mark I/II Driver (empeg.c)
190   This is an experimental driver to provide connectivity support for the
191   client synchronization tools for an Empeg empeg-car mp3 player.
193   Tips:
195     * Don't forget to create the device nodes for ttyUSB{0,1,2,...}
196     * modprobe empeg (modprobe is your friend)
197     * emptool --usb /dev/ttyUSB0 (or whatever you named your device node)
199   The driver is still pretty new, so some testing 'in the wild' would be
200   helpful. :)
203 MCT USB Single Port Serial Adapter U232
205  This driver is for the MCT USB-RS232 Converter (25 pin, Model No.
206  U232-P25) from Magic Control Technology Corp. (there is also a 9 pin
207  Model No. U232-P9). More information about this device can be found
208  at the manufacture's web-site: http://www.mct.com.tw.
210  The driver is generally working, though it still needs some more
211  testing. It is derived from the Belkin USB Serial Adapter F5U103
212  driver and its TODO list is valid for this driver as well.
215 Generic Serial driver
217   If your device is not one of the above listed devices, compatible with
218   the above models, you can try out the "generic" interface. This
219   interface does not provide any type of control messages sent to the
220   device, and does not support any kind of device flow control. All that
221   is required of your device is that it has at least one bulk in endpoint,
222   or one bulk out endpoint. 
223   
224   To enable the generic driver to recognize your device, build the driver
225   as a module and load it by the following invocation:
226         insmod usb-serial vendor=0x#### product=0x####
227   where the #### is replaced with the hex representation of your device's
228   vendor id and product id.
230   This driver has been successfully used to connect to the NetChip USB
231   development board, providing a way to develop USB firmware without
232   having to write a custom driver.
235 CONTACT:
237   If anyone has any problems using this driver, with any of the above
238   specified products, please contact me, or join the Linux-USB mailing
239   list (information on joining the mailing list, as well as a link to its
240   searchable archive is at http://www.linux-usb.org/ )
243 Greg Kroah-Hartman
244 greg@kroah.com