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.

TMDSICE3359: EtherCAT EEPROM update issue

Part Number: TMDSICE3359


Hi

I am working on ethercat from past 6 months on AM335x ICE v2.1 board but recently i am experiencing a problem when i try to update the eeprom.
when i try to update the eeprom i am getting an error:-

I am using Twincat 3.1 as my master and AM335x ICE as my slave.
Requesting a solution to this problem ASAP.

Thnaks & Regards
Chinmay Gupta

  • The EtherCAT experts have been notified. They will respond here.
  • Hi

    In addition to the above operations , i tried probing on U6(EEPROM) to check whether SCL or SDA is toggling when the eeprom update starts but no toggling is there on both the pins.
    For EtherCAT whether AM335x uses external eeprom or any built-in eeprom inside the processor ?

    Chinmay
  • Hi Chinmay, it is possible to have EEPROM_emulation or EEPROM_SPI for non-volatile storage in SPI flash. In order to know which one are you using please search in tiescbsp.h for "EEPROM_SPI" and see if it is defined or undefined.
    For more details please refer to EtherCAT_API_Guide.pdf (protocols\ethercat_slave\docs).

    thank you,
    Paula
  • Hi paula

    Thanks for your reply.
    can u pls suggest a solution to my eeprom update error.
    we are using eeprom_emulation.

    I am using the binary files provided by TI only in sdk 2.1.2.2.

    Regards
    Chinmay
  • Hi Chinmay, no sure about this error. A couple of thoughts, have you tried in another ICEv2 board with the same EEPROM binary that is currently failing? if so, does it works or same error?. If same error, do you have another EEPROM binary (a past backup maybe) in order to give a try?

    Also. what is the size of the binary? I see from tiesc_eeprom.h that tiesc_eeprom_size=2048, maybe worthy to check if the trouble one is bigger than this, for example.

    Finally, you mentioned you are using binary file from sdk 2.1.2.2. Maybe it would be worthy to build ethercat app, in debug mode, in your side, so you can step into the code. Or even better, maybe good to build in debug the full featured EtherCAT slave using the latest Industrial SDK (ISDK) or Processor SDK (PSDK). Below links

    Option 1, latest ISDK:

    SYSBIOSSDK-IND-SITARA  02_01_03_02

    Option2 EtherCAT component that goes on top of PSDK (Preferred, as this is teh way going forward)

    PRU-ICSS-ETHERCAT-SLAVE  01_00_02_01
    PROCESSOR-SDK-RTOS-AM335X  03_03_00_04

    Thank you,

    Paula

  • Hi paula

    To debug I analyzed a wireshark capture.
    According to BUSY bit is going HIGH & after that no communication is there.
  • Hi paula,

    In respect to above conversation with my colleague , I would like to add a capture so as to clarify.
  • Hi paula

    In addition to above conversation with my colleague , i would like to add a capture so as to clarify.

    attaching screen shot of Wireshark capture for reference.

  • Chinmay, could you please send me the EEPROM binaray and application that .out that you are trying? so I can give a try in my board.
    thanks,
    Paula
  • Hi Paula

    Thanks for your input.
    Now that is working properly after changing the binary files.
    Might be the problem is with the earlier binary that we were using.
    But another concern is there that we also tried Pre-built binaries provided by TI along with the default ESI file in the SDK folder and that was also not working.

    So if we say that the binary file we created was corrupted not sure why pre-built binaries was not working.

    We came across this problem when we were trying to implement FoE.
    As per your suggestion using SSC tool , we created full-featured application along with FoE enabled.

    In TwinCAT for FoE tab is coming for download and upload but when I proceed it is throwing an error.


    1. Where I can find firmware binary file for uploading it to slave?
    2. Do I need to rename any file for firmware upgrade?
    3. Only Firmware can be updated using FoE or we can send any binary file ?
    4. In which part of memory file goes when we perform FoE?

    My colleague Kalyan Kumar will be attaching all the images required as some technical issue is there with mine.

    Thanks
    Chinmay Gupta
  • Hi Paula

    Please find the attached screen shots below.

    1. FoE is enabled.

    2. ADS error while using FoE.

    Thanks 
    kalyan 

  • Hi Chinmay and Kalyan, I will answer some of the questions first.

    "But another concern is there that we also tried Pre-built binaries provided by TI along with the default ESI file in the SDK folder and that was also not working.

    So if we say that the binary file we created was corrupted not sure why pre-built binaries was not working."

    PC-- Pre-builds are only for quick testing, not everything enabled. Any development should use full-featured application

    " Where I can find firmware binary file for uploading it to slave?"

    PC-- PRU Firmware is located at C:\TI\PRU-ICSS-EtherCAT_Slave_01.00.0X.00\protocols\ethercat_slave\firmware\v1.0. Firmware there are in header files and binaries

    A quick clarification, when you mentioned "FoE for firmware update", are you referring to bootloader and/or application update via FoE? or to PRU-ICSS Firmware? 

    I will check with a colleague about your FoE questions and come back to you.

    Thank you,

    Paula

  • Hi Paula,

     when you mentioned "FoE for firmware update", are you referring to bootloader and/or application update via FoE? or to PRU-ICSS Firmware?

    Ans :- If I am not wrong than we cannot update bootloader and/or application via FoE.

    We can use FoE to update Firmware. Now while trying that some errors are there which we have already mentioned previously.
    Apart from that can we use FoE to upload or download any other files also ?

    The important part for us is to check whether FoE is working properly i.e. we can upload or download any file to slave using FoE ?

     

    Thanks
    Chinmay

  • Hi Chinmay, I got some good information and answers to your previous questions from a colleague. Please see below:

    Wiki Link with instructions for "Online application upgrade from TwinCAT

    1. Where I can find firmware binary file for uploading it to slave?
    We can rename the app to ECATFW__

    2. Do I need to rename any file for firmware upgrade?
    Yes.

    3. Only Firmware can be updated using FoE or we can send any binary file ?
    If we upload any other file, we think, app gets replaced, and the board will not come-up. However, we haven't tried it.

    4. In which part of memory file goes when we perform FoE?
    Flash.

    Thank you,

    Paula