MPM3695-25 MTP Programming

I am attempting to set the configuration in an MPM3695-25.

I tried following the instructions on page 32 of the datasheet, but I am having trouble getting it to work.
The datasheet states to send the following command to set the MTP:

E7h(2000h) → E7h(1000h) → E7h(4000h)

I have done this and when a write with this 0xE7 command goes to the module, it doesn’t ACK.

What am I missing here?
Thank you.

Hi drew,
Thanks for posting on the MPSNow Forum.
Let me look into this and get back to you shortly.

Thanks,
Cindy

Hi again,

Apologies, this isn’t stated in the datasheet whatsoever, but please follow this MTP programming sequence:
image

Let me know if you have any issues!
Thanks,
Cindy

Hello Cindy,

Thank you for the quick response.
I am still unable to get this to work. The device does not ACK to the 0xE7 register address.
To be robust this is what I am attempting:

unsigned char buffer[2];

   buffer[0] = 0x01;

   buffer[1] = 0x20;

   i2c_write(&this->mpm3695, 0xE7, &buffer, 2);

   sleep(1);

   buffer[0] = 0x01;

   buffer[1] = 0x10;

   i2c_write(&this->mpm3695, 0xE7, &buffer, 2);

   sleep(1);

   buffer[0] = 0x01;

   buffer[1] = 0x40;

   i2c_write(&this->mpm3695, 0xE7, &buffer, 2);

   sleep(1);

   buffer[0] = 0x01;

   buffer[1] = 0x40;

   return i2c_write(&this->mpm3695, 0xE7, &buffer, 2);

I added the sleep after to see if that was needed but still no luck.

Is there any to confirm it the registers were written to the MTP?

Thank you

Hi drew,

Can you clarify if you applied the 3.2V during the erase command?
VCC should look something like this:
image

Thanks,
Cindy

I didn’t understand that I had to apply a different voltage to it.

So, do I have to send the first erase command, then change the output voltage according to the chart with the VOUT_COMMAND register?
If so, how do I change VCC without changing VOUT, as this range would damage circuits downstream?

Is timing critical here? If so, what are the details of that?

Thank you!

Any chance you help here? Thank you!