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.

SYSCONFIG: ti_board_config for Custom PCB (AM263Px MCU+ SDK)

Part Number: SYSCONFIG

I am porting a TMDSCNCD263P-AM263Px Sitara Control Card project to a custom PCB.

The function EnetBoard_getMacAddrList() in ti_board_config.c depends on EEPROM to read Ethernet MAC Addresses. Since my PCB will not store those addresses in EEPROM, I removed the EEPROM from SysConfig TI Board Drivers section.

However, EnetBoard_getMacAddrList() still expects to use the EEPROM.

How can I configure SysConfig to not generate that code?

  • Hi TollMan,

    Last week we released the new version of AM263Px MCU+ SDK (v09.02). As a part of the new release, a feature was added to assign the MAC address manually from Syscfg.

    You can now open your example.syscfg and inside Enet (CPSW) go to System Integration Config, here by default, the MAC address assignment method is Auto Assign.

    Change this to "Manual Entry" and provide your MAC address in the next prompt. Clean and rebuild your application and you will see the MAC address being assigned is as per your entry.

    I would recommend moving to the latest MCU+ SDK as it involves some bug fixes as well. But incase you do not wish to move to the latest 09.02 SDK, I will give a workaround as well:

    1. Create a copy of your_application/ti-arm-clang/generated/ti_enet_soc.c This is where we define the "EnetSoc_getEFusedMacAddrs" function.

    2. In your project, open the example.syscfg, and disable the auto-generation of the ti_enet_soc.c file

    3. Now manually place the copied file in the generated folder and make sure it is included in your makefile for compilation.

    4. Edit the EnetSoc_getEFusedMacAddrs function to return your desired MAC address.

    5. Clean and rebuild your application.

    Again, I would recommend moving to the latest 09.02 AM263Px SDK. It will be a lot easier for you to handle the MAC address changes.

    Regards,
    Shaunak

  • 1a)

     Regarding:

    "Change this to "Manual Entry" and provide your MAC address in the next prompt. Clean and rebuild your application and you will see the MAC address being assigned is as per your entry."

    Probably because I just updated by SDK, I do not see the "Manual Entry" option as seen here:

    1b)

    (If so) What is the recommended method for dealing with upgrading SDKs?

    Do I need to start form an empty sysconfg again?

     

    2)

    Note:

    When I imported a networking example form the latest SDK I do see the "Manual Entry" option.

    3)

    Sysconfig Notes:

    • Although I am developing on AM263Px Control Card, I set BoardType == am263x-cc. I did this because the custom PCB, despite using AM263Px, uses Ethernet circuits more closely resembling AM263x Control Card.
    • I decided to use Board Config -> Custom Board == FALSE (unchecked). I did this because of the similar custom design to the control card.

     

    Please let me know if these configurations may be problematic.

    Regards,

    Tollman

  • Hi Tollman,

    1a. This feature was recently added in 09.02 SDK release and won't be available in examples of previous releases.

    1b. Generally, if you do not have a lot of changes, you can copy the code from example.syscfg from 09.01 SDK to the example.syscfg of 09.02 SDK. You might run into some errors which will be shown in the syscfg window as:

    You can click on these and resolve it based on the project and modules. Generally this should work but sometimes if you have a lot of changes in syscfg or changes are not monitored properly while migrating, there is a change you might break your application. 

    This way your 09.01 syscfg changes will still be in the 09.02 syscfg plus you can access the newly enabled features in 09.02 in syscfg (like the MAC address selection)

    3. This is not recommended. In the 09.02 SDK release you can check in the syscfg, the option to set it as am263x-cc has been removed due to this reason.

    I recommend selecting custom board as True if building a custom PCB based on AM263Px.

    Regards,
    Shaunak

  • Hi Shaunak,

    I finally got free time to work on this.

    I created an empty project in another workspace and ported in the sysconfig configurations from by existing project. After doing so, I see “MAC Address Assignment Method”:

    However, When I replace the sysconfig file in my original workspace, and try to open it, I get an error:

    Upon seeing this I looked at the Linked Resources, in the original workspace, and noticed, although I had attempted to change the SDK path, it was set to my previous installed SDK. Again I tried to modify the pack, but it does not seem to work.

     

    1) How can I change the SDK path?

    2) Why does the sysconfig open in my new workspace, but the original one?  Is the SDK path the cause of the error? 

    Regards,

    Tollman

  • Hi Tollman,

    1. The process tried by you worked on my end. I tried changing from 09.02 example to 09.01 example and the reverse as well.

    2. If your changes are not very huge in syscfg, can you instead of replacing the syscfg, try to apply the changes manually in the 09.02 syscfg?

    3. This does seem to be a path related error. Another way you can try is go to CCS Window -> Preferences -> Code Composer Studio -> Products and from there remove the 09.01 SDK and add the path for 09.02 SDK.

    Regards,

    Shaunak

  • Hi Shaunak,

    2.

    Regarding:

    "If your changes are not very huge in syscfg, can you instead of replacing the syscfg, try to apply the changes manually in the 09.02 syscfg?"

    I did this by starting with an empty project. However, because of what is below (item 3.) I think I may have mistakenly still using the older version of sysconfig.

    3.

    When I upgrade my SDK, and CCS a few weeks ago I did not understand that I needed to update the settings in preferences.

    I tried to do so now, but I may not be modifying the setting correctly.

    I noticed when opening my latest sysconfig file in a different workspace this error:

    3a.

    I add the paths to the updated tools, but for some reason the icons are different from the ones in the original installation as seen here:

    Also, I cannot remove the original CCS version in this screen.

    Why?

     

    Regards,

    Tollman

  • Tollman,

    The products section in the preferences dialog is used to help CCS find items like SDKs and SysConfig so that they are available for use.

    Which ones it actually uses are controlled at the project level.  i.e. each project will specify which version of an SDK, compiler or SysConfig to use.

    In your screen capture it looks like CCS knows where SysConfig 1.20 is ok.  However I bet the project is set to use an older version.

    Go to your project properties.

    Select "CCS General" in the tree on the left.

    Click on "Products" on the right hand side

    This will show which products and versions your project is configured to use.

    Select SysConfig and click the edit button on the right and a dialog will open that allows you to change this to 1.20

    After doing that it should show 1.20 as selected

    Regards,

    John

  • After modifying my CCS project "Products" to use the updated versions of the tools, I now see the Ethernet  “MAC Address Assignment Method” setting.

    Thanks for helping me resolve this!

    -Tollman