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.

Ethernet on Am335x ICEv2.1

Other Parts Discussed in Thread: SYSBIOS

I want to create a basic Ethernet application on Am335x ICEv2.1 since TI-RTOS for Am335x is not available.  I figured this would be a matter of removing EIP calls from the ethernetip_adapter IDK example, and then I would be able to ping the board.  However, I'm stuck on board configuration issues.

Here's what I've done so far:

1. To work around the onboard emulator not stopping at main(), added JTAG header and added/deleted resistors so external emulator can be used.  External emulator stops at main() more regularly than onboard emulator, although not all of the time.

2. Connected Ethernet cable to Ethernet 0 port

3. Connected RJ45 jumpers between pins 1&2 for CPSW

4. Set Sysboot jumper to NOR Flash

5. Moved ethernip_ip project to new directory

6. Redefined IA_SDK_HOME and CG_BIOS_ROOT

7. Added PortableTimer to Sys/Bios to fix link errors caused by missing 'ti_sysbios_hal_Timer_xxx' functions.

8. Moved macro USE_CPSW_DRIVER from undefined to defined in compiler options

9. Redefined am335x_board_type from AM335X_BOARD_TYPE_ICE to AM335X_BOARD_TYPE_ICE_V2 in \sdk\platform\am335x\src\plat_utils.c.  

Search for AM335X_BOARD_TYPE_ICE_V2 in *.h throughout IDK shows two different definitions for AM335X_BOARD_TYPE_ICE_V2:

#define AM335x_BOARD_TYPE_ICE = 3  in sdk\platform\am335x\include\plat_utils.h

#define AM335x_BOARD_TYPE_ICE = 2 in sdk\tools\flashing tools\NOR_Flash\norFlash.h.

Rebuilt platform library and verified runtime value of 3.

10.  Set IP address, subnet, gateway in .cfg

11. Removed call to EIPMain() in main

12. Rebuilt project, loaded with external emulator, waited for stop at main(), hit Resume

13. Console in CCS shows '[CortxA8] Network Added: If-1:192.168.3.253'

14. UART output is garbled as if baud rate is incorrect, values other than 115.2n81 are worse

15. Wireshark shows PC sends ARP request when code is run, but board doesn't respond

Versions:

CCS 6.0.0.00190, IDK 1.1.0.4, SysBios 6.40.01.15, NDK 2.23.01.01, XDCtools 3.20.02.44, TMDXICE3359_v2_1A.gel

Question:

Step 14 seems to indicate a basic clock issue.  What am I doing wrong?

  • For step 14, did you set the baud rate to 115200? Also, are you using an ICEv2? If yes, not sure why Step 1 is required. 

    Please find the supported software list here

    Regards,
    Vinesh

  • Yes, I'm using ICEv2.  Couldn't get the debugger to stop at main() using the onboard emulator.

    Yes, baud rate is 115200 in the terminal emulator.  

    I will downgrade NDK and SysBios to the older versions and see if I can get  the project to run.

  • Hello,

    Please check the "Notes" section here on loading the binary.

    Regards,
    Vinesh 

  • I have gone back to these versions per the link you sent:

    CCS doesn't install Bios and NDK automatically even though they're in the same TI directory.  The build fails with these 2 errors:

    1. RTSC product 'NDK' v2.22.3.20 (or compatible) is not currently installed. Please install a product of compatible version, or enable one of the supported versions of this product.

    2. RTSC product 'SYS/BIOS' v6.35.4.50 (or compatible) is not currently installed. Please install a product of compatible version, or enable one of the supported versions of this product.

    Do I need an older version of another component e.g. XDC? XDC version is 3_30_02_44.  Is that compatible with the CCS/Bios/NDK versions above?  I can set up a whole separate CCS directory for IDK if necessary, just need to know what versions of everything are compatible.

  • Are the RTSC products identified by CCS 5.5?  If no, you can manually add them from Preferences->Code Composer Studio -> RTSC

    The XDC tools look fine.

  • I added Bios and NDK, but they are still not discovered after hitting Apply and restarting CCS.  Also downgraded XDC tools to 3_23_03_53, then restored that to 3_30_02_44 after your last reply.  Now CCS can't find that either.  

    See attached screen shots of RTSC products and TI directory.  Is there a file I can edit to configure CCS since autodiscovery doesn't seem to be working?

    CCS products.docx
  • Can you try installing the Sys/Bios, NDK and XDC tools in G:/TI/ccsv5/ and then add path to discover the RTSC products?

    I remember facing a similar issue when ccsv6 and ccv5 were installed together. Worked fine when the required RTSC products were installed in separate folders.

  • Installing SysBios, NDK, and XDC in G:\TI\ccsv5 and adding path to discover the RTSC products did not work.

    Reinstalled CCS5.  Copied NDK, XDC, SysBios to G:\TI.  CCS5 discovered NDK and XDC but not SysBios. Moved SysBios to G:\TI\ccsv5 and update dpath.  CCS5 discovered SysBios, but ethernetip_adapter project didn't build because include path G:\TI\bios_6_35_04_50\packages wasn't found.  Changed BIOS_CG_ROOT to G:\TI\ccsv5\bios_6_35_04_50 in Linked Resources.  Now CCS5 finds SysBios but not NDK.  Moved NDK to G:\TI\ccsv5 and updated path.  CCS5 still won't discover NDK.

    I can't spend any more time troubleshooting the tools at this point.  

    Is there an Ethernet example for Am335x that will build with CCS6 and latest SysBios/NDK?  Is there a projected release date for TI-RTOS for Am335x?

  • Hello,

    The issues you are facing are related to CCS/Tools, please post it in the CCS forum.

    On supporting CCSv6(SYS/Bios 6.40.1.15, XDC - 3.30.1.25_core, NDK - 2.23.2.03), I just tried the i2c_led example. After importing, right click the project and click on "Refractor"-> "Upgrade RTSC Product Versions". This will update the Sysbios/XDC versions of the project. Also please rebuild the os_drivers after refracting the project. As we have to keep backward compatibility, I think this would be an additional step that has to be performed on CCSv6.

    There are no plans for TI-RTOS on AM33x as for now.

    Regards,
    Vinesh

  • I'll try your suggestion and move forward with CCSv6 when I can get back on this.  Will also post in the CCS forum about CCSv5 autodiscovery issues when CCSv6 is also installed.  Will continue to watch the top of this forum for any update on TI-RTOS for Am335x.  Thanks, Vinesh.