| ========== |
| USB serial |
| ========== |
| |
| Introduction |
| ============ |
| |
| The USB serial driver currently supports a number of different USB to |
| serial converter products, as well as some devices that use a serial |
| interface from userspace to talk to the device. |
| |
| See the individual product section below for specific information about |
| the different devices. |
| |
| |
| Configuration |
| ============= |
| |
| Currently the driver can handle up to 256 different serial interfaces at |
| one time. |
| |
| The major number that the driver uses is 188 so to use the driver, |
| create the following nodes:: |
| |
| mknod /dev/ttyUSB0 c 188 0 |
| mknod /dev/ttyUSB1 c 188 1 |
| mknod /dev/ttyUSB2 c 188 2 |
| mknod /dev/ttyUSB3 c 188 3 |
| . |
| . |
| . |
| mknod /dev/ttyUSB254 c 188 254 |
| mknod /dev/ttyUSB255 c 188 255 |
| |
| When the device is connected and recognized by the driver, the driver |
| will print to the system log, which node(s) the device has been bound |
| to. |
| |
| |
| Specific Devices Supported |
| ========================== |
| |
| |
| ConnectTech WhiteHEAT 4 port converter |
| -------------------------------------- |
| |
| ConnectTech has been very forthcoming with information about their |
| device, including providing a unit to test with. |
| |
| The driver is officially supported by Connect Tech Inc. |
| http://www.connecttech.com |
| |
| For any questions or problems with this driver, please contact |
| Connect Tech's Support Department at support@connecttech.com |
| |
| |
| HandSpring Visor, Palm USB, and Clié USB driver |
| ----------------------------------------------- |
| |
| This driver works with all HandSpring USB, Palm USB, and Sony Clié USB |
| devices. |
| |
| Only when the device tries to connect to the host, will the device show |
| up to the host as a valid USB device. When this happens, the device is |
| properly enumerated, assigned a port, and then communication _should_ be |
| possible. The driver cleans up properly when the device is removed, or |
| the connection is canceled on the device. |
| |
| NOTE: |
| This means that in order to talk to the device, the sync button must be |
| pressed BEFORE trying to get any program to communicate to the device. |
| This goes against the current documentation for pilot-xfer and other |
| packages, but is the only way that it will work due to the hardware |
| in the device. |
| |
| When the device is connected, try talking to it on the second port |
| (this is usually /dev/ttyUSB1 if you do not have any other usb-serial |
| devices in the system.) The system log should tell you which port is |
| the port to use for the HotSync transfer. The "Generic" port can be used |
| for other device communication, such as a PPP link. |
| |
| For some Sony Clié devices, /dev/ttyUSB0 must be used to talk to the |
| device. This is true for all OS version 3.5 devices, and most devices |
| that have had a flash upgrade to a newer version of the OS. See the |
| kernel system log for information on which is the correct port to use. |
| |
| If after pressing the sync button, nothing shows up in the system log, |
| try resetting the device, first a hot reset, and then a cold reset if |
| necessary. Some devices need this before they can talk to the USB port |
| properly. |
| |
| Devices that are not compiled into the kernel can be specified with module |
| parameters. e.g. modprobe visor vendor=0x54c product=0x66 |
| |
| There is a webpage and mailing lists for this portion of the driver at: |
| http://sourceforge.net/projects/usbvisor/ |
| |
| For any questions or problems with this driver, please contact Greg |
| Kroah-Hartman at greg@kroah.com |
| |
| |
| PocketPC PDA Driver |
| ------------------- |
| |
| This driver can be used to connect to Compaq iPAQ, HP Jornada, Casio EM500 |
| and other PDAs running Windows CE 3.0 or PocketPC 2002 using a USB |
| cable/cradle. |
| Most devices supported by ActiveSync are supported out of the box. |
| For others, please use module parameters to specify the product and vendor |
| id. e.g. modprobe ipaq vendor=0x3f0 product=0x1125 |
| |
| The driver presents a serial interface (usually on /dev/ttyUSB0) over |
| which one may run ppp and establish a TCP/IP link to the PDA. Once this |
| is done, you can transfer files, backup, download email etc. The most |
| significant advantage of using USB is speed - I can get 73 to 113 |
| kbytes/sec for download/upload to my iPAQ. |
| |
| This driver is only one of a set of components required to utilize |
| the USB connection. Please visit http://synce.sourceforge.net which |
| contains the necessary packages and a simple step-by-step howto. |
| |
| Once connected, you can use Win CE programs like ftpView, Pocket Outlook |
| from the PDA and xcerdisp, synce utilities from the Linux side. |
| |
| To use Pocket IE, follow the instructions given at |
| http://www.tekguru.co.uk/EM500/usbtonet.htm to achieve the same thing |
| on Win98. Omit the proxy server part; Linux is quite capable of forwarding |
| packets unlike Win98. Another modification is required at least for the |
| iPAQ - disable autosync by going to the Start/Settings/Connections menu |
| and unchecking the "Automatically synchronize ..." box. Go to |
| Start/Programs/Connections, connect the cable and select "usbdial" (or |
| whatever you named your new USB connection). You should finally wind |
| up with a "Connected to usbdial" window with status shown as connected. |
| Now start up PIE and browse away. |
| |
| If it doesn't work for some reason, load both the usbserial and ipaq module |
| with the module parameter "debug" set to 1 and examine the system log. |
| You can also try soft-resetting your PDA before attempting a connection. |
| |
| Other functionality may be possible depending on your PDA. According to |
| Wes Cilldhaire <billybobjoehenrybob@hotmail.com>, with the Toshiba E570, |
| ...if you boot into the bootloader (hold down the power when hitting the |
| reset button, continuing to hold onto the power until the bootloader screen |
| is displayed), then put it in the cradle with the ipaq driver loaded, open |
| a terminal on /dev/ttyUSB0, it gives you a "USB Reflash" terminal, which can |
| be used to flash the ROM, as well as the microP code.. so much for needing |
| Toshiba's $350 serial cable for flashing!! :D |
| NOTE: This has NOT been tested. Use at your own risk. |
| |
| For any questions or problems with the driver, please contact Ganesh |
| Varadarajan <ganesh@veritas.com> |
| |
| |
| Keyspan PDA Serial Adapter |
| -------------------------- |
| |
| Single port DB-9 serial adapter, pushed as a PDA adapter for iMacs (mostly |
| sold in Macintosh catalogs, comes in a translucent white/green dongle). |
| Fairly simple device. Firmware is homebrew. |
| This driver also works for the Xircom/Entrega single port serial adapter. |
| |
| Current status: |
| |
| Things that work: |
| - basic input/output (tested with 'cu') |
| - blocking write when serial line can't keep up |
| - changing baud rates (up to 115200) |
| - getting/setting modem control pins (TIOCM{GET,SET,BIS,BIC}) |
| - sending break (although duration looks suspect) |
| |
| Things that don't: |
| - device strings (as logged by kernel) have trailing binary garbage |
| - device ID isn't right, might collide with other Keyspan products |
| - changing baud rates ought to flush tx/rx to avoid mangled half characters |
| |
| Big Things on the todo list: |
| - parity, 7 vs 8 bits per char, 1 or 2 stop bits |
| - HW flow control |
| - not all of the standard USB descriptors are handled: |
| Get_Status, Set_Feature, O_NONBLOCK, select() |
| |
| For any questions or problems with this driver, please contact Brian |
| Warner at warner@lothar.com |
| |
| |
| Keyspan USA-series Serial Adapters |
| ---------------------------------- |
| |
| Single, Dual and Quad port adapters - driver uses Keyspan supplied |
| firmware and is being developed with their support. |
| |
| Current status: |
| |
| The USA-18X, USA-28X, USA-19, USA-19W and USA-49W are supported and |
| have been pretty thoroughly tested at various baud rates with 8-N-1 |
| character settings. Other character lengths and parity setups are |
| presently untested. |
| |
| The USA-28 isn't yet supported though doing so should be pretty |
| straightforward. Contact the maintainer if you require this |
| functionality. |
| |
| More information is available at: |
| |
| http://www.carnationsoftware.com/carnation/Keyspan.html |
| |
| For any questions or problems with this driver, please contact Hugh |
| Blemings at hugh@misc.nu |
| |
| |
| FTDI Single Port Serial Driver |
| ------------------------------ |
| |
| This is a single port DB-25 serial adapter. |
| |
| Devices supported include: |
| |
| - TripNav TN-200 USB GPS |
| - Navis Engineering Bureau CH-4711 USB GPS |
| |
| For any questions or problems with this driver, please contact Bill Ryder. |
| |
| |
| ZyXEL omni.net lcd plus ISDN TA |
| ------------------------------- |
| |
| This is an ISDN TA. Please report both successes and troubles to |
| azummo@towertech.it |
| |
| |
| Cypress M8 CY4601 Family Serial Driver |
| -------------------------------------- |
| |
| This driver was in most part developed by Neil "koyama" Whelchel. It |
| has been improved since that previous form to support dynamic serial |
| line settings and improved line handling. The driver is for the most |
| part stable and has been tested on an smp machine. (dual p2) |
| |
| Chipsets supported under CY4601 family: |
| |
| CY7C63723, CY7C63742, CY7C63743, CY7C64013 |
| |
| Devices supported: |
| |
| - DeLorme's USB Earthmate GPS (SiRF Star II lp arch) |
| - Cypress HID->COM RS232 adapter |
| |
| Note: |
| Cypress Semiconductor claims no affiliation with the |
| hid->com device. |
| |
| Most devices using chipsets under the CY4601 family should |
| work with the driver. As long as they stay true to the CY4601 |
| usbserial specification. |
| |
| Technical notes: |
| |
| The Earthmate starts out at 4800 8N1 by default... the driver will |
| upon start init to this setting. usbserial core provides the rest |
| of the termios settings, along with some custom termios so that the |
| output is in proper format and parsable. |
| |
| The device can be put into sirf mode by issuing NMEA command:: |
| |
| $PSRF100,<protocol>,<baud>,<databits>,<stopbits>,<parity>*CHECKSUM |
| $PSRF100,0,9600,8,1,0*0C |
| |
| It should then be sufficient to change the port termios to match this |
| to begin communicating. |
| |
| As far as I can tell it supports pretty much every sirf command as |
| documented online available with firmware 2.31, with some unknown |
| message ids. |
| |
| The hid->com adapter can run at a maximum baud of 115200bps. Please note |
| that the device has trouble or is incapable of raising line voltage properly. |
| It will be fine with null modem links, as long as you do not try to link two |
| together without hacking the adapter to set the line high. |
| |
| The driver is smp safe. Performance with the driver is rather low when using |
| it for transferring files. This is being worked on, but I would be willing to |
| accept patches. An urb queue or packet buffer would likely fit the bill here. |
| |
| If you have any questions, problems, patches, feature requests, etc. you can |
| contact me here via email: |
| |
| dignome@gmail.com |
| |
| (your problems/patches can alternately be submitted to usb-devel) |
| |
| |
| Digi AccelePort Driver |
| ---------------------- |
| |
| This driver supports the Digi AccelePort USB 2 and 4 devices, 2 port |
| (plus a parallel port) and 4 port USB serial converters. The driver |
| does NOT yet support the Digi AccelePort USB 8. |
| |
| This driver works under SMP with the usb-uhci driver. It does not |
| work under SMP with the uhci driver. |
| |
| The driver is generally working, though we still have a few more ioctls |
| to implement and final testing and debugging to do. The parallel port |
| on the USB 2 is supported as a serial to parallel converter; in other |
| words, it appears as another USB serial port on Linux, even though |
| physically it is really a parallel port. The Digi Acceleport USB 8 |
| is not yet supported. |
| |
| Please contact Peter Berger (pberger@brimson.com) or Al Borchers |
| (alborchers@steinerpoint.com) for questions or problems with this |
| driver. |
| |
| |
| Belkin USB Serial Adapter F5U103 |
| -------------------------------- |
| |
| Single port DB-9/PS-2 serial adapter from Belkin with firmware by eTEK Labs. |
| The Peracom single port serial adapter also works with this driver, as |
| well as the GoHubs adapter. |
| |
| Current status: |
| |
| The following have been tested and work: |
| |
| - Baud rate 300-230400 |
| - Data bits 5-8 |
| - Stop bits 1-2 |
| - Parity N,E,O,M,S |
| - Handshake None, Software (XON/XOFF), Hardware (CTSRTS,CTSDTR) [1]_ |
| - Break Set and clear |
| - Line control Input/Output query and control [2]_ |
| |
| .. [1] |
| Hardware input flow control is only enabled for firmware |
| levels above 2.06. Read source code comments describing Belkin |
| firmware errata. Hardware output flow control is working for all |
| firmware versions. |
| |
| .. [2] |
| Queries of inputs (CTS,DSR,CD,RI) show the last |
| reported state. Queries of outputs (DTR,RTS) show the last |
| requested state and may not reflect current state as set by |
| automatic hardware flow control. |
| |
| TO DO List: |
| - Add true modem control line query capability. Currently tracks the |
| states reported by the interrupt and the states requested. |
| - Add error reporting back to application for UART error conditions. |
| - Add support for flush ioctls. |
| - Add everything else that is missing :) |
| |
| For any questions or problems with this driver, please contact William |
| Greathouse at wgreathouse@smva.com |
| |
| |
| Empeg empeg-car Mark I/II Driver |
| -------------------------------- |
| |
| This is an experimental driver to provide connectivity support for the |
| client synchronization tools for an Empeg empeg-car mp3 player. |
| |
| Tips: |
| * Don't forget to create the device nodes for ttyUSB{0,1,2,...} |
| * modprobe empeg (modprobe is your friend) |
| * emptool --usb /dev/ttyUSB0 (or whatever you named your device node) |
| |
| For any questions or problems with this driver, please contact Gary |
| Brubaker at xavyer@ix.netcom.com |
| |
| |
| MCT USB Single Port Serial Adapter U232 |
| --------------------------------------- |
| |
| This driver is for the MCT USB-RS232 Converter (25 pin, Model No. |
| U232-P25) from Magic Control Technology Corp. (there is also a 9 pin |
| Model No. U232-P9). More information about this device can be found at |
| the manufacturer's web-site: http://www.mct.com.tw. |
| |
| The driver is generally working, though it still needs some more testing. |
| It is derived from the Belkin USB Serial Adapter F5U103 driver and its |
| TODO list is valid for this driver as well. |
| |
| This driver has also been found to work for other products, which have |
| the same Vendor ID but different Product IDs. Sitecom's U232-P25 serial |
| converter uses Product ID 0x230 and Vendor ID 0x711 and works with this |
| driver. Also, D-Link's DU-H3SP USB BAY also works with this driver. |
| |
| For any questions or problems with this driver, please contact Wolfgang |
| Grandegger at wolfgang@ces.ch |
| |
| |
| Inside Out Networks Edgeport Driver |
| ----------------------------------- |
| |
| This driver supports all devices made by Inside Out Networks, specifically |
| the following models: |
| |
| - Edgeport/4 |
| - Rapidport/4 |
| - Edgeport/4t |
| - Edgeport/2 |
| - Edgeport/4i |
| - Edgeport/2i |
| - Edgeport/421 |
| - Edgeport/21 |
| - Edgeport/8 |
| - Edgeport/8 Dual |
| - Edgeport/2D8 |
| - Edgeport/4D8 |
| - Edgeport/8i |
| - Edgeport/2 DIN |
| - Edgeport/4 DIN |
| - Edgeport/16 Dual |
| |
| For any questions or problems with this driver, please contact Greg |
| Kroah-Hartman at greg@kroah.com |
| |
| |
| REINER SCT cyberJack pinpad/e-com USB chipcard reader |
| ----------------------------------------------------- |
| |
| Interface to ISO 7816 compatible contactbased chipcards, e.g. GSM SIMs. |
| |
| Current status: |
| |
| This is the kernel part of the driver for this USB card reader. |
| There is also a user part for a CT-API driver available. A site |
| for downloading is TBA. For now, you can request it from the |
| maintainer (linux-usb@sii.li). |
| |
| For any questions or problems with this driver, please contact |
| linux-usb@sii.li |
| |
| |
| Prolific PL2303 Driver |
| ---------------------- |
| |
| This driver supports any device that has the PL2303 chip from Prolific |
| in it. This includes a number of single port USB to serial converters, |
| more than 70% of USB GPS devices (in 2010), and some USB UPSes. Devices |
| from Aten (the UC-232) and IO-Data work with this driver, as does |
| the DCU-11 mobile-phone cable. |
| |
| For any questions or problems with this driver, please contact Greg |
| Kroah-Hartman at greg@kroah.com |
| |
| |
| KL5KUSB105 chipset / PalmConnect USB single-port adapter |
| -------------------------------------------------------- |
| |
| Current status: |
| |
| The driver was put together by looking at the usb bus transactions |
| done by Palm's driver under Windows, so a lot of functionality is |
| still missing. Notably, serial ioctls are sometimes faked or not yet |
| implemented. Support for finding out about DSR and CTS line status is |
| however implemented (though not nicely), so your favorite autopilot(1) |
| and pilot-manager -daemon calls will work. Baud rates up to 115200 |
| are supported, but handshaking (software or hardware) is not, which is |
| why it is wise to cut down on the rate used is wise for large |
| transfers until this is settled. |
| |
| See http://www.uuhaus.de/linux/palmconnect.html for up-to-date |
| information on this driver. |
| |
| Winchiphead CH341 Driver |
| ------------------------ |
| |
| This driver is for the Winchiphead CH341 USB-RS232 Converter. This chip |
| also implements an IEEE 1284 parallel port, I2C and SPI, but that is not |
| supported by the driver. The protocol was analyzed from the behaviour |
| of the Windows driver, no datasheet is available at present. |
| |
| The manufacturer's website: http://www.winchiphead.com/. |
| |
| For any questions or problems with this driver, please contact |
| frank@kingswood-consulting.co.uk. |
| |
| Moschip MCS7720, MCS7715 driver |
| ------------------------------- |
| |
| These chips are present in devices sold by various manufacturers, such as Syba |
| and Cables Unlimited. There may be others. The 7720 provides two serial |
| ports, and the 7715 provides one serial and one standard PC parallel port. |
| Support for the 7715's parallel port is enabled by a separate option, which |
| will not appear unless parallel port support is first enabled at the top-level |
| of the Device Drivers config menu. Currently only compatibility mode is |
| supported on the parallel port (no ECP/EPP). |
| |
| TODO: |
| - Implement ECP/EPP modes for the parallel port. |
| - Baud rates higher than 115200 are currently broken. |
| - Devices with a single serial port based on the Moschip MCS7703 may work |
| with this driver with a simple addition to the usb_device_id table. I |
| don't have one of these devices, so I can't say for sure. |
| |
| Generic Serial driver |
| --------------------- |
| |
| If your device is not one of the above listed devices, compatible with |
| the above models, you can try out the "generic" interface. This |
| interface does not provide any type of control messages sent to the |
| device, and does not support any kind of device flow control. All that |
| is required of your device is that it has at least one bulk in endpoint, |
| or one bulk out endpoint. |
| |
| To enable the generic driver to recognize your device, provide:: |
| |
| echo <vid> <pid> >/sys/bus/usb-serial/drivers/generic/new_id |
| |
| where the <vid> and <pid> is replaced with the hex representation of your |
| device's vendor id and product id. |
| If the driver is compiled as a module you can also provide one id when |
| loading the module:: |
| |
| insmod usbserial vendor=0x#### product=0x#### |
| |
| This driver has been successfully used to connect to the NetChip USB |
| development board, providing a way to develop USB firmware without |
| having to write a custom driver. |
| |
| For any questions or problems with this driver, please contact Greg |
| Kroah-Hartman at greg@kroah.com |
| |
| |
| Contact |
| ======= |
| |
| If anyone has any problems using these drivers, with any of the above |
| specified products, please contact the specific driver's author listed |
| above, or join the Linux-USB mailing list (information on joining the |
| mailing list, as well as a link to its searchable archive is at |
| http://www.linux-usb.org/ ) |
| |
| |
| Greg Kroah-Hartman |
| greg@kroah.com |