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.

TM4C1294KCPDT: Ethernet Stability Issue with TM4C1294KCPDT on custom board

Part Number: TM4C1294KCPDT
Other Parts Discussed in Thread: ENERGIA

We are using  Tiva TM4C1294KCPDT controller from Texas Instruments.

 

Issue: Ethernet Controller shuts down, no ping response or network connection after long run. The controller is running  as serial communication with the controller is working, but Ethernet phy is shutdown.

System has implemented watchdog  but that is not getting triggered since system is working ok except the Ethernet.

 

This is happening randomly but is consistent across all devices.

 Programming Environment: Energia

Tivaware :2.1.4.178 Ethernet Files updated.

Please help resolve this.

  • Hi Suchit,

     Since it is consistent across all devices, I think it is worthwhile to check your cabling and connection.  Please also check your board design against the TM4C129 Systems Design Guideline section 4.1 here and the  LaunchPad reference design schematic.

     I have a few questions.

     When you said the PHY is shutdown after long run, how long is this actually? Minutes, hours, or days?

     Did you try the TM4C129 LaunchPad and can you reproduce the same problem?

     I never really worked with Energia. I'm wondering how you combine the TivaWare library into Energia? Can you elaborate?

     When you said the Tivaware :2.1.4.178 Ethernet Files updated, what did you mean? Did you actually modify the TivaWare Ethernet library or you meant to say you are using the latest TivaWare library?

  • We have rigorously tested the device. Cabling and connection are alright. Cause when we reset the power, it start functioning again.
    #1. It is random: it happens sometime within 24 hours of a reset or might take a week long.
    #2. We have tried the launchpad, we face bus fault issue on it as well. We are unable to fix it and doing a system reset in that case.
    #3. We have updated lwlib.c and tiva-tm4c129.c in energia`s ethernet library from the latest Tivaware souce as energia is using the older version files.

    Our system our scanning the device using Modbus Protocol @ 100ms. 4-5 Clients at a time.
  • Hi,
    It is really hard to suggest what might have happened when it can work up to a week and then failed. Hopefully some community members may be able to chime in with suggestions.

    Do you have the wireshark capture of the ICMP ping request/reply when it is working and when it is not working? Do you use DCHP address? How can you guarantee that the IP address that you are trying to ping is the same address as the one that was assigned a week ago?

    As I mentioned I'm not familiar with the energia platform and I'm not sure why your choice of the IDE is not of CCS or other popular platforms that provide much better debugging capabilities. Have you tried the original version of TivaWare/libraries that comes with the Energia before? What was the result?

    Are you saying on the LaunchPad you have exactly the same failure? You mentioned you have bus fault with the Lpad but you didn't say about this for your custom board. If you are getting the bus fault you should investigate the cause of it first. This is where I think a good IDE will help tremendously. I don't know how extensive you can do this in Energia.
  • #1. We use Static IP Address for device communication, so ip address conflict is not an issue.
    #2. We have used the TivaWare libraries with energia without any issue.
    #3. Both boards (custom hardware as well as launchpad) have the same behaviour, the issue happens on both.
    #4. The fault occurs in the TCP/IP Stack when it tries to allocate a new pbuf , i need to check the exact function where it happens.Again this does not happen all the time. With 2 Clients it does not happen that frequently but when i up it to 4 clients it becomes evident in 4-5 hours. Since it was in the lwip, we did not modify . As we do not have deep understanding of the stack.
  • Your description leads me to speculate if you have a overflow issue. Can you try to increase your stack size and may be even the heap size and see if it makes a difference. We are not the LwIP experts. If you think the problem is intrinsic to the LwIP TCP/IP stack then I will suggest you also post your question to the LwIP forum once you confirm that by increasing the stack/heap size the problem remains as before.
  • We were just able to reproduce the issue, ping was lost. Important things notice: (Communication Mode : Debug Serial Port)

    1. Link status was showing ON, so physical connection was on.

    2. Powering Phy OFF and ON made no change. Link was still detected and ping did not come up, that means the TCP/IP stack was not responding to the ping request.

    So we can narrow the issue to the stack. i don`t know were the ping response is being generated in the LwIP stack but somehow it seems it runs out of memory.

    Could you point to some doc where i can change the stack and heap size in energia, would be really helpful.

    Thanks.

  • Hi,
    Ok, it looks like as I speculated earlier that the problem could be stack/heap size related. I think the first thing will be to increase the stack size and see if it helps. However, as I mentioned before we don't have enough knowledge to support energia. Please post energia related questions to https://forum.43oh.com, Below is one post that maybe helpful concerning stack/heap.

    forum.43oh.com/.../