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.

TPS65988EVM: Unable to write data from project to device ram

Part Number: TPS65988EVM

I have communicated with engineering support several times about the issue I am having writing a project to device ram on a TPS65988EVM.

I can successfully communicate with the board, and I can see ports 20 and 24, and read the test registers successfully. However, after I load a project, I am unable to write that project to the device ram.

This the error I receive:

Exception Encountered during Import From Device:*** ERROR in FTDI call (I2C_DeviceWrite), status: 2
<type 'exceptions.Exception'>


Traceback (most recent call last):
  File "dialogWindow.pyc", line 9772, in import_config
  File "device_rw.pyc", line 707, in read_reg
  File "hw_interface.pyc", line 417, in hw_i2c_write_no_stop
  File "ftdi.pyc", line 615, in ftdi_i2c_write
Exception

This problem remains unresolved, and it is seriously impacting my project.

  • I should also mention that I am able to import data from the device ram into the "Global Device Settings Tab"  and the "Shared Device Setting Tab"

  • Hi Roy,

    Thanks for reaching out on E2E!

    Sorry for the difficulties of programing the TPS65988EVM.

    Can you show me how you ended up trying to flash the EVM?

    Are you selecting flash from current project?

    Thank you,

    Kevin

  • Hi Kevin,

    Ok, a little background. Originally, I was unable to either write to device ram directly through the FTDI adapter, or to recover using a bin file.

    Every time I tried to write to flash or to device ram over FTDI, I received an error. Reading did not seem to cause the error.

    We originally had purchased a TPS65988DJEVM in error. I broke off the TIVA board from that eval board, and plugged it into the  TPS65988EVM, and broke off the FTDI adapter. Now, I can read and write to flash, and can recover the firmware from a .bin file using TIVA. What I'm now trying to do is write directly to device ram to emulate what we will be doing on the production board.

    When I try, I receive the error:

    Exception Encountered during Import From Device:Tiva error: STATUS: ERROR_I2C - Command result: 0000000c - Length byte address ack error.

    <type 'exceptions.Exception'>

    Traceback (most recent call last):
    File "dialogWindow.pyc", line 9772, in import_config
    File "device_rw.pyc", line 680, in read_reg
    File "ppc_tiva_host.pyc", line 544, in read_reg_exchange
    File "ppc_tiva_host.pyc", line 514, in i2c_read_exchange
    File "ppc_tiva_host.pyc", line 183, in _i2c_read_exchangeMethod
    Exception: Tiva error: STATUS: ERROR_I2C - Command result: 0000000c - Length byte address ack error.

    Roy

  • Hi Roy,

    Thanks for the background on this.

    So from my current understanding, you are able to flash the device and get whatever initial settings you want from the GUI onto the PD controller.

    Are you getting this error when you enter debug mode?

    Entering debug mode is a way in which we allow our customers to both debug and in live time change register values that would emulate what they would do with an EC.

    Please let me know if you are unable to enter debug mode and change the register values (This would be equivalent to writing I2C).

    Thank you,

    Kevin

  • Kevin,

    I am frustrated. I am now the proud owner of TWO TPS65988 evaluation boards. One is a TPS65988DJEVM equipped with a TIVA board and the other is a TPS65988EVM equipped with a FTDI board.

    In my early trials before I realized that the TPS65988DJEVM board was not the correct board for our project (We are not interested in Thunderbolt) I had many problems interfacing via the FTDI board. Later on I learned that the FTDI board was flaky. (Quote from TI E2E Forum:

    This is something that we have just started noticing. It appears the FTDI driver can be somewhat flaky when flashing a device. Both TIVA and Aardvark are far more robust. 

    When you see this occur please try reflashing the EVM again and power cycling the EVM. The changes should now be there.

    We are looking into seeing if there's any way we can comprehend this within the tool and work around the the FTDI driver limitations.)

    So my idea was to remove the FTDI board from the TPS65988EVM board, and replace it with the TIVA board from the TPS65988DJEVM board. This improved things; I was now able to read, write, and erase flash memory, something I was not able to do reliably with the FTDI board installed. However, although I could read and save device ram, i still cannot write to device ram.

    In our application, we will be using a  microprocessor to configure the TPS65988 in a dynamic mode, changing it's characteristics to match the devices which are attached. To prove out this concept, I need to be able to write to device ram with the evaluation board.

    I still do not have an answer to this issue.

    Roy

  • A correction. While I AM able to successfully read, write and erase flash on the TPS65988DJEVM board with the TIVA board installed, I still cannot perform this task on the TPS65988EVM with TIVA attached.

  • Hi Roy,

    Sorry for the frustrations here and any confusion on my part so please correct me if I am wrong.

    From my understanding, you initially bought a TPS65988DJ EVM which uses the TIVA board. Since you do not need thunderbolt, you went ahead and purchased the TPS65988EVM. The TPS65988EVM uses an older FTDI chip which has been giving you issues, however you broke off the TIVA board and have been using that flash the device. 

    In our application, we will be using a  microprocessor to configure the TPS65988 in a dynamic mode, changing it's characteristics to match the devices which are attached. To prove out this concept, I need to be able to write to device ram with the evaluation board.

    The issue that you are having is regarding to writing to the device while it is in app mode to change device settings "on the fly" as your EC would in your final system. Please let me know if I am interpreting that part incorrectly. I just reached out to the team that handles the TIVA firmware as this was written with another team, however I do have a workaround regarding this issue.

    The debug mode in the GUI allows you to see all the device settings in real time. This allows you to also change the device settings in the RAM as you would with an EC.

    For example lets say that I initially flash the device with 1 sink PDO which is offered at 5V @ 3A. When entering debug mode, I can add additional sink PDOs just like an EC would that would then have the device offer whatever you contract I would like.

    The difference here is that you would be making the changes 1 by 1 rather than a complete feature set like you would with the write config to device feature in the GUI.

    Let me know if you are able to do this!

    Thank you,

    Kevin

  • Hi Kevin,

    Thank's for your reply. I am able to, for example, flash from current project on the TPS65988DJEVM, but I cannot on the TPS65988EVM. The failure message indicates it failed to erase flash. I also cannot erase flash manually.

    Using the TIVA interface, I entered debug mode and disabled a port. When I imported the settings from the device, the port was no longer disabled. I did not reboot the device during this test.

    Roy

  • Hi Roy,

    Can you share your project file?

    Thank you,

    Kevin

  • Kevin,

    In all instances, I am using the sample project file for the TPS65988DH called UFP

  • Kevin,

    I purchased a new TPS65988EVM, and using the FTDI board, I experienced somewhat different results. After snapping off the FTDI board and attaching the TIVA board, I am now able to perform read and writes to and from flash, as well as read and write device RAM.

    I want to thank you for your patience. I appreciate the difficulty in troubleshooting these issues remotely.

    Roy

  • Kevin,

    Would it be possible to send you a message containing a question regarding a client-specific question?

    Thank you,

    Roy

  • Hi Roy,

    Yes!

    Please go ahead and send me a friend request where you can private message me.

    Thank you,

    Kevin

  • Hi Kevin,

    I sent you a friend request, but haven't seen anything back. Should I send it again?

  • Hi Roy,

    Can you send it again?

    I didn't get a request from you.

    Please reply once you have sent it!

    Thank you,

    Kevin

  • Hi Kevin,

    Thanks for the response. I just sent another request.

    Roy

  • Hi Roy,

    Just accepted!

    Thank you,

    Kevin