USB PD MP5031 configuration issue

Hi,
I’m using an MP5031 USB PD controller chip (it is part code MP5031GRE-00A3-P ). I need to change the default configuration, and I have done so, using I2C. The configuration is supposed to be one-time programmable. However, after verifying that the register values were successfully changed by re-reading the registers, I power-cycled the board, and the register values went back to the default, as if I had not programmed it.

I have measured VCC, it is 5.01V, so I believe the registers should contain the OTP values which I configured via I2C.

To do the I2C programming, I used a microcontroller and I followed the datasheet. Is the datasheet missing steps? It doesn’t actually mention how to permanently write the registers.

I have placed the circuit diagram, and the register values that I used, at the link here:
Help needed for a USB-C Power Delivery Circuit

The I2C registers that I wrote are listed there. Do I need to issue any other I2C instruction for the MP5031 to accept the values to be permanently written?

Secondly, are the register changes that I made appropriate for the circuit? Any other register values that I should change?

Any help would be appreciated, because there are no examples on the Internet about this chip, so I only had the datasheet to work with. If you can help, then it will assist others who may want to use this chip.

Many thanks!

Hello,
Any update on this issue? If this is the wrong category on the forum, where should I place this request for assistance?
Many thanks.

Hi Shabaz,

Thank you for utilizing the MPS Technical Forum,

The term OTP is a common industry term, for OTP the device is digitally programmed by the manufacturer. The current default parameters are the standard OTP features already programmed.

For a customized OTP for a customer, it still needs to go through the manufacturer to be programmed and new default parameters to be set. Therefore, however many times the user writes to the volatile memory, the OTP settings still remain unchanged once the device is power cycled. In the industry, there are MTP (multi-time-programmable) devices as well that can be power cycled, and the default settings can be configured.

For this device, we do have a MPQ version, so MPQ5031 that is available on Virtual Bench Pro 4.0 GUI. The register settings will be same for both versions. This way you can write to the volatile memory of the MP5031 device, and not power cycle to run your tests.

Kind Regards,
Nouman

1 Like

Hi Nouman,

Thank you for the reply! I have some questions to just clarify things:

  1. This is a surprise that OTP means pre-programmed by manufacturer, because it also means devices that are programmed once by the end equipment manufacturer. What is the difference between the MPQ5031 and the MP5031? Is the only difference that the MPQ5031 is not pre-programmed by the manufacturer, or is there any other difference that the end equipment manufactuer should be aware of?

  2. The datasheet for the MPQ5031 looks almost identical to the MP5031. The MPQ5031 datasheet also refers to OTP, just as the MP5031 datasheet. Also, the MPQ5031 datasheet refers to default values. Is it guaranteed that the MPQ5031 has not been pre-programmed by MPS?

  3. Which MPQ5031 part code do you suggest? I cannot tell which one is blank. so that I can perform the one-time operation. I see these part codes on Farnell website:
    (a) MPQ5031GRE-0013-AEC1-P
    (b) MPQ5031GRE-0015-AEC1-P
    (c) MPQ5031GRE-0001-AEC1-P
    Which one of these, (a), (b) or (c) is the blank one?

  4. If none of them are blank, which part code is best suited for my circuit, which uses MP2491C as the DC-DC converter? That way, I can just order from Farnell the correct MP5031 or MPQ5031 chip that already meets my configuration needs.

  5. Is there a description of the I2C configuration for each of the different configuration code chips which are available? This will make life a lot easer for device manufacturers, if they can just align their circuit to the configuration code chips that are already available.
    Can I have the default configuration values listed for the part codes referred to above in question 3?

  6. You mention “This way you can write to the volatile memory of the MP5031 device, and not power cycle to run your tests”. Do you mean I can use my existing current MP5031 and just write and not power cycle to do my tests? Or was it a mistake and you meant MPQ5031?

  7. For the MPQ5031, is it possible to use Virtual Bench Pro without having a I2C interface? I do not currently have that. I have downloaded and installed Virtual Bench Pro 4.0 and although I can select options for the MPQ5031, I cannot export the I2C values. The Export button is grayed out. I would like to see the I2C register values, so that I can program them using my own microcontroller. It is possible to see all the I2C register values that need to be programmed?

  8. For the blank MPQ5031, Is any special I2C command needed to permanently write the configuration? The datasheet does not mention that any special command is needed to make the configuration permanent. So, do I just need to write the values that I wish to be changed, and then just power-cycle? No need for any delay or any command to instruct the changes to be made permanent?

Many thanks for your help!

Hi Shabaz,
OTP = one time programmable
OTP sets the default register settings, i.e. in standalone operation when its not being configured by a MCU or another master device. There is a standard register setting that fits general requirements, then occasionally, customers also require customized programmed ICs as well.

  1. MPQ is the automotive grade of MP5031 device. Thats the main difference. There are certain standards that need to be met. This device is popular among general consumer electronics as well as automotive.

  2. The datasheets look identical because it is similar part. OTP default registers are shown to indicate how the device should behave when operational. All devices by manufacturers are pre-programmed to a general operational standard. This is to meet general requirements of this application.

3,4,5. We do not have blank devices for this specific device. You can go with the “-0001” as the general standard one. I do not believe either of those are preprogrammed to go with MP2491C. It depends on customers specific application. You should be able to view the default parameters on the on the datasheet and Virtual Bench 4.0. You may modify it on VB4 as well.

  1. I did mean MP5031 not MPQ. Its same part, different end market standards.

  2. I do not think you can use GUI to communicate to the hardware without a I2C interface or monitor/export relevant settings.

  3. For permanent setting, there is no such command. The process of implementing permanent settings is called OTP.

You may utilize the datasheet’s register setting description + GUI to familiarize yourself with the live programming of the device. For general applications, standard register settings should also be sufficient.

Regards,
Nouman

Hi Nouman,

I’ve asked colleague engineers, and we have never heard of OTP automatically meaning that it is programmed by the chip manufacturer. Many ICs, such as memory chips and microcontrollers, are advertised as OTP by chip manufacturers, and it is possible for end equipment manufacturers to be able to program them once. I’d strongly suggest that the datasheets for the MP5031 and MPQ5031 are updated to make it clear that the chip is NOT one-time-programmable by the end equipment manufacturer.

MPS does not need to take my word for it. I have attached a screenshot from a datasheet from a different manufacturer, as evidence. That manufacturer (and I can provide examples from other manufacturers too) all understand OTP to mean that a user (End Equipment Manufacturer) can program the chip once. It is in the name, OTP (One Time Programmable). The O means “Once”, not “Zero”.

Please can you supply the OTP configuration contents for the following three product codes:
(a) MPQ5031GRE-0013-AEC1-P
(b) MPQ5031GRE-0015-AEC1-P
(c) MPQ5031GRE-0001-AEC1-P

Based on the OTP configuration contents, I will purchase the one that I can design my circuit around.
MPS must be aware of the OTP configuration for each of these three chips, it must be documented somewhere within MPS. It is not a confidential thing since it can be read out from the IC. To save everyone effort, we would like to see the I2C configuration detail for each of these three product codes.
I have already wasted effort soldering in one of the chips, so I don’t want to have to desolder and resolder parts just to obtain detail which MPS should (and ought to) be able to supply.

Many thanks!

1 Like

Hi Nouman,

I have written a longer reply, however I edited it several times and your spam blocker thinks it was spam, whereas it was merely edited too quickly.
Please can you unblock it, since I typed a lot of detail in it. I have responded to the automated response that I got when it was blocked, but no-one has responded for 5 days.

1 Like