ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / Documentation / usb / usb-serial.txt
1 INTRODUCTION
2
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.
6
7   See the individual product section below for specific information about
8   the different devices.
9
10
11 CONFIGURATION
12
13   Currently the driver can handle up to 256 different serial interfaces at
14   one time. 
15
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
28
29   If you are using devfs:
30     The devices supported by this driver will show up as
31     /dev/usb/tts/{0,1,...}
32
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   
37
38 SPECIFIC DEVICES SUPPORTED
39
40
41 ConnectTech WhiteHEAT 4 port converter
42
43   ConnectTech has been very forthcoming with information about their
44   device, including providing a unit to test with.
45
46   The driver is officially supported by Connect Tech Inc.
47   http://www.connecttech.com
48
49   For any questions or problems with this driver, please contact
50   Stuart MacDonald at stuartm@connecttech.com
51
52
53 HandSpring Visor, Palm USB, and Clié USB driver
54
55   This driver works with all HandSpring USB, Palm USB, and Sony Clié USB
56   devices.
57
58   Only when the device tries to connect to the host, will the device show
59   up to the host as a valid USB device. When this happens, the device is
60   properly enumerated, assigned a port, and then communication _should_ be
61   possible. The driver cleans up properly when the device is removed, or
62   the connection is canceled on the device.
63
64   NOTE:
65     This means that in order to talk to the device, the sync button must be
66     pressed BEFORE trying to get any program to communicate to the device.
67     This goes against the current documentation for pilot-xfer and other
68     packages, but is the only way that it will work due to the hardware
69     in the device.
70   
71   When the device is connected, try talking to it on the second port
72   (this is usually /dev/ttyUSB1 if you do not have any other usb-serial
73   devices in the system.) The system log should tell you which port is
74   the port to use for the HotSync transfer. The "Generic" port can be used
75   for other device communication, such as a PPP link.
76
77   For some Sony Clié devices, /dev/ttyUSB0 must be used to talk to the
78   device.  This is true for all OS version 3.5 devices, and most devices
79   that have had a flash upgrade to a newer version of the OS.  See the
80   kernel system log for information on which is the correct port to use.
81
82   If after pressing the sync button, nothing shows up in the system log,
83   try resetting the device, first a hot reset, and then a cold reset if
84   necessary.  Some devices need this before they can talk to the USB port
85   properly.
86   
87   Devices that are not compiled into the kernel can be specified with module
88   parameters.  e.g. modprobe visor vendor=0x54c product=0x66
89   
90   There is a webpage and mailing lists for this portion of the driver at:
91   http://usbvisor.sourceforge.net/
92
93   For any questions or problems with this driver, please contact Greg
94   Kroah-Hartman at greg@kroah.com
95
96
97 PocketPC PDA Driver
98
99   This driver can be used to connect to Compaq iPAQ, HP Jornada, Casio EM500
100   and other PDAs running Windows CE 3.0 or PocketPC 2002 using a USB
101   cable/cradle.
102   Most devices supported by ActiveSync are supported out of the box.
103   For others, please use module parameters to specify the product and vendor
104   id. e.g. modprobe ipaq vendor=0x3f0 product=0x1125
105
106   The driver presents a serial interface (usually on /dev/ttyUSB0) over
107   which one may run ppp and establish a TCP/IP link to the PDA. Once this
108   is done, you can transfer files, backup, download email etc. The most
109   significant advantage of using USB is speed - I can get 73 to 113
110   kbytes/sec for download/upload to my iPAQ.
111
112   This driver is only one of a set of components required to utilize
113   the USB connection. Please visit http://synce.sourceforge.net which
114   contains the necessary packages and a simple step-by-step howto.
115
116   Once connected, you can use Win CE programs like ftpView, Pocket Outlook
117   from the PDA and xcerdisp, synce utilities from the Linux side.
118
119   To use Pocket IE, follow the instructions given at
120   http://www.tekguru.co.uk/EM500/usbtonet.htm to achieve the same thing
121   on Win98. Omit the proxy server part; Linux is quite capable of forwarding
122   packets unlike Win98. Another modification is required at least for the
123   iPAQ - disable autosync by going to the Start/Settings/Connections menu
124   and unchecking the "Automatically synchronize ..." box. Go to
125   Start/Programs/Connections, connect the cable and select "usbdial" (or
126   whatever you named your new USB connection). You should finally wind
127   up with a "Connected to usbdial" window with status shown as connected.
128   Now start up PIE and browse away.
129
130   If it doesn't work for some reason, load both the usbserial and ipaq module
131   with the module parameter "debug" set to 1 and examine the system log.
132   You can also try soft-resetting your PDA before attempting a connection.
133
134   Other functionality may be possible depending on your PDA. According to
135   Wes Cilldhaire <billybobjoehenrybob@hotmail.com>, with the Toshiba E570,
136   ...if you boot into the bootloader (hold down the power when hitting the
137   reset button, continuing to hold onto the power until the bootloader screen
138   is displayed), then put it in the cradle with the ipaq driver loaded, open
139   a terminal on /dev/ttyUSB0, it gives you a "USB Reflash" terminal, which can
140   be used to flash the ROM, as well as the microP code..  so much for needing
141   Toshiba's $350 serial cable for flashing!! :D
142   NOTE: This has NOT been tested. Use at your own risk.
143  
144   For any questions or problems with the driver, please contact Ganesh
145   Varadarajan <ganesh@veritas.com>
146
147
148 Keyspan PDA Serial Adapter
149
150   Single port DB-9 serial adapter, pushed as a PDA adapter for iMacs (mostly
151   sold in Macintosh catalogs, comes in a translucent white/green dongle).
152   Fairly simple device. Firmware is homebrew.
153   This driver also works for the Xircom/Entrgra single port serial adapter.
154
155   Current status:
156    Things that work:
157      basic input/output (tested with 'cu')
158      blocking write when serial line can't keep up
159      changing baud rates (up to 115200)
160      getting/setting modem control pins (TIOCM{GET,SET,BIS,BIC})
161      sending break (although duration looks suspect)
162    Things that don't:
163      device strings (as logged by kernel) have trailing binary garbage
164      device ID isn't right, might collide with other Keyspan products
165      changing baud rates ought to flush tx/rx to avoid mangled half characters
166    Big Things on the todo list:
167      parity, 7 vs 8 bits per char, 1 or 2 stop bits
168      HW flow control
169      not all of the standard USB descriptors are handled: Get_Status, Set_Feature
170      O_NONBLOCK, select()
171
172   For any questions or problems with this driver, please contact Brian
173   Warner at warner@lothar.com 
174
175
176 Keyspan USA-series Serial Adapters
177
178   Single, Dual and Quad port adapters - driver uses Keyspan supplied 
179   firmware and is being developed with their support.
180   
181   Current status:
182     The USA-18X, USA-28X, USA-19, USA-19W and USA-49W are supported and
183     have been pretty throughly tested at various baud rates with 8-N-1
184     character settings.  Other character lengths and parity setups are
185     presently untested.
186
187     The USA-28 isn't yet supported though doing so should be pretty
188     straightforward.  Contact the maintainer if you require this
189     functionality.
190   
191   More information is available at:
192         http://misc.nu/hugh/keyspan.html
193    
194   For any questions or problems with this driver, please contact Hugh
195   Blemings at hugh@misc.nu
196
197
198 FTDI Single Port Serial Driver
199
200   This is a single port DB-25 serial adapter. More information about this
201   device and the Linux driver can be found at:
202         http://reality.sgi.com/bryder_wellington/ftdi_sio/
203
204   For any questions or problems with this driver, please contact Bill Ryder
205   at bryder@sgi.com
206
207
208 ZyXEL omni.net lcd plus ISDN TA
209
210   This is an ISDN TA. Please report both successes and troubles to
211   azummo@towertech.it
212
213
214 Digi AccelePort Driver
215
216   This driver supports the Digi AccelePort USB 2 and 4 devices, 2 port
217   (plus a parallel port) and 4 port USB serial converters.  The driver
218   does NOT yet support the Digi AccelePort USB 8.
219
220   This driver works under SMP with the usb-uhci driver.  It does not
221   work under SMP with the uhci driver.
222
223   The driver is generally working, though we still have a few more ioctls
224   to implement and final testing and debugging to do.  The paralled port
225   on the USB 2 is supported as a serial to parallel converter; in other
226   words, it appears as another USB serial port on Linux, even though
227   physically it is really a parallel port.  The Digi Acceleport USB 8
228   is not yet supported.
229
230   Please contact Peter Berger (pberger@brimson.com) or Al Borchers
231   (alborchers@steinerpoint.com) for questions or problems with this
232   driver.
233
234
235 Belkin USB Serial Adapter F5U103
236
237   Single port DB-9/PS-2 serial adapter from Belkin with firmware by eTEK Labs.
238   The Peracom single port serial adapter also works with this driver, as
239   well as the GoHubs adapter.
240
241   Current status:
242     The following have been tested and work:
243       Baud rate    300-230400               
244       Data bits    5-8
245       Stop bits    1-2
246       Parity       N,E,O,M,S
247       Handshake    None, Software (XON/XOFF), Hardware (CTSRTS,CTSDTR)*
248       Break        Set and clear
249       Line contrl  Input/Output query and control **
250
251       *  Hardware input flow control is only enabled for firmware
252          levels above 2.06.  Read source code comments describing Belkin
253          firmware errata.  Hardware output flow control is working for all
254          firmware versions.
255       ** Queries of inputs (CTS,DSR,CD,RI) show the last
256          reported state.  Queries of outputs (DTR,RTS) show the last
257          requested state and may not reflect current state as set by
258          automatic hardware flow control.
259
260   TO DO List:
261     -- Add true modem contol line query capability.  Currently tracks the
262        states reported by the interrupt and the states requested.
263     -- Add error reporting back to application for UART error conditions.
264     -- Add support for flush ioctls.
265     -- Add everything else that is missing :)
266
267   For any questions or problems with this driver, please contact William
268   Greathouse at wgreathouse@smva.com
269
270
271 Empeg empeg-car Mark I/II Driver
272
273   This is an experimental driver to provide connectivity support for the
274   client synchronization tools for an Empeg empeg-car mp3 player.
275
276   Tips:
277     * Don't forget to create the device nodes for ttyUSB{0,1,2,...}
278     * modprobe empeg (modprobe is your friend)
279     * emptool --usb /dev/ttyUSB0 (or whatever you named your device node)
280
281   For any questions or problems with this driver, please contact Gary
282   Brubaker at xavyer@ix.netcom.com
283
284
285 MCT USB Single Port Serial Adapter U232
286
287   This driver is for the MCT USB-RS232 Converter (25 pin, Model No.
288   U232-P25) from Magic Control Technology Corp. (there is also a 9 pin
289   Model No. U232-P9). More information about this device can be found at
290   the manufacture's web-site: http://www.mct.com.tw.
291
292   The driver is generally working, though it still needs some more testing.
293   It is derived from the Belkin USB Serial Adapter F5U103 driver and its
294   TODO list is valid for this driver as well.
295
296   This driver has also been found to work for other products, which have
297   the same Vendor ID but different Product IDs. Sitecom's U232-P25 serial
298   converter uses Product ID 0x230 and Vendor ID 0x711 and works with this
299   driver. Also, D-Link's DU-H3SP USB BAY also works with this driver.
300
301   For any questions or problems with this driver, please contact Wolfgang
302   Grandegger at wolfgang@ces.ch
303
304
305 Inside Out Networks Edgeport Driver
306
307   This driver supports all devices made by Inside Out Networks, specifically
308   the following models:
309        Edgeport/4
310        Rapidport/4
311        Edgeport/4t
312        Edgeport/2
313        Edgeport/4i
314        Edgeport/2i
315        Edgeport/421
316        Edgeport/21
317        Edgeport/8
318        Edgeport/8 Dual
319        Edgeport/2D8
320        Edgeport/4D8
321        Edgeport/8i
322        Edgeport/2 DIN
323        Edgeport/4 DIN
324        Edgeport/16 Dual
325
326   For any questions or problems with this driver, please contact Greg
327   Kroah-Hartman at greg@kroah.com
328
329
330 REINER SCT cyberJack pinpad/e-com USB chipcard reader
331    
332   Interface to ISO 7816 compatible contactbased chipcards, e.g. GSM SIMs.
333   
334   Current status:
335     This is the kernel part of the driver for this USB card reader.
336     There is also a user part for a CT-API driver available. A site
337     for downloading is TBA. For now, you can request it from the
338     maintainer (linux-usb@sii.li).
339
340   For any questions or problems with this driver, please contact
341   linux-usb@sii.li
342
343
344 Prolific PL2303 Driver
345
346   This driver support any device that has the PL2303 chip from Prolific
347   in it.  This includes a number of single port USB to serial
348   converters and USB GPS devices.  Devices from Aten (the UC-232) and
349   IO-Data work with this driver.
350
351   For any questions or problems with this driver, please contact Greg
352   Kroah-Hartman at greg@kroah.com
353   
354
355 KL5KUSB105 chipset / PalmConnect USB single-port adapter
356   
357 Current status:
358   The driver was put together by looking at the usb bus transactions
359   done by Palm's driver under Windows, so a lot of functionality is
360   still missing.  Notably, serial ioctls are sometimes faked or not yet
361   implemented.  Support for finding out about DSR and CTS line status is
362   however implemented (though not nicely), so your favorite autopilot(1)
363   and pilot-manager -daemon calls will work.  Baud rates up to 115200
364   are supported, but handshaking (software or hardware) is not, which is
365   why it is wise to cut down on the rate used is wise for large
366   transfers until this is settled.
367   
368 Options supported:
369   If this driver is compiled as a module you can pass the following
370   options to it:
371   debug                 - extra verbose debugging info
372                           (default: 0; nonzero enables)
373   use_lowlatency        - use low_latency flag to speed up tty layer
374                           when reading from from the device.
375                           (default: 0; nonzero enables)
376
377   See http://www.uuhaus.de/linux/palmconnect.html for up-to-date
378   information on this driver.
379
380
381 Generic Serial driver
382
383   If your device is not one of the above listed devices, compatible with
384   the above models, you can try out the "generic" interface. This
385   interface does not provide any type of control messages sent to the
386   device, and does not support any kind of device flow control. All that
387   is required of your device is that it has at least one bulk in endpoint,
388   or one bulk out endpoint. 
389   
390   To enable the generic driver to recognize your device, build the driver
391   as a module and load it by the following invocation:
392         insmod usbserial vendor=0x#### product=0x####
393   where the #### is replaced with the hex representation of your device's
394   vendor id and product id.
395
396   This driver has been successfully used to connect to the NetChip USB
397   development board, providing a way to develop USB firmware without
398   having to write a custom driver.
399
400   For any questions or problems with this driver, please contact Greg
401   Kroah-Hartman at greg@kroah.com
402
403
404 CONTACT:
405
406   If anyone has any problems using these drivers, with any of the above
407   specified products, please contact the specific driver's author listed
408   above, or join the Linux-USB mailing list (information on joining the
409   mailing list, as well as a link to its searchable archive is at
410   http://www.linux-usb.org/ )
411
412
413 Greg Kroah-Hartman
414 greg@kroah.com