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.

SYSBIOS Platform problem

Other Parts Discussed in Thread: MSP430F5510, SYSBIOS, MSP430F5529

I am working with a custom board that uses the MSP430F5510 - I want to use one of the USB Tools examples: CHM3_SYSBIOS_swis_Example : as test software for my program.  I can compile and build the example as it is distributed for the F5529 device, but I cannot change the processor to the F5510 and build the program without errors.  I have looked at using the platform wizard to make a custom platform for my board, but I am stuck at the first page of the wizard -  the dropdown list of MSP430 devices is quite short and does not include the F5510.  Can any Sysbios expert help me out with this?

  • Steve,

    To switch an existing SYS/BIOS project to a different MSP430 device you can do this (instructions for F5529 to F5510):

    - Right-click on the project and select Properties

    - In the Main tab of CCS General properties, in the Variant selection drop-list change the selection of "MSP430F5529" to "MSP430F5510"

    - Click Apply, and OK  

    - Clean and rebuild the project

    That should do it.  The step of changing the device variant will automatically change the linker command file, the debugger .ccxml file, and the RTSC platform specification for the project.  

    If this doesn’t work for you please post the specific error messages you get after following the above procedure.  And the CCS, SYS/BIOS, and XDCtools versions you are using.

    Also, I’ve not used the example you mention… but I wonder if you will have enough FLASH and RAM space moving from the F5529 to the F5510.  Hopefully yes, but there may be an issue fitting the example into available FLASH and RAM on the F5510.

    Scott

  • I changed the device variant in the General tab to MSP430F5510, and changed nothing else. This didn't work.  As far as I can see, the ti package in XDCTools only has a limited number of devices supported and does not include the F5510.  Note that the platform did not change in the "xs" command line.  Here is the build output: I am using CCS 5.2.1.00018 SYSBIOS 6.33.05.46 and XDCTools 3.23.03.53

    **** Build of configuration Debug for project CHM3_SYSBIOS_swis_Example ****

    C:\ti\ccsv5\utils\bin\gmake -k all

    'Building file: ../swi.cfg'

    'Invoking: XDCtools'

    "C:/ti/xdctools_3_23_03_53/xs" --xdcpath="C:/ti/bios_6_33_05_46/packages;C:/ti/ccsv5/ccs_base;" xdc.tools.configuro -o configPkg -t ti.targets.msp430.elf.MSP430X -p ti.platforms.msp430:MSP430F5529 -r whole_program -c "C:/ti/ccsv5/tools/compiler/msp430_4.1.2" "../swi.cfg"

    making package.mak (because of package.bld) ...

    generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...

    configuring swi.pe430X from package/cfg/swi_pe430X.cfg ...

    cle430X package/cfg/swi_pe430X.c ...

    lnke430X swi.pe430X ...

    "package/cfg/swi.pe430X.se430X", ERROR!   at line 61604: [E0300] Symbol [18].bss

                                                                     not defined

    .symdepend ".init_array", "[18].bss"

    1 Assembly Error, No Assembly Warnings

    Errors in Source - Assembler Aborted

    >> Compilation failure

    gmake.exe: *** [swi.pe430X] Error 1

    gmake.exe: *** Deleting file `swi.pe430X'

    js: "C:/ti/xdctools_3_23_03_53/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.

    gmake: *** [configPkg/compiler.opt] Error 1

    gmake: Target `all' not remade because of errors.

    **** Build Finished ****

  • XDCtools 3.23.03.53 does indeed support the MSP430F5510.  

    I repeated my test builds with the same versions of XDCtools and SYS/BIOS as you report, and a slightly older version of CCS, and again it works.  

    I wonder if you modified something in the project in earlier testing that is affecting the builds now?  Can you try building a new project from scratch, like the MSP430-specific Idle example, and see if that works for you?

    Build the project as for an F5529.  Then look at the project contents and you should see:

    Linker command file: lnk_msp430f5529.cmd
    Debugger ccxml file: MSP430F5529.ccxml
    RTSC platform (on RTSC tab of CCS General Properties): ti.platforms.msp430:MSP430F5529

    Then change the Variant in CCS General Properties to the MSP430F5510, click Apply and OK, and you should now see in the project:

    Linker command file: lnk_msp430f5510.cmd (lnk_msp430f5529.cmd is still there but x-ed out)
    Debugger ccxml file: MSP430F5510.ccxml with [Active] (MSP430F5529.ccxml is still there)
    RTSC platform: ti.platforms.msp430:MSP430F5510

    If that still doesn’t work on the fresh project please let me know.  You can also make these changes in project settings manually, but they should happen automatically based on the Variant selection.

    Scott

  • Here is what I have done:

    1. import the existing CCS project from C:\Texas Instruments\USB Tools\MSP430USBDevleopersPackage_3_20_00\MSP430_USB_API_Stacks\examples\compositeExamples\CCS\CHM2_SYSBIOS_tasks_Example

    2. This project won't build until I de-select the IPC, XDAIS, and PSP related resources in the Projects and Repositories window ot the RTSC tab of the CCS-General project settings.  Also change the compiler version and SYSBIOS version to the installed versions. Then the project builds with no errors and one warning.

    3. Then change the device variant on the Main tab of CCS General project settings from MSP430F5529 to MSP430F5510.  Nothing else is touched.

    4. Clean and build fails with the output you have already seen.

    5. Go back to the Main tab and change the device variant back to MSP430F5529.

    6. Clean and build fails again with the same error.

    I have no idea what is going on - would really appreciate if you could run the same sequence of events and make some sense of it for me.  The 3.20.00 version of the USB developers package is readily available on the ti website.

     

    Thanks

  • I’m in the middle of a few things and won’t be able to try that USB example till maybe late today.

    Did you try building a simpler SYS/BIOS example, like the MSP430-specific Idle example I’d asked about, doing the 5529->5510 change?  
    If it works, it points to a build issue with the device switch for that USB example.  If it doesn’t, it rules out the USB example and points more to a CCS or install issue.

  • Yes, I just built a sample project inside CCSv5 - the idle project under the SYSBIOS.MSP430 template projects.  Built it for the 'F5529 OK.  Changed device variant to 'F5510 - builds OK.  SO my problem must originate with something in the USB project that I am trying to use...

  • Hi,

    I tried building the CHM3_SYSBIOS_swis example for the MSP430F5510.

    I am still on an older SYSBIOS version and XDC Tools version so I had to change the following two settings to change the device.

    1. Device Variant in General Options

    2. Platform in RTSC tab. I manually edited this and changed 5529 to 5510.

    3. I do see some build errors where the example is using a PART not defined for the 5510. This needs to be fixed in the USB stack but you can safely comment out the offecding code.

    4. I can now build but the program does not fit into available FLASH.

    In short I think this example is too large to fit into MSP430F5510.

     

    Regards,

    Nitya

     

  • Well that does not work for me.  If I change the device variant to F5510  the platform shown in the RTSC tab automatically changes to F5510.  But when I build I get the error shown in a previous post.  The strange thing is that when I change the device back to F5529 the previously buildable project fails to build with the same error.  And the build never gets to the compile and link stage.  As to the project fitting into the F5510 if I ever get it to build I can just reduce the heap and stack sizes.

  • I don’t know why the device change for this project is not working for you.  (It will probably require looping in someone from the CCS team to resolve it.)  Or, the changes Nitya mentions (#3) that would be required to the USB stack.  But I want to point out that the Swi example runs out of *FLASH* space on the 5510, not RAM, so reducing heap or stack sizes wouldn’t get it to fit.

  • I hope you can get someone to help me out with this - I would like to use this project as a base for  a development I am working on, and will find ways to reduce the code size.