diff --git a/FT240X-EEPROM.md b/FT240X-EEPROM.md new file mode 100644 index 0000000..0a0ac68 --- /dev/null +++ b/FT240X-EEPROM.md @@ -0,0 +1,47 @@ +The FT240X EEPROM contains USB descriptor data, as well as a few magic bytes (see [USB protocol](USB-protocol)). It is 256 bytes (128 16-bit words) in size, and is read in units of 16 bits. Its contents are: + +``` +00000000 00 00 03 04 d0 7f 00 10 80 c8 08 00 00 00 a0 12 |................| +00000010 b2 1e d0 1c 00 00 00 00 00 00 00 00 00 00 00 00 |................| +00000020 04 00 00 00 62 a7 7e 03 9f f5 f6 74 f4 01 00 00 |....b.~....t....| +00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| +00000040 88 88 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| +00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| +* +00000080 56 36 a9 c9 01 00 6a 6c ad 88 30 00 00 00 00 00 |V6....jl..0.....| +00000090 00 00 00 01 44 4f 51 41 34 45 30 31 00 00 00 00 |....DOQA4E01....| +000000a0 12 03 49 00 4b 00 41 00 4c 00 4f 00 47 00 49 00 |..I.K.A.L.O.G.I.| +000000b0 43 00 1e 03 53 00 63 00 61 00 6e 00 61 00 51 00 |C...S.c.a.n.a.Q.| +000000c0 75 00 61 00 64 00 20 00 53 00 51 00 35 00 30 00 |u.a.d. .S.Q.5.0.| +000000d0 1c 03 31 00 30 00 30 00 33 00 30 00 35 00 30 00 |..1.0.0.3.0.5.0.| +000000e0 30 00 30 00 35 00 34 00 38 00 32 00 00 00 00 00 |0.0.5.4.8.2.....| +000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6a 3e |..............j>| +00000100 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| +* +00000800 +``` + +Parsed FTDI config output (using libftdi): + +``` +VID: 0x0403 +PID: 0x7fd0 +Release: 0x1000 +Bus Powered: 400 mA +Manufacturer: IKALOGIC +Product: ScanaQuad SQ50 +Serial: 1003050005482 +Checksum : 3e6a +PNP: 1 +Channel A has Mode UART +DBUS has 4 mA drive +CBUS has 4 mA drive +CBUS0 Function: TRISTATE +CBUS1 Function: TRISTATE +CBUS2 Function: TRISTATE +CBUS3 Function: TRISTATE +``` + +The proprietary libftd2xx calls it an "X-series" device, while libftdi thinks it is an FT230X. + +"User data" starts at 0x24 (0x12 in 16-bit word units), which is where the 3-byte "magic unlock code" resides. \ No newline at end of file