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.

RTOS/MSP430FR5994: TI-RTOS for MSP430 load issues

Part Number: MSP430FR5994
Other Parts Discussed in Thread: MSP-EXP430FR5994, MSP430FR5969

Tool/software: TI-RTOS

I am currently trying to run TI-RTOS example projects on an MSP430FR5994 Launchpad. I am using CCSv8 to import TI-RTOS example projects from Resource Explorer. I can import and build the projects just fine without any issues, but none of them seem to run after loading. All of them report 'MSP430: AutoRun: Target not run as the symbol "main" is not defined' to the console, even though each of the projects contains a main function. Additionally, none of the messages from the projects were printed to the console. I also tried creating a new project using a TI-RTOS Empty Project template for the launchpad - which comes with code to toggle one of the on board LEDs. The idea being that if it was just the debug interface that was affected, I should still see the LED toggle. When running this project I get the same message about main not being defined and the LED on the board did not light up. Later, I loaded a non TI-RTOS example project that lit the LEDs to verify that there weren't any issues with the Launchpad hardware. After searching on this forum I haven't been able to identify any solutions. Any help would be appreciated.

  • Hello Benjamin,
    which compiler version do you use?.
    Try with TI v16.3.6.LTS.
    I observed that example projects do not work on 5969, 5994 and 6989 with TI v18.1.1.LTS compiler version.
    In my opinion it is related to linker files.
    I had no time to investigate that issue.
  • Thanks for the response. I was only able to download TI v16.9.7.LTS from the Available Software channel. The 'MSP430: AutoRun: Target not run as the symbol "main" is not defined' message no longer appears when using this compiler version. However, the log messages still do not appear to print to the console for the instrumentation examples I tried.

  • So you can compile tour example.
    What is the name of your example?
    Check back channel jumpers 'RXD <<' and 'TXD >>'
  • Yes, I can compile and load all of the projects. I double checked the jumpers and they are all populated. The example projects I've tested include: "Hello World" and "Stairstep JTAG StopMode" from TI-RTOS fr MSP430 - v2.20.00.06 /Development Tools/MSP-EXP430FR5994/Instrumentation Examples as well as "Hello Example" from TI-RTOS fr MSP430 - v2.20.00.06 /Development Tools/MSP-EXP430FR5994/Kernel Examples in the Resource Explorer.
  • Hello Benjamin,

    First of all,
    go to project Properties -> General -> MPU tab and uncheck 'Enable Memory Protection Unit (MPU)'.
    This, lets call it, the 'automatic MPU' option is trouble maker at least in cases of LaunchPads based on 5969, 5994 and 6989.

    In case of the instrumented example "Hello World!" I did some test for you.
    I added:
    #include <xdc/runtime/System.h>
    into the source and replaced Log_info0() with System_printf() like this:
    // Log_info0("Hello World!");
    System_printf("Hello World!");
    System_flush();
    It works!

    Probably something is wrong with XDC setup.
    I hope the following links would be helpfull for you:
    e2e.ti.com/.../297079
    e2e.ti.com/.../528630
    rtsc.eclipse.org/.../Using_xdc.runtime_Logging
    processors.wiki.ti.com/.../CC26xx_Ouput_TI-RTOS_Log_statements_over_UART.

    It's after midnight (Warsaw time) and I need to prepare for my sailing during a weekend.
    Good luck!
  • Thanks for all the help. It seems that Log_info was strongly recommended over System_printf due to the difference in execution time, so I think I will leave the question open until someone from TI can explain how to get the rest of the instrumentation working. It still seems strange to me that all the example projects come with default settings that prevent the project from working, it's almost as though they have never been run.
  • I agree with you.

    Out of the box and a demo car engine can't start up.

    That's pity.

  • Benjamin,

    Can you import the UART Echo example, build it (unmodified) and then copy/paste the build output into a file and attach it? Please don't copy/paste into a reply; attach the file instead to prevent the thread from getting too long.

    Todd
  • I just ended up changing the .out extension to .txt. Copy and pasting it as text just pastes **ELF** without getting all of the random characters.

    uartecho_MSP_EXP430FR5994_TI.txt

  • HI Benjamin,

    Sorry, this fell through the cracks. I don't mean the .out file. I mean the build log output.  It will look something like this. 

    Again, please copy/paste into a .txt file and attach.

    Todd

  • Benjamin,

    did you resolved the issue you have experienced?
  • build.txt
    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    **** Build of configuration Debug for project uartecho_MSP_EXP430FR5994_TI ****
    "C:\\ti\\ccsv8\\utils\\bin\\gmake" -k -j 4 all -O
    Building file: "../uartecho.cfg"
    Invoking: XDCtools
    "C:/ti/xdctools_3_32_00_06_core/xs" --xdcpath="C:/ti/tirtos_msp43x_2_20_00_06/packages;C:/ti/tirtos_msp43x_2_20_00_06/products/bios_6_46_00_23/packages;C:/ti/tirtos_msp43x_2_20_00_06/products/tidrivers_msp43x_2_20_00_08/packages;C:/ti/tirtos_msp43x_2_20_00_06/products/uia_2_00_06_52/packages;" xdc.tools.configuro -o configPkg -t ti.targets.msp430.elf.MSP430X -p ti.platforms.msp430:MSP430FR5994 -r release -c "C:/ti/ccsv8/tools/compiler/ti-cgt-msp430_18.1.1.LTS" --compileOptions "-vmspx --data_model=restricted --use_hw_mpy=F5 --include_path=\"C:/ti/ccsv8/ccs_base/msp430/include\" --include_path=\"C:/Users/benja_000/workspace_v8/uartecho_MSP_EXP430FR5994_TI\" --include_path=\"C:/Users/benja_000/workspace_v8/uartecho_MSP_EXP430FR5994_TI\" --include_path=\"C:/ti/tirtos_msp43x_2_20_00_06/products/msp430_driverlib_2_70_01_01a/driverlib/MSP430FR5xx_6xx\" --include_path=\"C:/ti/ccsv8/tools/compiler/ti-cgt-msp430_18.1.1.LTS/include\" --advice:power=all --advice:power_severity=suppress --advice:hw_config=all --define=__MSP430FR5994__ --define=_MPU_ENABLE --define=ccs --define=MSP430WARE -g --printf_support=minimal --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --abi=eabi --silicon_errata=CPU21 --silicon_errata=CPU22 --silicon_errata=CPU40 " "../uartecho.cfg"
    making package.mak (because of package.bld) ...
    generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...
    configuring uartecho.xe430X from package/cfg/uartecho_pe430X.cfg ...
    generating custom ti.sysbios library makefile ...
    generating custom ti.sysbios.family.msp430 Hwi stubs ...
    Starting build of library sources ...
    making C:/Users/benja_000/workspace_v8/uartecho_MSP_EXP430FR5994_TI/src/sysbios/sysbios.ae430X ...
    gmake[1]: Entering directory `C:/Users/benja_000/workspace_v8/uartecho_MSP_EXP430FR5994_TI/src/sysbios'
    cle430X C:/ti/tirtos_msp43x_2_20_00_06/products/bios_6_46_00_23/packages/ti/sysbios/BIOS.c ...
    asme430X C:/ti/tirtos_msp43x_2_20_00_06/products/bios_6_46_00_23/packages/ti/sysbios/family/msp430/Hwi_switch_asm.asm ...
    asme430X C:/ti/tirtos_msp43x_2_20_00_06/products/bios_6_46_00_23/packages/ti/sysbios/family/msp430/TaskSupport_asm.asm ...
    are430X BIOS.obj msp430_Hwi_switch_asm.obj msp430_TaskSupport_asm.obj ...
    gmake[1]: Leaving directory `C:/Users/benja_000/workspace_v8/uartecho_MSP_EXP430FR5994_TI/src/sysbios'
    Build of libraries done.
    cle430X package/cfg/uartecho_pe430X.c ...
    "package/cfg/uartecho_pe430X.c", line 11220: warning #112-D: statement is unreachable
    "package/cfg/uartecho_pe430X.c", line 11455: warning #112-D: statement is unreachable
    "package/cfg/uartecho_pe430X.c", line 11675: warning #112-D: statement is unreachable
    "package/cfg/uartecho_pe430X.c", line 11856: warning #112-D: statement is unreachable
    Finished building: "../uartecho.cfg"
    1 file(s) copied.
    making ../src/sysbios/sysbios.ae430X ...
    gmake[1]: Nothing to be done for 'all'.
    Building file: "../uartecho.c"
    Invoking: MSP430 Compiler
    "C:/ti/ccsv8/tools/compiler/ti-cgt-msp430_18.1.1.LTS/bin/cl430" -vmspx --data_model=restricted --use_hw_mpy=F5 --include_path="C:/ti/ccsv8/ccs_base/msp430/include" --include_path="C:/Users/benja_000/workspace_v8/uartecho_MSP_EXP430FR5994_TI" --include_path="C:/Users/benja_000/workspace_v8/uartecho_MSP_EXP430FR5994_TI" --include_path="C:/ti/tirtos_msp43x_2_20_00_06/products/msp430_driverlib_2_70_01_01a/driverlib/MSP430FR5xx_6xx" --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-msp430_18.1.1.LTS/include" --advice:power=all --advice:power_severity=suppress --advice:hw_config=all --define=__MSP430FR5994__ --define=_MPU_ENABLE --define=ccs --define=MSP430WARE -g --printf_support=minimal --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --abi=eabi --silicon_errata=CPU21 --silicon_errata=CPU22 --silicon_errata=CPU40 --preproc_with_compile --preproc_dependency="uartecho.d_raw" --cmd_file="configPkg/compiler.opt" "../uartecho.c"
    Finished building: "../uartecho.c"
    Building file: "../MSP_EXP430FR5994.c"
    Invoking: MSP430 Compiler
    "C:/ti/ccsv8/tools/compiler/ti-cgt-msp430_18.1.1.LTS/bin/cl430" -vmspx --data_model=restricted --use_hw_mpy=F5 --include_path="C:/ti/ccsv8/ccs_base/msp430/include" --include_path="C:/Users/benja_000/workspace_v8/uartecho_MSP_EXP430FR5994_TI" --include_path="C:/Users/benja_000/workspace_v8/uartecho_MSP_EXP430FR5994_TI" --include_path="C:/ti/tirtos_msp43x_2_20_00_06/products/msp430_driverlib_2_70_01_01a/driverlib/MSP430FR5xx_6xx" --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-msp430_18.1.1.LTS/include" --advice:power=all --advice:power_severity=suppress --advice:hw_config=all --define=__MSP430FR5994__ --define=_MPU_ENABLE --define=ccs --define=MSP430WARE -g --printf_support=minimal --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --abi=eabi --silicon_errata=CPU21 --silicon_errata=CPU22 --silicon_errata=CPU40 --preproc_with_compile --preproc_dependency="MSP_EXP430FR5994.d_raw" --cmd_file="configPkg/compiler.opt" "../MSP_EXP430FR5994.c"
    Finished building: "../MSP_EXP430FR5994.c"
    making ../src/sysbios/sysbios.ae430X ...
    gmake[2]: Nothing to be done for 'all'.
    Building target: "uartecho_MSP_EXP430FR5994_TI.out"
    Invoking: MSP430 Linker
    "C:/ti/ccsv8/tools/compiler/ti-cgt-msp430_18.1.1.LTS/bin/cl430" -vmspx --data_model=restricted --use_hw_mpy=F5 --advice:power=all --advice:power_severity=suppress --advice:hw_config=all --define=__MSP430FR5994__ --define=_MPU_ENABLE --define=ccs --define=MSP430WARE -g --printf_support=minimal --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --abi=eabi --silicon_errata=CPU21 --silicon_errata=CPU22 --silicon_errata=CPU40 -z -m"uartecho_MSP_EXP430FR5994_TI.map" --heap_size=160 --stack_size=160 --cinit_hold_wdt=on -i"C:/ti/ccsv8/ccs_base/msp430/include" -i"C:/ti/ccsv8/ccs_base/msp430/lib/5xx_6xx_FRxx" -i"C:/ti/ccsv8/ccs_base/msp430/lib/FR59xx" -i"C:/ti/ccsv8/tools/compiler/ti-cgt-msp430_18.1.1.LTS/lib" -i"C:/ti/ccsv8/tools/compiler/ti-cgt-msp430_18.1.1.LTS/include" --priority --reread_libs --define=_MPU_ENABLE --diag_wrap=off --display_error_number --warn_sections --xml_link_info="uartecho_MSP_EXP430FR5994_TI_linkInfo.xml" --use_hw_mpy=F5 --rom_model -o "uartecho_MSP_EXP430FR5994_TI.out" "./MSP_EXP430FR5994.obj" "./uartecho.obj" "../MSP_EXP430FR5994.cmd" -l"configPkg/linker.cmd" -llibmpu_init.a -llibmath.a -l"C:/ti/tirtos_msp43x_2_20_00_06/products/msp430_driverlib_2_70_01_01a/driverlib/MSP430FR5xx_6xx/ccs/MSP430FR5994.lib" -llibc.a
    <Linking>
    Finished building target: "uartecho_MSP_EXP430FR5994_TI.out"
    **** Build Finished ****
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

  • No, I ended up moving onto other projects. I'm still waiting on a solution for the log utilities.
  • Hi Benjamin,

    I have try TI v18.1.1.LTS and running on FR5994 LaunchPad got same issue as you. And with TI v16.9.7.LTS no problem for running but Log_info0 not work. I am checking with TI-RTOS team to see what's the root cause and will keep you post.

    regards
    KC
  • Hi Benjamin,

    I can reproduce this problem on MSP430FR5969.  For some reason, CCS could not recognize my MSP430FR5994 device.  When I load and run the HelloWorld example, I see no output in the RTOS Analyzer Live Session window.  I saw this for CCS versions 8.1, 7.4, and 7.0.  I did get output, however, with CCS 6.2, so it looks to me like it may be a problem with CCS.  I will file a bug against CCS.  If you have a CCS 6.x version installed, you may want to try that.

    Best regards,

    Janet

**Attention** This is a public forum