diff options
Diffstat (limited to 'Documentation/usb/usb-serial.txt')
-rw-r--r-- | Documentation/usb/usb-serial.txt | 470 |
1 files changed, 470 insertions, 0 deletions
diff --git a/Documentation/usb/usb-serial.txt b/Documentation/usb/usb-serial.txt new file mode 100644 index 000000000000..f001cd93b79b --- /dev/null +++ b/Documentation/usb/usb-serial.txt | |||
@@ -0,0 +1,470 @@ | |||
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 | Cypress M8 CY4601 Family Serial Driver | ||
215 | |||
216 | This driver was in most part developed by Neil "koyama" Whelchel. It | ||
217 | has been improved since that previous form to support dynamic serial | ||
218 | line settings and improved line handling. The driver is for the most | ||
219 | part stable and has been tested on an smp machine. (dual p2) | ||
220 | |||
221 | Chipsets supported under CY4601 family: | ||
222 | |||
223 | CY7C63723, CY7C63742, CY7C63743, CY7C64013 | ||
224 | |||
225 | Devices supported: | ||
226 | |||
227 | -DeLorme's USB Earthmate (SiRF Star II lp arch) | ||
228 | -Cypress HID->COM RS232 adapter | ||
229 | |||
230 | Note: Cypress Semiconductor claims no affiliation with the | ||
231 | the hid->com device. | ||
232 | |||
233 | Most devices using chipsets under the CY4601 family should | ||
234 | work with the driver. As long as they stay true to the CY4601 | ||
235 | usbserial specification. | ||
236 | |||
237 | Technical notes: | ||
238 | |||
239 | The Earthmate starts out at 4800 8N1 by default... the driver will | ||
240 | upon start init to this setting. usbserial core provides the rest | ||
241 | of the termios settings, along with some custom termios so that the | ||
242 | output is in proper format and parsable. | ||
243 | |||
244 | The device can be put into sirf mode by issuing NMEA command: | ||
245 | $PSRF100,<protocol>,<baud>,<databits>,<stopbits>,<parity>*CHECKSUM | ||
246 | $PSRF100,0,9600,8,1,0*0C | ||
247 | |||
248 | It should then be sufficient to change the port termios to match this | ||
249 | to begin communicating. | ||
250 | |||
251 | As far as I can tell it supports pretty much every sirf command as | ||
252 | documented online available with firmware 2.31, with some unknown | ||
253 | message ids. | ||
254 | |||
255 | The hid->com adapter can run at a maximum baud of 115200bps. Please note | ||
256 | that the device has trouble or is incapable of raising line voltage properly. | ||
257 | It will be fine with null modem links, as long as you do not try to link two | ||
258 | together without hacking the adapter to set the line high. | ||
259 | |||
260 | The driver is smp safe. Performance with the driver is rather low when using | ||
261 | it for transfering files. This is being worked on, but I would be willing to | ||
262 | accept patches. An urb queue or packet buffer would likely fit the bill here. | ||
263 | |||
264 | If you have any questions, problems, patches, feature requests, etc. you can | ||
265 | contact me here via email: | ||
266 | dignome@gmail.com | ||
267 | (your problems/patches can alternately be submitted to usb-devel) | ||
268 | |||
269 | |||
270 | Digi AccelePort Driver | ||
271 | |||
272 | This driver supports the Digi AccelePort USB 2 and 4 devices, 2 port | ||
273 | (plus a parallel port) and 4 port USB serial converters. The driver | ||
274 | does NOT yet support the Digi AccelePort USB 8. | ||
275 | |||
276 | This driver works under SMP with the usb-uhci driver. It does not | ||
277 | work under SMP with the uhci driver. | ||
278 | |||
279 | The driver is generally working, though we still have a few more ioctls | ||
280 | to implement and final testing and debugging to do. The paralled port | ||
281 | on the USB 2 is supported as a serial to parallel converter; in other | ||
282 | words, it appears as another USB serial port on Linux, even though | ||
283 | physically it is really a parallel port. The Digi Acceleport USB 8 | ||
284 | is not yet supported. | ||
285 | |||
286 | Please contact Peter Berger (pberger@brimson.com) or Al Borchers | ||
287 | (alborchers@steinerpoint.com) for questions or problems with this | ||
288 | driver. | ||
289 | |||
290 | |||
291 | Belkin USB Serial Adapter F5U103 | ||
292 | |||
293 | Single port DB-9/PS-2 serial adapter from Belkin with firmware by eTEK Labs. | ||
294 | The Peracom single port serial adapter also works with this driver, as | ||
295 | well as the GoHubs adapter. | ||
296 | |||
297 | Current status: | ||
298 | The following have been tested and work: | ||
299 | Baud rate 300-230400 | ||
300 | Data bits 5-8 | ||
301 | Stop bits 1-2 | ||
302 | Parity N,E,O,M,S | ||
303 | Handshake None, Software (XON/XOFF), Hardware (CTSRTS,CTSDTR)* | ||
304 | Break Set and clear | ||
305 | Line contrl Input/Output query and control ** | ||
306 | |||
307 | * Hardware input flow control is only enabled for firmware | ||
308 | levels above 2.06. Read source code comments describing Belkin | ||
309 | firmware errata. Hardware output flow control is working for all | ||
310 | firmware versions. | ||
311 | ** Queries of inputs (CTS,DSR,CD,RI) show the last | ||
312 | reported state. Queries of outputs (DTR,RTS) show the last | ||
313 | requested state and may not reflect current state as set by | ||
314 | automatic hardware flow control. | ||
315 | |||
316 | TO DO List: | ||
317 | -- Add true modem contol line query capability. Currently tracks the | ||
318 | states reported by the interrupt and the states requested. | ||
319 | -- Add error reporting back to application for UART error conditions. | ||
320 | -- Add support for flush ioctls. | ||
321 | -- Add everything else that is missing :) | ||
322 | |||
323 | For any questions or problems with this driver, please contact William | ||
324 | Greathouse at wgreathouse@smva.com | ||
325 | |||
326 | |||
327 | Empeg empeg-car Mark I/II Driver | ||
328 | |||
329 | This is an experimental driver to provide connectivity support for the | ||
330 | client synchronization tools for an Empeg empeg-car mp3 player. | ||
331 | |||
332 | Tips: | ||
333 | * Don't forget to create the device nodes for ttyUSB{0,1,2,...} | ||
334 | * modprobe empeg (modprobe is your friend) | ||
335 | * emptool --usb /dev/ttyUSB0 (or whatever you named your device node) | ||
336 | |||
337 | For any questions or problems with this driver, please contact Gary | ||
338 | Brubaker at xavyer@ix.netcom.com | ||
339 | |||
340 | |||
341 | MCT USB Single Port Serial Adapter U232 | ||
342 | |||
343 | This driver is for the MCT USB-RS232 Converter (25 pin, Model No. | ||
344 | U232-P25) from Magic Control Technology Corp. (there is also a 9 pin | ||
345 | Model No. U232-P9). More information about this device can be found at | ||
346 | the manufacture's web-site: http://www.mct.com.tw. | ||
347 | |||
348 | The driver is generally working, though it still needs some more testing. | ||
349 | It is derived from the Belkin USB Serial Adapter F5U103 driver and its | ||
350 | TODO list is valid for this driver as well. | ||
351 | |||
352 | This driver has also been found to work for other products, which have | ||
353 | the same Vendor ID but different Product IDs. Sitecom's U232-P25 serial | ||
354 | converter uses Product ID 0x230 and Vendor ID 0x711 and works with this | ||
355 | driver. Also, D-Link's DU-H3SP USB BAY also works with this driver. | ||
356 | |||
357 | For any questions or problems with this driver, please contact Wolfgang | ||
358 | Grandegger at wolfgang@ces.ch | ||
359 | |||
360 | |||
361 | Inside Out Networks Edgeport Driver | ||
362 | |||
363 | This driver supports all devices made by Inside Out Networks, specifically | ||
364 | the following models: | ||
365 | Edgeport/4 | ||
366 | Rapidport/4 | ||
367 | Edgeport/4t | ||
368 | Edgeport/2 | ||
369 | Edgeport/4i | ||
370 | Edgeport/2i | ||
371 | Edgeport/421 | ||
372 | Edgeport/21 | ||
373 | Edgeport/8 | ||
374 | Edgeport/8 Dual | ||
375 | Edgeport/2D8 | ||
376 | Edgeport/4D8 | ||
377 | Edgeport/8i | ||
378 | Edgeport/2 DIN | ||
379 | Edgeport/4 DIN | ||
380 | Edgeport/16 Dual | ||
381 | |||
382 | For any questions or problems with this driver, please contact Greg | ||
383 | Kroah-Hartman at greg@kroah.com | ||
384 | |||
385 | |||
386 | REINER SCT cyberJack pinpad/e-com USB chipcard reader | ||
387 | |||
388 | Interface to ISO 7816 compatible contactbased chipcards, e.g. GSM SIMs. | ||
389 | |||
390 | Current status: | ||
391 | This is the kernel part of the driver for this USB card reader. | ||
392 | There is also a user part for a CT-API driver available. A site | ||
393 | for downloading is TBA. For now, you can request it from the | ||
394 | maintainer (linux-usb@sii.li). | ||
395 | |||
396 | For any questions or problems with this driver, please contact | ||
397 | linux-usb@sii.li | ||
398 | |||
399 | |||
400 | Prolific PL2303 Driver | ||
401 | |||
402 | This driver support any device that has the PL2303 chip from Prolific | ||
403 | in it. This includes a number of single port USB to serial | ||
404 | converters and USB GPS devices. Devices from Aten (the UC-232) and | ||
405 | IO-Data work with this driver. | ||
406 | |||
407 | For any questions or problems with this driver, please contact Greg | ||
408 | Kroah-Hartman at greg@kroah.com | ||
409 | |||
410 | |||
411 | KL5KUSB105 chipset / PalmConnect USB single-port adapter | ||
412 | |||
413 | Current status: | ||
414 | The driver was put together by looking at the usb bus transactions | ||
415 | done by Palm's driver under Windows, so a lot of functionality is | ||
416 | still missing. Notably, serial ioctls are sometimes faked or not yet | ||
417 | implemented. Support for finding out about DSR and CTS line status is | ||
418 | however implemented (though not nicely), so your favorite autopilot(1) | ||
419 | and pilot-manager -daemon calls will work. Baud rates up to 115200 | ||
420 | are supported, but handshaking (software or hardware) is not, which is | ||
421 | why it is wise to cut down on the rate used is wise for large | ||
422 | transfers until this is settled. | ||
423 | |||
424 | Options supported: | ||
425 | If this driver is compiled as a module you can pass the following | ||
426 | options to it: | ||
427 | debug - extra verbose debugging info | ||
428 | (default: 0; nonzero enables) | ||
429 | use_lowlatency - use low_latency flag to speed up tty layer | ||
430 | when reading from from the device. | ||
431 | (default: 0; nonzero enables) | ||
432 | |||
433 | See http://www.uuhaus.de/linux/palmconnect.html for up-to-date | ||
434 | information on this driver. | ||
435 | |||
436 | |||
437 | Generic Serial driver | ||
438 | |||
439 | If your device is not one of the above listed devices, compatible with | ||
440 | the above models, you can try out the "generic" interface. This | ||
441 | interface does not provide any type of control messages sent to the | ||
442 | device, and does not support any kind of device flow control. All that | ||
443 | is required of your device is that it has at least one bulk in endpoint, | ||
444 | or one bulk out endpoint. | ||
445 | |||
446 | To enable the generic driver to recognize your device, build the driver | ||
447 | as a module and load it by the following invocation: | ||
448 | insmod usbserial vendor=0x#### product=0x#### | ||
449 | where the #### is replaced with the hex representation of your device's | ||
450 | vendor id and product id. | ||
451 | |||
452 | This driver has been successfully used to connect to the NetChip USB | ||
453 | development board, providing a way to develop USB firmware without | ||
454 | having to write a custom driver. | ||
455 | |||
456 | For any questions or problems with this driver, please contact Greg | ||
457 | Kroah-Hartman at greg@kroah.com | ||
458 | |||
459 | |||
460 | CONTACT: | ||
461 | |||
462 | If anyone has any problems using these drivers, with any of the above | ||
463 | specified products, please contact the specific driver's author listed | ||
464 | above, or join the Linux-USB mailing list (information on joining the | ||
465 | mailing list, as well as a link to its searchable archive is at | ||
466 | http://www.linux-usb.org/ ) | ||
467 | |||
468 | |||
469 | Greg Kroah-Hartman | ||
470 | greg@kroah.com | ||