We are facing a corrupt/missing data problem with FT245BM:
If the "pull down on USB suspend" option is enabled in EEPROM, on startup, we get 126 bytes of garbage followed by the first byte from host. Subsequent bytes come across fine.
If the "pull down on USB suspend" option is NOT enabled in EEPROM, the first byte from host is never received. Subsequent bytes come across fine.
The algorithm we are using to read is the following:
- Wait for RXF to go low
- Set RD low
- Wait for 200ns
- Read data
- Set RD high
- FT245BM connected to ATmega16
- Configured as bus powered device (100mA)
- VCC for the ATmega64 is switched using MICREL 2025-2BM power switch. Same as Fig 11 (Page 21) on the datasheet but with power switch IC instead of MOSFET. Any workarounds, debugging tips?