This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

UCD9081: UCD9081RHB cannot erase in the block 0xE000 ~ 0xE1FF

Part Number: UCD9081

Dear TI Experts,

We encountered the following problems when developing TI UCD9081RHB (QFN32) as follows.

The blank IC can program the data file, and the comparison is no problem.

But in the block 0xE000 ~ 0xE1FF, after Erase (as shown below) according to the data programming process, the read value still does not change

Is this normal? Or are there any procedures we need to pay attention to?

User Data (0x1080 ~ 0x10FF) This block can be read, programmed and cleared normally.

Configuring(0xE000 ~ 0xE1FF) can be programmed and readable but cannot be erased.

 

Please help to solve the problem.

Thank you very much!

  • Hi

    Do you have follow https://www.ti.com/lit/pdf/slva275?

    1. open flash

    2. set base address

    3. erase

    Regards

    Yihe

  • Dear Yihe,

    We have the entire process in accordance with the document 3.7.1 UCD9081 I2C Transactions for Writing User Data and PARAMS.

    User Data: 0x1080 ~ 0x10FF can read, write and erase normally.

    User Configuration: 0xE000 ~ 0xE1FF can also read and write.

    After loading the programming data file, both blocks can program successfully.

     

    But when we want to erase the value back to the factory value.

    User Data: 0x1080 ~ 0x10FF, we can change it back to Factory Default normally according to the 3.7.1 process.

    User Configuration: 0xE000 ~ 0xE1FF, it cannot be changed back to Factory Default

  • Hi

    Can you erase it before write back?
    Regards

    Yihe

  • Dear Yihe,

    No, we cannot erase the 0xE000 ~ 0xE1FF (User Configuration) block before write back.

    We can only erase the 0x1080 ~ 0x10FF(User Data) block before write back.

    Is this normal? Or are there any procedures we need to pay attention to?

    Best Regards,

    David 

  • Hi

    Have you tried using our GUI and USB-TO-GPIO dongle? The UCD9081 GUI can load the default EVM setting.

    Regards

    Yihe

  • Dear Yihe,

    Yes, after imitating the waveform of TI kit software, it can be successfully Erase and Write back the factory value of the IC.

    But the waveform of TI kit software is conversely done by first making the 0xE000 ~ 0xE1FF (User Configuration) blocks and then the 0x1080 ~ 0x10FF (User Data) blocks.

    Because sometimes the IC will suddenly have no ACK, causing the programming to fail, we deeply appreciate if you can give us some suggestions of waveform delay time and hardware design.

    Thank you and Best Regards,

    David

  • Hi

    Let me summary what you wrote:

    1. Using TI GUI and Dongle, there is no issue to erase and write factor value

    2. if following the same approach as TI GUI, you can also erase and write factor value without issue.

    The UCD9081 has software-based I2C so clock stretching is required by the host.  and the clock shall not be over 100KHz.

    Regards

    Yihe

  • Dear Yihe,

    No, we still need your help to solve the below issue.

    According the imitating the waveform of TI kit software, it can be successfully Erase and Write back the factory value of the IC but sometimes the IC will suddenly have no ACK, causing the programming to fail.

    We deeply appreciate if you can give us some suggestions of waveform delay time and hardware design.

    Thank you and Best Regards,

    David

  • Hi

    Is the no ACK present when using TI dongle or your own tool?

    You have to use 100KHz or less speed. Do your host support clock stretching?

    The UCD9081 programming guide also has requirement about the timing and timeout. please also check.

    Moreover what kind of delay between each commands?

    Regards

    Yihe