FTDI-EEPROM(1)
πΈ NAME πΈ
okay bestie, meet ftdi_eeprom β the tool for reading, erasing and flashing FTDI USB chip eeproms β¨ it's a page from the General Commands Manual, aka FTDI-EEPROM(1), and it's literally your little glow-up wand for FTDI eeproms π
π SYNOPSIS π
ftdi_eeprom [commands] config-file
π¦ DESCRIPTION π¦
so ftdi_eeprom is a small tool β tiny, but it ate β for reading, erasing and flashing FTDI USB chip eeproms π it uses libftdi to get at the chip, which means you need to have the required permissions on the device. no permissions, no slay. π
the ftdi_sio module should not be loaded. you can stop it from being loaded automatically by adding it to /etc/modprobe.d/blacklist. girl, just blacklist it and move on π«Ά
also, and this is the part everyone forgets: you have to unplug and replug your device to get the new values to be read. otherwise you'll still get the old values, and you'll be sitting there like "why is nothing changing" π so unplug it, plug it back in, main character energy.
π COMMANDS π
--devicedescription β pick which device to open, using a description string. it's one of these:
d:<device node>
i:<vendor>:<product>
i:<vendor>:<product>:<index>
s:<vendor>:<product>:<serial>
--read-eepromβ read the eeprom and write it toβfilenameβfrom config-file π--build-eepromβ build the eeprom image β¨--erase-eepromβ erase the eeprom π§Ή--flash-eepromβ flash the eeprom π₯--verboseβ print more information π’
π CONFIGURATION FILE π
the config file is just a list of key-value pairs, and those get used to flash an FTDI USB chip eeprom π comments start with #. the beginning of such a file might look like this, no cap:
vendor_id=0x0403 # Vendor ID
product_id=0x6001 # Product ID
max_power=0 # Max. power consumption: value * 2 mA. Use 0 if self_powered = true.
###########
# Strings #
###########
manufacturer="ACME Inc" # Manufacturer
product="USB Serial Converter" # Product
serial="08-15" # Serial
the example configuration file that could be found in /usr/share/doc/ftdi-eeprom/ is quite well commented, so you should be able to use it as a basis π it's giving tutorial, it's giving support system.
the following keys are supported:
π« the keys π«
vendor_idβ set the vendor ID of the device. this value could be entered in decimal or hexadecimal form, and should be in the range0-65535or0x0000-0xffff, respectively.product_idβ set the product ID of the device. this value could be entered in decimal or hexadecimal form, and should be in the range0-65535or0x0000-0xffff, respectively.max_powerβ set the maximum current the device will use, in 2 mA unit. use0ifself_powered = true.manufacturerβ set the manufacturer string, which normally holds the name of the manufacturer.productβ set the product string, which normally holds the name of the product.serialβ set the serial string, which normally holds the serial number of the product.self_poweredβ specify if the device is self-powered or not. the value should betrueorfalse.remote_wakeupβ specify if the device supports remote wake-ups. the value should betrueorfalse.use_serialβ if this value is set totrue, the serial string will be used. otherwise the default serial string will be used.BM_type_chipβ this value have to be set totrueif you are using a BM chip. (yes bestie, "have to", the manpage said it like that, and we respect it π )in_is_isochronousβ if set totrue, this option specify that the input endpoint is in isochronous mode.out_is_isochronousβ if set totrue, this option specify that the output endpoint is in isochronous mode.suspend_pull_downsβ if this value is set totrue, the pull downs are enabled during suspend for lower power consumption.change_usb_versionβ this value has to be set totrueif you want to force the USB version using theusb_versionkey. otherwise the default USB version will be used.usb_versionβ set the USB version of the device. thechange_usb_versionvalue has to be set totrue. π₯filenameβ specify a filename if you want to dump the content of the eeprom into it.
π AUTHOR π
ftdi_eeprom was written by Intra2net AG <opensource@intra2net.com>. this manual page was written by Aurelien Jarno <aurel32@debian.org> for the Debian GNU/Linux system (but may be used by others). icons, all of them π
and that's the whole vibe check π¦ this page is from July 12, 2020, FTDI-EEPROM(1), and honestly? it still serves. go flash something cute. periodt π
β¨
π¦ where this page comes from
- debian bookworm: ftdi-eeprom 1.5-6+b2
- debian trixie: ftdi-eeprom 1.5-10 Β· LGPL-2.1-only
- ubuntu jammy: ftdi-eeprom 1.5-5build3
- ubuntu noble: ftdi-eeprom 1.5-6build5
- ubuntu questing: ftdi-eeprom 1.5-10
- ubuntu resolute: ftdi-eeprom 1.6~rc1-1build1 Β· LGPL-2.1-only
- ubuntu stonking: ftdi-eeprom 1.6~rc1-2 Β· LGPL-2.1-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms