Programming FTDI devices

From Tučňák Wiki
Jump to navigation Jump to search

Programming FT232R

This page describes how to program the FT232R chip for use in:

You need File:MProg3.5.zip (obsoleted by FT_Prog but always works).

Run MProg

MProg initial state

Disconnect all possible USB devices (can contain FTDI chip also). Connect your device with FT232R. Press Ctrl+N to create new programming template. Press Ctrl+C to scan. MProg responds in bottom box:

Number Of Blank Devices = 0
Number Of Programmed Devices = 1

Change:

  • Device Type to FT232R
  • USB VID/PID to Own VID & PID
  • Vendor ID to A600
  • Product ID by table bellow
  • Manufacturer to OK1ZIA
  • Product Description by table bellow


Device Product ID Product description
Davac4 E110 Davac 4.x
Rotar4 E112 Antenna rotator 4.x
USBIO E113 USB GPIOs
HDKEYB E114 HD44780 + Keyboard


Verify entered data, press Ctrl+V and save configuration to file. Pres Ctrl+P to programm.

In bottom box result appears:

Programmed Serial Number : FTVCZQUP
MProg device programmed

Replug the device. Run Control Panel and you'll see new device:

Control panel with new device

Repair wrong VID/PID

If you do a mistake and programm wrong Vendor/Product IDs to FT232R, you can try this recover procedure:

  • Get real VID/PID from MProg or from Device Manager (Properties, Details, Hardware ID)
  • Read section 4 of [1]
  • Modify D2XX/CDM drivers to match device VID/PID. Leave only one device item like:
[Manufacturer]
%Ftdi%=FtdiHw,NTamd64 

[FtdiHw]
%USB\VID_A600&PID_E112.DeviceDesc%=FtdiBus.NT,USB\VID_A600&PID_E112 

[FtdiHw.NTamd64]
%USB\VID_A600&PID_E112.DeviceDesc%=FtdiBus.NTamd64,USB\VID_A600&PID_E112

[ControlFlags]
ExcludeFromSelect=*
  • Scan devices in MProg, it should find the device
  • Set proper values of VID/PID and programm these
  • Without replug, Uninstall drivers in Device Manager
  • Replug revice, it should have new VID/PID

Another way, works also on bricked chips

http://www.weirdlab.fr/?p=638

$ sudo apt-get install make gcc libftdi-dev
$ wget http://rtr.ca/ft232r/ft232r_prog-1.24.tar.gz
$ tar -zxvf ft232r_prog-1.24.tar.gz
$ cd ft232r_prog-1.24
$ make
$ sudo ./ft232r_prog –old-pid 0x000 –new-pid 0x6001