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.

Unable to connect NDK

Other Parts Discussed in Thread: SYSBIOS, TMS320C6670

Hello.

I have C6670 based board. And use CCSv5.5.

Now I want to use NDK for ETHERNET interconnection.

According to the document SPRU523 I have downloaded and plugged ndk_2_24_01_18.

When trying globaly enable 'Network Settings' in ***.cfg > NDK_Global I receive an error when compiling:

NIMUDeviceTable C:\ti\ndk_2_24_00_11\packages\ti\ndk\stack\lib\stk.ae66<nimu.oe66>

error #10234-D: unresolved symbols remain

 

I have completed all items from  1.6.1 Adding NDK Support to an Existing Application  and  1.6.2 Troubleshooting NDK Application Builds in SPRU523

except two:

- don't plugged NDK Network Support Package because don't have any NSP for 6670

- and this: 

If you needed to enable the Emac module, you should also copy the emacHooks.c file from one of the
NSP examples into your project

because don't know what is it and where can I get this emacHooks.c

What is wrong? Why do I have this errors?

Thanks. Alexandr.

 

  • Hi Alex,

    We use MCSDK 2.x for application development on Keystone I devices and do not such issues.

    Have you run the ndk examples available in MCSDK 2.x?

    Path: ..\ti\mcsdk_2_xx_xx_xx\examples\ndk

    Please refer below thread,

    Thank you.

  • I have mcsdk_2_01_02_06. There are some examples in ..examples\ndk dir (\client and \HelloWorld).

    I am ashamed but I can't run it. My CCS does not import it correctly (no *.c or *.h files are visible and avalable in loaded project) .

    OK. I'll try.

    But...

    You say: We use MCSDK 2.x for application development on Keystone I devices and do not such issues.

    Does this mean I have to exclude NDK from my CCS settings?

    I did it. And now have no any available network products (EMAC, IP, UDP).

    By the way, in examples projects settings there is NDK plugged in. And Network Settings available via NDK System.

  • Rajasekaran,

    I had the same problem using mcsdk_2_01_02_06.
    There seems to be a problem with the path as when I import the client CCS project (with CCS import that makes a copy into workspace) from \ti\mcsdk_2_xx_xx_xx\examples\ndk\client\evmc6670l\: the src files are not copied.
    I had to manually copy it from \ti\mcsdk_2_xx_xx_xx\examples\ndk\client to my project in the workspace. In fact the CCS project seem to point to \ti\mcsdk_2_xx_xx_xx\examples\ndk\client\evmc6670l\ while the src are one folder above.
    Then the path for include need to be changed in the src.

    Alex,

    The NDK is already included in the McSDK SW and the example we refer to are the McSDK examples (as there are no example in the NDK folder of the NDK released in the McSDK).

    Once I copied the src from McSDK example folder to the project folder in the workspace and changed the path of .h file I was able to build.

    Start with the NDK example/release provided in the McSDK first as those examples have been validated withing the McSDK context.

    Check as well in the project properties (right click on the project) that all the SW packages you need (NDK, SYSBIOS, PDK ,..etc) are selected in the ressource/general/RTSC tab.

    Following the instructions of SPRU523 should be fine but the Mcsdk was released before this app note. Also this app note is very generic and might not have been validated with the C66x sw yet.
    So stick to the McSDK SW for the time being. When you will be more comfortable with CCS and the McSDK SW structure then it should not be an issue to use a more recent NDK version.

    A.

  • Anber,

    I do accept your observation. When "Copy projects into workspace" option is selected, only project files are copied into new workspace. The project creator has to copy all the required source files into new workspace.

    The similar discusssion below about importing "hua_evmc6678l" demo,

    Thank you.

  • Good day!

    Thank AnBer. Thank  Rajasekaran.

    Examples from the library MCSDK (ndk/client and ndk/helloWorld) I learned to compile correctly, due to the correct direction of search paths. As you advised. Here, it's all right now.

    But I still can not use the same in other projects. Even in the new minimum project.

    I'm using CCSv5.5.

    In the project properties CCS General>RTSC I plugged the same products as in the Examples:

    MCSDK 2.1.2.6

    MCSDK PDK 1.1.2.6

    NDK 2.24.1.18

    SYS/BIOS 6.35.4.50

    (By the way, using higher version of SYS/BIOS, such us 6.37.x.x., causes errors even in the MCSDK examples CLIENT and HELLOWORLD)

     And then, when I try globally enable Network functions in my app.cfg file (in my project or in new empty project with SYS/BIOS) I get Linker error:

    NIMUDeviceTable

    C:\ti\ndk_2_24_01_18\packages\ti\ndk\stack\lib\stk6.ae66<nimu.oe66>

    error #10234-D: unresolved symbols remain

    I compare the properties of exemplary projects with mine and I do not find differences.

    Why is this object NIMUDeviceTable unresolved only in my projects?

     

    Thanks. Kind regards. Alexander.

     

  • Hi Alexander,
    Other than "NDK's helloworld and client" example code, what code are you trying to build ?


    But I still can not use the same in other projects. Even in the new minimum project.

    Could you tell me, what is the minimum project here ?
    Are you creating new project like client example ?

    Have you copied the "src" directory and able to access source "C" files ?
  • Hello Titus!

    Now I trying to master "NDK's helloworld and client" examples from \ti\mcsdk_2_01_02_06\examples\ndk

    Hopefully, if I will be able to deal with them, I'll be able to arrange the UDP protocol that I need  in my project

    Other projects than specified I don't try use now

    The trouble is that this examples are working on their own, but I can not include them in my project for further study and using 

    Attempting to do so results in an error which I have given above

    Also, I can not include them in an minimum project too

    You ask: Could you tell me, what is the minimum project here ?

    Yes. For example I build standart project from CCS:

    Create a new CCS Project > SYS/BIOS > Minimal

    With the following setting:

    Main > Generic C66x Device

    Compiler vers > 7.4.4

    RTS > XDCTools vers 3.25.6.96

    Target > ti.targets.elf.C66

    And than connect the same products (MCSDK, MCSDK_PDK, NDK) in Properties>CCS_General>RTS as in  "NDK's helloworld and client" examples.

    RTS > MCSDK > 2.1.2.6

    RTS > MCSDK PDK TMS320C6670 > 1.1.2.6

    RTS > NDK > 2.24.1.18

    Platform > ti.platforms.evm6670 (also tried to put here my own platform)

     And again getting the error when trying 'Add NDK/Global to my configuration' in Available Products > NDK Core Ctack:

    NIMUDeviceTable    C:\ti\ndk_2_24_01_18\packages\ti\ndk\stack\lib\stk6.ae66<nimu.oe66>     error #10234-D: unresolved symbols remain

     

    You also ask: Are you creating new project like client example ?

    Of course not.  Client example is created via Imports existing CCS Eclipse projects

    I do not know about all features of project which is created via Imports existing CCS Eclipse projects

    But I have tried to align all options in Project > Properties. 

    It did not happen only to align app.cfg files.

    There is a special client.cfg file in the example project, which I can not use in my projects and the projects with the specified minimum configuration, due to multiple errors whose meaning I do not understand

    I am ashamed! (((

     

    Thanks. Regards, Alexander.