I have a:
- KITPF0100EPEVBE Evaluation Board
- KITPFPGMEVME Rev B Programmer (Vendor ID 0x5A2, Part ID 0x0050)
- Programming GUI V4.1 running on a W10 computer.
- Custom PCB with a MMPF0100NPAEP (based on the iMX6 Fedevel OpenRex board)
Testing the Evaluation board with the programmer works fine as long as I place J46 in position 1-2 (3.3V LDO).
If placing the J46 in position 3-4 (SWA4), the GUI hangs when enabling the target.
The custom PCB is similar to placing J46 in position 3-4 (SW4A, 3.3V), but the programmer powers the PMPF0100 3.3V VDDIO.
Hardware Considerations according to AN4536:
- I2C separated from other board circuits (goes directly to FP0100).
- I2C 10K pullups to programmer's V3.3
- VIN = 3.3V (separate supply applied before attaching the programmer)
- Programmer's V3.3 connected to VDDIO and to I2C pull-ups.
- PF-programmer PWRON connected to PF0100 PWRON with a 100K to VSNVS
- All pull-ups and capacitors according to AN4536
When enabling the target, the programmer's V3.3 powers the VDDIO and the voltages measured on the board fully complies to the requirement of programming. Nevertheless, the GUI hangs after enabling the target. I have even tried to connect VIN and VDDIO together (prior to attaching the PF-programmer) without result. Enabling target supply make the GUI hang. While the GUI hangs I can verify that all voltages are within spec.
Two times in two days efforts I have successfully connected the programmer and have been able to run the TBBOTP, but over 90% of the tries fails.
I suspect there must be some obscure criteria (e.g. timing or internal PF-programmer sensing) that is not easily derived from the datasheets.
I found the reason for the problem:
The 0402 hand-soldered I2C pullups had lost contact with the programmers V3.3 pin. The ported design require some handmade modifications to program the PMIC. On my next revision I will make a better support for this. However, the PF-programmer should have detected this situation (by a timeout) and reported it in stead of making the GUI hang!