To whom it may concern,
We've observed and constantly reproduced this NDK issue in different TI-RTOS + NDK versions.
Could you please help take a look and let us know whether there is a possible fix in the NDK?
We haven't been able to fix it in NDK.
Please note that
(1) This issue is not at all related to this post: e2e.ti.com/.../2766061
(2) This system crash problem actually not only happens during NDK initialization.
We've observed the same crash problem constantly if too many incoming packets are not
processed on time in the application level (by recv() / recvnc() / recvfrom() / recvncfrom()).
We've been looking for a solution to detect such crash and auto-recover the NDK interface, but no luck so far.
The details are described below. Thanks in advance for your time!
YW
Environment:
EVMK2G hardware numbers: FY160626000104 (SN: 15164P540011) ASSY REV: D1.3
ti-processor-sdk-rtos-k2g-evm-06.03.00.106-Windows-x86-Install.exe + CCS9.3.0.00012_win64.zip (NDK 3.61.01.01)
or ti-processor-sdk-rtos-k2g-evm-05.00.00.15-Windows-x86-Install.exe + ccs_setup_8.0.0.00016.exe (NDK 2.26.00.08)
Example project generation (take the latest TI-RTOS version for example):
1. Open command prompt
cd /D "C:/ti/pdk_k2g_1_0_16/packages/"
pdksetupenv.bat
pdkProjectCreate.bat K2G evmK2G little nimu all dsp C:/ti/pdk_k2g_1_0_16/packages
2. Import `C:/ti/pdk_k2g_1_0_16/packages/MyExampleProjects/NIMU_BasicExample_evmK2G_c66xExampleProject` into CCS workspace.
3. Edit helloWorld_k2g.c:
Change "useDhcp" from TRUE to FORCE
Change "LocalIPAddr" and "GatewayIP" according to your PC's network setup.
4. Build the NIMU_BasicExample_evmK2G_c66xExampleProject example.
Procedures to reproduce the issue:
1. Download packet sender packetsender.com/download
Fill the "ASCII" field with 1024 ascii characters.
Set the "Address" to LocalIPAddr used in helloWorld_k2g.c
Set the "Port" with any port you like. Doesn't have to be the echo port used in this example.
Set the "Resend Delay" to 0.1 (ms).
Set "UDP"
Press "Send"
An example of my Packet Sender screenshot is attached.
2. Run the NIMU_BasicExample_evmK2G_c66xExampleProject output binary file on DSP of EVMK2G.
3. You should see system abort with the following error messages in K2GEVM.ccxml:CIO
[C66xx] StackTest: using localIp
xdc.runtime.Main: "src/tirtos/SemaphoreP_tirtos.c", line 245: assertion failure
xdc.runtime.Error.raise: terminating execution
instead of the usual
"Network Added: If-1:<LocalIPAddr>"
An example of my CCS screenshot is attached.