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.

MSPM0G1107: FreeRTOS examples with/without Sysconfig

Part Number: MSPM0G1107
Other Parts Discussed in Thread: SYSCONFIG, MSPM0G3507

Tool/software:

We're running MSPM0 SDK 2.01.00.03 and would like to start a project using FreeRTOS and TI-Driver Library. We used a similarly named library on the CC1352 with TI-RTOS and SysConfig. This 4-month old thread says SysConfig is not supported, but the UART callback example's README (mspm0_sdk_2_01_00_03/examples/rtos/LP_MSPM0G3507/drivers/uart_callback/README.md) says "SysConfig allows developers to easily configure unused pins by selecting Board→Configure Unused Pins". The example also has source files called ti_drivers_config.c/h which it clearly uses.

Is SysConfig supported on the MSPM0Gxx platform? If not, how do we make use of TI-Driver Library without being able to auto-generate the necessary structs and macro definitions? Is there a recommendation for starting a project with FreeRTOS and using RTOS-safe drivers in general?

  • Hi,

    From my perspective, you can use Sysconfig for easy configuration and generate ti_msp_dl_config.c/h to replace the older one.

    Regards,

    Zoey

  • Can you clarify how it's supposed to work? I have this warning in SysConfig. Is this my issue?

    When I open ti_msp_dl_config.h, I can see that it's generating code based off of my SysConfig selections, but these are different from what the TI-Driver Library calls expect.

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    /*
    * Copyright (c) 2023, Texas Instruments Incorporated - http://www.ti.com
    * All rights reserved.
    *
    * Redistribution and use in source and binary forms, with or without
    * modification, are permitted provided that the following conditions
    * are met:
    *
    * * Redistributions of source code must retain the above copyright
    * notice, this list of conditions and the following disclaimer.
    *
    * * Redistributions in binary form must reproduce the above copyright
    * notice, this list of conditions and the following disclaimer in the
    * documentation and/or other materials provided with the distribution.
    *
    * * Neither the name of Texas Instruments Incorporated nor the names of
    * its contributors may be used to endorse or promote products derived
    * from this software without specific prior written permission.
    *
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

      

    The ti_drivers_config.h file from the UART example is:

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    /*
    * Copyright (c) 2021, Texas Instruments Incorporated - http://www.ti.com
    * All rights reserved.
    *
    * Redistribution and use in source and binary forms, with or without
    * modification, are permitted provided that the following conditions
    * are met:
    *
    * * Redistributions of source code must retain the above copyright
    * notice, this list of conditions and the following disclaimer.
    *
    * * Redistributions in binary form must reproduce the above copyright
    * notice, this list of conditions and the following disclaimer in the
    * documentation and/or other materials provided with the distribution.
    *
    * * Neither the name of Texas Instruments Incorporated nor the names of
    * its contributors may be used to endorse or promote products derived
    * from this software without specific prior written permission.
    *
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

      

    The UART example calls this to open the UART handle and passes a const uint_least8_t. These don't exist in the ti_msp_dl_config.h from above.

    Fullscreen
    1
    2
    3
    extern const uint_least8_t CONFIG_UART_0;
    uart = UART_open(CONFIG_UART_0, &uartParams);
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

      

    I can see that it generates initialization calls (SYSCFG_DL_*) for everything I configured. This is different form the UART example. I'm not sure how to use this with TI-Driver Library. What am I doing wrong? 

    I just found this recent thread: https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1356956/mspm0g3507-ti_drivers_config-c-not-generated-by-sysconfig. Is this still true that it only works for the low-level DriverLib and not the thread-safe TI-Drivers? If so, this is a large hole if we're to move to the M0 platform.

  • Hi,

    Only ti_msp_dl_config.h/c will be generated by Sysconfig using driverlib file.

    And ti_drivers_config.c/h use TI-_drivers.

    To use sysconfig, please add Sysconfig into Products. And you can find auto-generated file in Debug file. Please remember to remove the old one.

    Also, you can refer to below demo code:

    ...\examples\rtos\LP_MSPM0G3507\kernel\blink_led

    Regards,

    Zoey