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.

TMS320F28388D: EtherCAT error of TMS320F28388D by silicon revsion.

Part Number: TMS320F28388D
Other Parts Discussed in Thread: C2000WARE, TMDXCNCD28388D, TMDSCNCD28388D

Hi,

My customer is testing the EtherCAT on the TMS320F28388D using a old C2000ware.

Recently, she changed the revision on the her board because the silicon revision of the TMS320F28388D is updated.

After changing revision, the EtherCAT test is fail.

The EtherCAT example of C2000Ware_2_00_00_03 is working on the silicon revision '0'.

But the latest version (C2000Ware_3_02_00_00) is not working on the silicon revision 'A'.

It doesn't output ESC signal.

And the latest version doesn't work on the TMDXCNCD28388D. it is probably the '0' revision.

I think that C2000Ware version and silicon revision doesn't match.

According to the release notes, the EtherCAT library is updated In 3.02.00.00.

Could I get the information related to this issue?

  • Hello

    The latest F28388D revB controlCARD has been updated to use 25Mhz input oscillator (vs the current 20MHz). C2000Ware v3.02.00.00 has been updated to assume 25MHz. This is particularly important for EtherCAT since the 25Mhz input corrects the requirement that EtherCAT IP and PHYs need the same clock source.

    When building the C2000Ware v3.02.00.00 EtherCAT examples, did you see a warning in CCS? And/or flashing LEDs on the controlCARD?

    Additionally, I recommend reading the EtherCAT Software User guide as this provides more information on this topic.

    Best regards

    Chris

  • Hello,

    I checked it. 

    EtherCAT of revA controlCARD (silicon revision 0) worked fine using 20MHz input oscillator.

    Can Silcon revision A use 20MHz?

    Custom board is configured 20MHz input oscillator and silicon revision 'A' CPU.

  • Hello,

    The silicon can use 20MHz, but to meet EtherCAT conformance requirements the EtherCAT IP input clock needs to also be used for the PHYs which require 25MHz. I recommend changing your input oscillator to 25MHz. 

    In the short term, you can continue to use C2000Ware v3.01.00.00 software for development/testing before making the changes I recommended above.

    Best regards

    Chris

  • Hello Chris,

    I changed the input oscillator to 25MHz and updated the C2000Ware_3_02_00_00.

    But the EtherCAT examples still don't run.

    ESC_MDIO_CLK and ESC_MDIO_DATA MDIO signals are not appeared after ESC_resetESC( );

    ESC_initHW( ) function returns ESC_HW_INIT_FAIL.

    I couldn't program the EEPROM because TwinCAT has not discovered the ESC.

    I compared the registers of revision 0 that worked and revision A, but there was no particular difference.

  • Hello

    The ESC_initHW() will return error is EEPROM isn't programmed. Run the example past ESC_initHW(), which sets up the clocks and GPIOs. Once that is complete, EtherCAT master can discover slave and be used to program the EEPROM.

    Best regards

    Chris

  • EtherCAT master can't discover slave.

    How can I program the EEPROM?

  • Hello

    You need the slave to be discoverable to program EEPROM.

    Have you updated all the EtherCAT code as well device/driver code to use from C2000Ware v3.02.00.00? Is it showing any build warnings/errors? You running EtherCAT from CPU1 or CM?

    As I mentioned, once EtherCAT clocks/GPIOs are setup, EtherCAT master can discover the slave.

    Best regards

    Chris

  • Yes, I have updated.

    I’m testing EtherCAT example of C2000ware v3.02.00.00.

    After updating clock warning was shown in ccs console window, so I changed oscillator 20MHz to 25MHz.

    And then clock warning was disappeared.

    I think that discovering EtherCAT slave is not related EEPROM. If it is not, all boards made first time cannot be discovered.

    I guess EtherCAT configuration or silicon revision ‘A’ have problems.

    EtherCAR configuration example is provided by TI.

  • Hello

    Yes, you can discover slave without programmed EEPROM.

    The clock warning should always be shown unless it was removed. 

    Can you share/attach your etherCAT HAL source file that you are using?

    Thanks

    Chris

  • Hi, 

    I'm testing using c2000ware v3.02.00.00

    example project is f2838x_cpu1_pdi_hal_test_app.

    I didn't change any source.

    Additionally, I got a revB TMDSCNCD28388D.

    I tested 2838x_cpu1_pdi_hal_test_app on new control card, but it didn't work.

  • Hello

    In regards to running the PDI HAL test on the revB controlCARD, can you provide more on detail regarding "didn't work"?

    Edit: Additionally, are you using TwinCAT as EtherCAT master? Have you followed the EtherCAT SW guide to install the correct PC drivers and etc?

    Best regards,

    Chris

  • Hello,

    ECAT_MDIO_CLK and ECAT_MDIO_DATA don't ouput signal after ESC_initHW( );

    GPIO_setPinConfig(GPIO_152_ECAT_MDIO_CLK);

    GPIO_setPinConfig(GPIO_153_ECAT_MDIO_DATA);

  • Hello

    The MII interface isn't necessary for operation. You could remove that configuration and the slave would still be discovered/work. Many EtherCAT slaves do not communicate with the PHY via management interface unless EtherCAT master requests this.

    Do you have other details regarding what "isn't working"? Are you using TwinCAT as EtherCAT master? Have you followed the EtherCAT SW guide to install the correct PC drivers and etc?

    Best regards

    Chris

  • Hi Chris,

    I solve the problem on ControlCARD revB.

    it is detected by TwinCAT. (TwinCAT is EtherCAT master)

    But a custom board that has silicon revision A isn't still scanned in TwinCAT.

    We are checking PHY connection and comparing with EVM.

    Best Regards,

  • Hello

    Great! What was the solution for controlCARD?

    Alright, keep us posted! 

    Best regards

    Chris