Hello,
I am developing a TCP/IP streaming application on a LPC4088 (ARM Cortex M4F) quickstart board platform under Keil RTX5 using the MDK Middelware Network component 7.9.0.
I am sending data from the device's TCP Client Socket to a listening TCP Server socket on a C# application.
The data rate is 1 packet every 0.005 second with a packet data length equal to 967 bytes.
The streaming is running smoothly but I sometimes observe large delays between subsequent packets (up to 7 seconds). At code level, netTCP_SendReady(sock) returns false during several seconds.
When debugging with Network Debug STDIO activated, I can read the following :
496.8 ETH-ERR:Send, Link down 496.8 ETH-ERR:Send, Link down 496.8 ETH-ERR:Send, Link down 496.9 ETH-ERR:Send, Link down 496.9 ETH-ERR:Send, Link down 496.9 ETH-ERR:Send, Link down 497.3 ETH-ERR:Send, Link down 498.1 ETH-ERR:Send, Local-IP4 undefined
Meanwhile in Keil UV5 Network debug interface, I see the ETH Interface status is Link-Down and the IPv4 IP address is 0.0.0.0. The link goes up directly after and the correct IP is successfully retrieved.
Meanwhile In Keil UV5 Command View, I can read errors of the following type :
Expression: 'QML[j + QCB[i].ml_idx].addr' E303: Access out of bounds - <readlist 'QML[1]'> - actual index:=2
The problem's frequency of occurence can vary from very small (once in an hour) to very large (several times in a minute).
Any help would be very much appreciated
Adrien
First of all, thank you very much far taking the time to answer my question.
I am indeed using the EMAC driver from LPC4000 Device Family pack (EMAC_LPC40xx.c).
I made the modification and launched a test a few hours ago and no "link down" event so far.
Thank you again !