.\" Hey, EMACS: -*- nroff -*- .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) .TH FTDI-EEPROM "1" "July 12, 2020" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: .\" .nh disable hyphenation .\" .hy enable hyphenation .\" .ad l left justify .\" .ad b justify to both left and right margins .\" .nf disable filling .\" .fi enable filling .\" .br insert line break .\" .sp insert n+1 empty lines .\" for manpage-specific macros, see man(7) .SH NAME ftdi_eeprom \- Tool for reading/erasing/flashing FTDI USB chip eeproms .SH SYNOPSIS .B ftdi_eeprom .I [commands] config-file .SH DESCRIPTION .B ftdi_eeprom is a small tool for reading/erasing/flashing FTDI USB chip eeproms. It uses libftdi to access the chip, so you will need to have the required permissions on the device. The ftdi_sio module should not be loaded. You can prevent it to be automatically loaded by adding it to /etc/modprobe.d/blacklist. You have to unplug and replug your device to get the new values to be read. Otherwise, you will still get the old values. .SH COMMANDS .TP .B "\-\-device \fIdescription\fP" Specify device to open by \fIdescription\fP string. One of: .sp .nf d: i:: i::: s::: .fi .sp .TP .B "\-\-read-eeprom" Read eeprom and write to \(hyfilename\(hy from config-file. .TP .B "\-\-build-eeprom" Build eeprom image. .TP .B "\-\-erase-eeprom" Erase eeprom. .TP .B "\-\-flash-eeprom" Flash eeprom. .TP .B "\-\-verbose" Print more information. .SH CONFIGURATION FILE .PP The configuration file contains a list of key-value pairs which will be used to flash an FTDI USB chip eeprom. Comments start with \fB#\fR. The beginning of such a file might look like the following: .PP .sp .RS .sp .nf 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 .sp .fi .RE .sp .PP The example configuration file that could be found in \fI/usr/share/doc/ftdi-eeprom/\fR is quite well commented so you should be able to use it as a basis. The following keys are supported: .TP .B "vendor_id" Set the vendor ID of the device. This value could be entered in decimal or hexadecimal form, and should be in the range 0-65535 or 0x0000-0xffff, respectively. .TP .B "product_id" Set the product ID of the device. This value could be entered in decimal or hexadecimal form, and should be in the range 0-65535 or 0x0000-0xffff, respectively. .TP .B "max_power" Set the maximum current the device will use, in 2 mA unit. Use 0 if \fBself_powered\fR = true. .TP .B "manufacturer" Set the manufacturer string which normally holds the name of the manufacturer. .TP .B "product" Set the product string which normally holds the name of the product. .TP .B "serial" Set the serial string which normally holds the serial number of the product. .TP .B "self_powered" Specify if the device is self-powered or not. The value should be true or false. .TP .B "remote_wakeup" Specify if the device supports remote wake-ups. The value should be true or false. .TP .B "use_serial" If this value is set to true, the \fBserial\fR string will be used. Otherwise the default serial string will be used. .TP .B "BM_type_chip" This value have to be set to true if you are using a BM chip. .TP .B "in_is_isochronous" If set to true this option specify that the input endpoint is in isochronous mode. .TP .B "out_is_isochronous" If set to true this option specify that the output endpoint is in isochronous mode. .TP .B "suspend_pull_downs" If this value is set to true the pull downs are enabled during suspend for lower power consumption. .TP .B "change_usb_version" This value has to be set to true if you want to force the USB version using the \fBusb_version\fR key. Otherwise the default USB version will be used. .TP .B "usb_version" Set the USB version of the device. The \fBchange_usb_version\fR value has to be set to true. .TP .B "filename" Specify a filename if you want to dump the content of the eeprom into it. .SH AUTHOR ftdi_eeprom was written by Intra2net AG . .br This manual page was written by Aurelien Jarno for the Debian GNU/Linux system (but may be used by others).