# FT2232H EEPROM config for the re-bba-rb board (libftdi `ftdi_eeprom`). # # NOTE: the devcontainer does NOT ship the `ftdi_eeprom` binary (debian's # libftdi1-2 is the runtime lib only). Inside the container program the EEPROM # with the pyftdi script instead — it applies the SAME values as this file: # sudo /opt/venv/bin/python hardware/re-bba-rb/flash_ftdi_eeprom.py --commit # This .conf remains the value spec, and works as-is with `ftdi_eeprom` on a host # that has the libftdi tools, or as a reference when using FT_PROG on Windows. # # Purpose: give the on-board FT2232H a product string so the unit shows up as # "re-BBA-rb" instead of the generic "Dual RS232-HS". # # SAFE BY DESIGN — this KEEPS the stock VID/PID (0403:6010) and the default # dual-channel config, so `iceprog` (MPSSE on interface A) and the channel-B # UART keep working exactly as before. Only the descriptor strings change. # # ⚠️ Before writing: back up whatever is there (it should be blank/default): # ftdi_eeprom --device i:0x0403:0x6010 --read-eeprom --to-file eeprom-backup.bin # Then flash the bitstream FIRST and confirm iceprog works; program this # EEPROM only after that's proven (the string is cosmetic). # # Program with: # ftdi_eeprom --device i:0x0403:0x6010 --flash-eeprom ftdi_eeprom.conf # (re-plug the USB afterwards so the host re-reads the descriptors.) vendor_id=0x0403 # KEEP 0403 — iceprog/D2XX look for this product_id=0x6010 # KEEP 6010 — FT2232H default; iceprog looks for this max_power=500 # mA; board draws well under this over USB manufacturer=hashru # <- your name/org; free text product=re-BBA-rb # <- this is what makes it show as "re-BBA-rb" use_serial=true serial=RBBARB001 # <- optional; bump per unit if you want unique serials # Bus-powered while flashing over USB (GC not attached). If you ever program # it while powered from SP1 only, this is still fine — it's a hint to the host. self_powered=false remote_wakeup=false # Leave the two channels at their FT2232H defaults (UART/serial). MPSSE (used # by iceprog) is a runtime mode on interface A and works regardless, so there # is no need to set cha_type/chb_type here. filename=re-bba-rb-eeprom.bin # ftdi_eeprom writes the built image here too