AnsweredAssumed Answered

Programming the MMPF0100NPAEP: OTP is BLANK

Question asked by Matthew Cook on May 23, 2016
Latest reply on Jul 7, 2016 by Matthew Cook

I am using PF0100 EVK Control GUI (Revision 3) to program a PMIC "MMPF0100NPAEP." I have not had problems programming PMICs using my current script usually, but this PMIC has been replaced so I suspect there could be a peripheral to the chip that could have failed causing the programming of the chip to fail, or the new chip is bad too.

 

The programming seems to go through the script without error, but upon completion of programming the chip, the message "OTP is BLANK" message appears, and the chip is not programmed.  What are the things that would cause this?

 

I have verified that I can write an I2C byte to the chip and read that same I2C byte back from the chip using the program tool.  PF0100 EVK Control GUI (Revision 3)

 

Thanks,

 

Here is the LOG:

 

PF-Programmer is Connected

3.3V Supply is Enabled

Configuration successfully read.

Date: 5/23/2016 Time: 1:18 PM

Configuration File Used: \\ENGINEERING\Engineering\Design Notebooks\99977 EVi Scanner Instrument\7  Sub Projects\71982_EVi_Power_Board\5  Software\PMIC Scripts\Rev A\i.MX6X_PMIC_OTP_Script.txt

WRITE_I2C to 0x7F, Data = 0x01

WRITE_I2C to 0xA0, Data = 0x2E

WRITE_I2C to 0xA1, Data = 0x10

WRITE_I2C to 0xA2, Data = 0x05

WRITE_I2C to 0xA8, Data = 0x2E

WRITE_I2C to 0xA9, Data = 0x10

WRITE_I2C to 0xAA, Data = 0x01

WRITE_I2C to 0xAC, Data = 0x00

WRITE_I2C to 0xAD, Data = 0x14

WRITE_I2C to 0xAE, Data = 0x01

WRITE_I2C to 0xB0, Data = 0x2F

WRITE_I2C to 0xB1, Data = 0x11

WRITE_I2C to 0xB2, Data = 0x01

WRITE_I2C to 0xB4, Data = 0x2F

WRITE_I2C to 0xB5, Data = 0x11

WRITE_I2C to 0xB6, Data = 0x01

WRITE_I2C to 0xB8, Data = 0x71

WRITE_I2C to 0xB9, Data = 0x01

WRITE_I2C to 0xBA, Data = 0x01

WRITE_I2C to 0xBC, Data = 0x00

WRITE_I2C to 0xBD, Data = 0x14

WRITE_I2C to 0xC0, Data = 0x00

WRITE_I2C to 0xC4, Data = 0x14

WRITE_I2C to 0xC8, Data = 0x00

WRITE_I2C to 0xC9, Data = 0x14

WRITE_I2C to 0xCC, Data = 0x00

WRITE_I2C to 0xCD, Data = 0x14

WRITE_I2C to 0xD0, Data = 0x00

WRITE_I2C to 0xD1, Data = 0x14

WRITE_I2C to 0xD4, Data = 0x00

WRITE_I2C to 0xD5, Data = 0x14

WRITE_I2C to 0xD8, Data = 0x00

WRITE_I2C to 0xD9, Data = 0x14

WRITE_I2C to 0xDC, Data = 0x00

WRITE_I2C to 0xDD, Data = 0x14

WRITE_I2C to 0xE0, Data = 0x07

WRITE_I2C to 0xE1, Data = 0x07

WRITE_I2C to 0xE2, Data = 0x07

WRITE_I2C to 0xE8, Data = 0x00

WRITE_I2C to 0xFF, Data = 0x08

WRITE_I2C to 0xE4, Data = 0x02

WRITE_I2C to 0xE5, Data = 0x02

WRITE_I2C to 0xE6, Data = 0x02

WRITE_I2C to 0xF0, Data = 0x1F

WRITE_I2C to 0xF1, Data = 0x1F

WRITE_I2C to 0x7F, Data = 0x02

WRITE_I2C to 0xD0, Data = 0x1F

WRITE_I2C to 0xD1, Data = 0x1F

WRITE_I2C to 0xF1, Data = 0x00

WRITE_I2C to 0xF2, Data = 0x00

WRITE_I2C to 0xF3, Data = 0x00

WRITE_I2C to 0xF4, Data = 0x00

WRITE_I2C to 0xF5, Data = 0x00

WRITE_I2C to 0xF6, Data = 0x00

WRITE_I2C to 0xF7, Data = 0x00

WRITE_I2C to 0xF8, Data = 0x00

WRITE_I2C to 0xF9, Data = 0x00

WRITE_I2C to 0xFA, Data = 0x00

VPGM = ON

8.0V Supply is Enabled

DELAY = 500  msec

WRITE_I2C to 0xF1, Data = 0x03

WRITE_I2C to 0xF1, Data = 0x0B

DELAY = 100  msec

WRITE_I2C to 0xF1, Data = 0x03

WRITE_I2C to 0xF1, Data = 0x00

WRITE_I2C to 0xF2, Data = 0x03

WRITE_I2C to 0xF2, Data = 0x0B

DELAY = 100  msec

WRITE_I2C to 0xF2, Data = 0x03

WRITE_I2C to 0xF2, Data = 0x00

WRITE_I2C to 0xF3, Data = 0x03

WRITE_I2C to 0xF3, Data = 0x0B

DELAY = 100  msec

WRITE_I2C to 0xF3, Data = 0x03

WRITE_I2C to 0xF3, Data = 0x00

WRITE_I2C to 0xF4, Data = 0x03

WRITE_I2C to 0xF4, Data = 0x0B

DELAY = 100  msec

WRITE_I2C to 0xF4, Data = 0x03

WRITE_I2C to 0xF4, Data = 0x00

WRITE_I2C to 0xF5, Data = 0x03

WRITE_I2C to 0xF5, Data = 0x0B

DELAY = 100  msec

WRITE_I2C to 0xF5, Data = 0x03

WRITE_I2C to 0xF5, Data = 0x00

WRITE_I2C to 0xF6, Data = 0x03

WRITE_I2C to 0xF6, Data = 0x0B

DELAY = 100  msec

WRITE_I2C to 0xF6, Data = 0x03

WRITE_I2C to 0xF6, Data = 0x00

WRITE_I2C to 0xF7, Data = 0x03

WRITE_I2C to 0xF7, Data = 0x0B

DELAY = 100  msec

WRITE_I2C to 0xF7, Data = 0x03

WRITE_I2C to 0xF7, Data = 0x00

WRITE_I2C to 0xF8, Data = 0x03

WRITE_I2C to 0xF8, Data = 0x0B

DELAY = 100  msec

WRITE_I2C to 0xF8, Data = 0x03

WRITE_I2C to 0xF8, Data = 0x00

WRITE_I2C to 0xF9, Data = 0x03

WRITE_I2C to 0xF9, Data = 0x0B

DELAY = 100  msec

WRITE_I2C to 0xF9, Data = 0x03

WRITE_I2C to 0xF9, Data = 0x00

WRITE_I2C to 0xFA, Data = 0x03

WRITE_I2C to 0xFA, Data = 0x0B

DELAY = 100  msec

WRITE_I2C to 0xFA, Data = 0x03

WRITE_I2C to 0xFA, Data = 0x00

WRITE_I2C to 0xD0, Data = 0x00

WRITE_I2C to 0xD1, Data = 0x00

VPGM = OFF

8.0V Supply is Disabled

DELAY = 500  msec

PWRON asserted LOW

DELAY = 500 msec

PWRON released HIGH

Programming Complete

Check: OTP is BLANK

Outcomes