I have a few FTDI FT232H breakout boards from Adafruit. I wanted to connect multiple of them through a USB hub. I was under the impression that the serial number is unique and based on "The serial number consists of 8 characters, the first two being the manufacturer ID and the next 6 being base 36 numbers based on the date and exact time of programming." as per https://www.ftdichip.com/Support/Knowledgebase/index.html?howistheautomaticserialnu.htm.
But when I run my code to identify the devices. I see
Channel number: 0
Description: FT232H
Serial: FTKIJX5M
ID: 67330068
LocId: 13377
Channel number: 1
Description: FT232H
Serial: FT3ZQ7NY
ID: 67330068
LocId: 214084
Channel number: 2
Description: FT232H
Serial: FT3ZQ7NY
ID: 67330068
LocId: 36
Channel number: 3
Description: FT232H
Serial: FTOVSJUB
ID: 67330068
LocId: 35
Channel number: 4
Description: FT232H
Serial: FTOVSJUB
ID: 67330068
LocId: 13378
As you can see I have two FT3ZQ7NY, and two FTOVSJUB, and one FTKIJX5M, is there a way to make it unique because all my devices and attached peripherals are identical in nature. Is there any way to uniquely identify the device?
Best Answer
The best way to solve it to program the FTDI chip using FT Prog that you can download from https://www.ftdichip.com/Support/Utilities.htm#FT_PROG
Now you can get it in unique numbers, or you can auto-assign the serial numbers based on the unique timestamp of programming.