CableGuide FTDI OEM Cables

Note: this page is currently a work in progress

Some cable vendors use the FTDI serial chip in their USB radio cables, but have changed the chip's ID codes so that the cable will not be recognized as a generic serial communications port. By default CHIRP (and some other software) will not be able to use these cables because CHIRP needs a serial port. Most notably RT Systems sells such cables. There are also some Icom cables that are sold this way. Using a vendor specific code on the USB chip allows software that is specifically written for that cable, usually under Microsoft Windows, to identify the cable and eliminates the guessing about which port the radio is connected to.

There use such a cable with CHIRP there are two options. You can either get your computer to recognize the OEM cable as a generic serial port by tweaking the driver setup, or you can change the cable to use the default FTDI codes, so the standard FTDI driver present in most operating systems will recognize the cable and create a standard serial port.

A little more background maybe helpful in understanding the information here:

USB devices have a Vendor ID (VID) and a Product ID (PID) that identifies the device so the operating system can figure out what driver to load, "plug-and-play" style. While your system likely already has the FTDI USB Serial driver, the problem is that driver won't be used, because the VID/PID on your cable has been changed to the one set by your cable's vendor.

FTDI's driver has two components. The first is a direct I/O driver that allows software written to use the FTDI chip to directly access the chip. The second component, called Virtual COM Port (VCP) is what makes the USB device appear to be a generic serial COM port similar to the physical ones that used to be routinely present on older computers. Software like CHIRP that is written to do serial I/O, needs the VCP driver to make the FTDI chip look like a regular serial port.

Get your OS to recognize the cable as a generic FTDI USB Serial Cable

Windows

Windows 7 (possibly also Vista, and Windows 8)

With Windows 7 (and possibly other versions like Vista and Windows 8), it is possible to trick Windows into updating the driver to the latest generic FTDI driver. Once that is done, there will be the option load the VCP (Virtual COM Port) driver that will create a generic COM port in Windows that can be used by CHIRP.

This method was originally documented by Cory, NQ1E.

  1. Download the VCP driver zip file and expand it to a folder http://www.ftdichip.com/FTDrivers.htm
  2. Open up the device manager, find your cable under USB ports, Select the cable and right click to select update the driver
  3. Go though the "let me choose" and "have disk" options to point it at the folder where you unzipped the FTDI driver files.
  4. Install the driver that shows up even if it warns about it not being compatible.
  5. The device now shows up as "USB Serial Converter", go to its properties/advanced tab and check the box called "Load VCP".
  6. Unplug the device and plug it back in
  7. A new COMport device will show up, but a driver will not load for it automatically.
  8. You need to repeat the above process of telling it to add the driver, choosing the driver from the specific location (Have Disk), to ensure that the updated VCP driver gets loaded.
  9. In device manager, under ports, you should now be able to find the COM port number that Windows assigned to your cable.
  10. When you start CHIRP use the COM port number from the previous step

Windows XP

T.B.D. The process above doesn't seem to work in Windows XP. Windows detects the mismatch in VID/PID, but doesn't give you a chance to proceed anyway the way Windows 7 does.

Mac OS

While RT Systems software doesn't work under Mac OS, they do have a Mac OS driver on their web site, that will allow you to use their cable as a generic FTDI serial cable that will work with CHIRP and other software. http://www.rtsystemsinc.com/kb_results.asp?ID=9

Note if you are having trouble uploading and/or downloading, please have a look at this article: RTSystemsCablesAndMavericks

Linux

Linux can be easily configured to load the ftdi_sio driver by supplying the VID/PID for your cable as a parameter. If you system uses udev, it's straightforward to add a udev rule that will cause the right driver to load automatically. It's also possible to execute the steps manually.

Manual method

modprobe can be used to get the ftdi_sio driver to load for your cable. If the ftdi_sio driver is already loaded it must be unloaded first or the paramaters to modprobe will be ignored. If you have any other FTDI serial cables you need to unplug them first, and not plug them in until after you've completed these steps

The steps are:
  1. Plug in your cable.
  2. use lsusb and/or dmesg to determine your cable's VID and PID (should be 4 hex digits)
  3. Unplug all FTDI cables from your system
  4. rmmod ftdi_sdio # unload the driver if it is already loaded.
  5. modprobe vendor=0x2100 product=0x9e50 # This is the ID for the RT System's Yaesu VX-8 cable
  6. Plug in your cable
  7. Check dmesg to see that the cable was recognized and that a serial (TTY) /dev entry was created.

udev rule

Create/Edit a text file in your system's udev rules directory: E.G. /etc/udev/rules.d/99-custom.rules

Put the fullowing in the file:
  1. RT Systems cable for Yaesu VX-8DR
    SYSFS{idVendor}=="2100", SYSFS{idProduct}=="9e50", RUN+="/sbin/modprobe -q ftdi_sio vendor=0x2100 product=0x9e50"

Tell udev to re-read the rules files:

udevadm control --reload_rules

Change your cable's ID to FTDI default

FTDI has a free download of a utility for Windows that will allow changing the USB serial chip's VID and PID. The FTDI USB serial chip has a small EEPROM built in. Once you have reprogrammed the chip in your cable you should be able to use it under most operating systems without having to do anything special. It should be recognized as a generic FTDI serial cable.

NOTE: When you change the ID, the original software for your cable will no longer recognize your cable.

If you want to use the original software again, you'll have to reprogram the chip back to the VID/PID it had originally. There is the ability do save a copy of the original chip's configuration. If you plan to use both the original software that came with your cable and CHIRP, you should use the other method to get your system to load the serial driver (VCP) with your cable's OEM VID/PID.

To use this method:
  1. download and install the utility from the FTDI site. http://www.ftdichip.com/Support/Utilities.htm
  2. Use the utility to save the current configuration of your cable (Note: the software refers to this as a template)
  3. Determine the correct default VID and PID for the specific FTDI chip in your cable.
  4. Change the settings and reprogram the cable.