MSPM0 SDK Release Notes
Table of Contents
Important Notes
- 📝 Updated information will be posted online at e2e.ti.com.
Introduction
The MSPM0 SDK delivers components that enable engineers to develop applications on Texas Instruments MSPM0 microcontroller devices. The product is comprised of multiple software components and examples of how to use these components together. In addition, examples are provided to demonstrate the use of each functional area and each supported device and as a starting point for your own projects.
The MSPM0 MCU portfolio offers a single development environment that delivers flexible hardware, software and tool options for customers developing applications. A one-time investment with the MSPM0 software development kit (SDK) allows you create portable and modular code, opening the door to create unlimited applications. For more information, visit www.ti.com/mspm0.
This is version 2.02.00.05 of the MSPM0 SDK.
Documentation
- MSPM0 SDK Documentation Overview
- MSPM0 SDK Documentation Overview - Chinese
- MSPM0 SDK Known Issues and FAQ
- Software License
- Software Manifest
What’s Included
The MSPM0 SDK 2.02.00.05 includes the following:
- DriverLib Library - v1.33.00:
- Full support including header files for:
- MSPM0L11xx/L13xx
- MSPM0G1x0x/G3x0x
- MSPM0C110x
- MSPS003FX
- MSPM0L122x/L222x
- Full support including header files for:
- Code examples:
- Hundreds of examples from low-level drivers to middleware and demos
- SysConfig - v1.33.00:
- Support for code generation of all DriverLib peripherals
- Clock Tree for easier configuration of Clock System
- NONMAIN Configurator
- Security Configuration
- Project Configuration
- Middleware:
- Battery Gauge L2 - v1.00.00
- Boot Image Manager - v1.02.00
- Communication Modules - v1.01.00
- DALI Library - v1.00.00
- EEPROM Emulation Library - v1.01.00
- Energy Metrology Library - v2.01.00
- GUI Composer Library - v1.00.00
- IQMath Library - v2.00.00
- LIN Drivers - 1.01.00
- Motor Control Libraries
- Brushed Motor Control Library - v1.00.00
- Hall Sensored Trap BLDC Motor Control Library - v1.10.01
- Sensorless FOC PMSM Motor Control Library - v2.02.00
- Sensored FOC PMSM Motor Control Library - v1.00.00
- Stepper Motor Control Library - v1.00.00
- PMBus Library - v1.11.00
- SENT Library - v1.00.01
- Smart Analog Sensor Interface (SASI) Smoke Detector Library - v1.00.00
- SMBus Library - v2.01.00
- Diagnostic Library (released externally)
- RTOS:
- FreeRTOS Library - v1.20.01
- Driver Porting Layer (DPL) - v1.10.00
- TI POSIX - v1.10.00
- TI-Drivers - v2.01.00:
- GPIO
- I2C
- SPI
- UART
- ADC
- DMA
- I2CTarget
- Documentation:
- Comprehensive software documentation including user guides and multiple API guides
- Tools Guide including quick start guides and user guides for MSPM0 tools including IDEs, code generation, debuggers and programmers
For more information about these features, please visit the MSPM0 SDK Documentation Overview or MSPM0 SDK Documentation Overview - Chinese.
What’s New
This release includes the following updates.
- New Device Support! The MSPM0 SDK now supports MSPM0Gx51x devices, and corresponding LP-MSPM0G3519 EVM. This include support for:
- DriverLib code examples
- BSL code examples
- SysConfig modules, including
- DriverLib modules
- Clock Tree
- NVM Configurator
- Security Configurator
- Middleware
- Boot Image Manager
- EEPROM Library
- GUI Composer Library
- IQMath Library
- FreeRTOS Library
- LIN Drivers
- PMBus Library
- SMBus Library
- TI Drivers
- Documentation
- DriverLib Library - v1.32.00
- DMA
- MSPSWSDK-3986: Added DL_DMA_enableAutoEnable, DL_DMA_disableAutoEnable, DL_DMA_isAutoEnableEnabled APIs for auto-enable mode and DriverLib support for gather mode and 128-bit DMA access to dl_dma.h, included only if device supports these features
- Factory Region
- MSPSWSDK-3227: Implemented caching of TRIM values in SRAM for MSPM0Gx51x in scenarios where flash wait states is equal to 2, which causes TRIM to be unreadable
- FlashCTL
- MSPSWSDK-3877: Updated DL_FlashCTL_eraseDataBankFromRAM to properly execute from SRAM
- MSPSWSDK-4059: Updated DL_FlashCTL_executeCommandFromRAM to poll until DL_FLASHCTL_COMMAND_STATUS_PASSED or DL_FLASHCTL_COMMAND_STATUS_FAILED is read from the STATCMD register
- GPIO
- MSPSWSDK-3882: Fixed issue where Hysteresis functionality was reversed, by correcting the values for the enable and disable bits (IOMUX_PINCM_HYSTEN_DISABLE, IOMUX_PINCM_HYSTEN_ENABLE) on the IOMUX peripheral header. Hysteresis is now correctly enabled or disabled when calling the relevant DriverLib APIs that use DL_GPIO_HYSTERESIS, which include: DL_GPIO_initDigitalInput, DL_GPIO_initDigitalInputFeatures, and DL_GPIO_initPeripheralInputFunctionFeatures.
- RTC
- MSPSWSDK-3893: Fixed typo of DL_RTC_COMMON_PRESCaLER0_DIVIDE_16 -> DL_RTC_COMMON_PRESCALER0_DIVIDE_16
- RTC_B
- MSPSWSDK-3895: Created new RTC_B DriverLib module
- SYSCTL
- MSPSWSDK-4057: Removed ULPCLK divide by 3 option (DL_SYSCTL_ULPCLK_DIV_3) in SYSCTL DriverLib. This option is not available for any supported device.
- MSPSWSDK-3930: Included dl_factoryregion.h in SYSCTL DriverLib. This is required for all devices because DL_SYSCTL_getTempCalibrationConstant API depends on a dl_factoryregion API.
- UART
- MSPSWSDK-4076: Added two macros for DMA Done interrupts: DL_UART_DMA_DONE_INTERRUPT_RX and DL_UART_DMA_DONE_INTERRUPT_TX
- DMA
- SysConfig - v1.33.00
- General
- MSPSWSDK-3798: Added a new feature that allows users to generate a CSV file that enumerates all the currently used pins, and detailed information for each pin, in the user’s current SysConfig configuration. This feature can be enabled by selecting “Generate Resource Usage CSV” in the Board module.
- MSPSWSDK-3958: Added device-specific defines to SysConfig generated ti_msp_dl_config.h
- MSPSWSDK-3859: Removed LCD peripheral being incorrectly shown as an available resource for MSPM0L122X devices
- MSPSWSDK-3610: Added missing ROSC functionality to PA2 device pin for MSPM0L122x/L222x devices
- Clock Tree
- MSPSWSDK-3913: Added validation to prevent selection of UDIV3 for ULPCLK to match device configuration on MSPM0G
- DMA
- MSPSWSDK-3807: Added support for new DMA features: Long-long (128-bit) sizing, auto mode, and gather mode
- MSPSWSDK-3917: Fixed code generation so when a DMA is configured with early interrupts, setting DL_DMA_earlyInterruptThreshold should be done after clearing and enabling the interrupts and after DL_DMA_initChannel is called.
- GPIO
- MSPSWSDK-3882: Updated Hysteresis Control selection, will now default to enable automatically if available on the selected pin. User can still choose to manually select to enable or disable Hysteresis Control by selecting the new “Override Pin Hysteresis Default” option.
- OPA
- MSPSWSDK-3830: Allowed PSEL selection without requiring configuration of DAC module or DAC output pin
- Project Configuration:
- MSPSWSDK-3703: Removed the “Select Device” option from this module. Device selection is now handled through the “Device” parameter on the “Migrate Settings” window, which is accessed when selecting the “Switch” option in the Device View.
- RTC_B
- MSPSWSDK-3914: Added new RTC_B module
- SYSCTL
- MSPSWSDK-3913: Removed option on to select UDIV3 for ULPCLK. This option is not available for any supported device.
- MSPSWSDK-3999: Allowed configuration of SRAM Power Level for STOP Mode in MSPM0GX51X devices
- TRNG
- MSPSWSDK-3910: Fixed issue where TRNG module was not showing up for MSPM0Lx22x devices
- UART:
- MSPSWSDK-3892: Added a macro to the ti_msp_dl_config.h code generation to display frequency of the UART clock
- VREF
- MSPSWSDK-3915: Implemented workaround for VREF pin mapping on MSPM0Gx51x. Allows user to select either of the VREF pins, users should defer to relevant documentation on datasheet.
- General
- Middleware
- Boot Image Manager - v1.02.00
- MSPSWSDK-3954:
- Ported CSC example to the LP_MSPM0G3519 Launchpad
- Fixed Lockable Storage Flash accesses being optimized out
- MSPSWSDK-3954:
- Energy Metrology Library - v2.01.00
- MSPSWSDK-3955:
- Add new single phase solution with LCD support(TIDA-010940).
- Added Support to configure the metrology parameters using #defines in template.h file.
- Added support for multiple sampling rates - 2000, 2930, 3906, 4000, 5859, 6000, 6400, 7812, 8000.
- ADS/AMC registers are written individually with readback.
- Bug fix Apparent Energy Import/Export Calculation
- MSPSWSDK-3955:
- LIN Drivers - v1.01.00
- MSPSWSDK-3901: Updated lin_responder code example to gracefully handle unexpected PIDs
- Sensorless FOC PMSM Motor Control Library - v2.02.00
- MSPSWSDK-4051 : Renamed Sensorless FOC middleware from motor_control_bldc_sensorless_foc to motor_control_pmsm_sensorless_foc
- MSPSWSDK-3964 : Implemented power control
- MSPSWSDK-3965 : Optimized sine and cosine computation cycles using MATHACL peripheral
- Sensored FOC PMSM Motor Control Library - v1.00.00
- MSPSWSDK-3963 : Implemented Hall Effect sensor based FOC control
- MSPSWSDK-4007 : Added support for Motor Control Reference design TIDA-010251
- MSPSWSDK-4008 : Added support for DRV8316REVM
- Communication Modules - v1.01.00
- MSPSWSDK-3962: Added I2C Communication Module with examples for Target and Controller
- IQMath Library - v2.00.00
- MSPSWSDK-4060: Changed IQmath generic static libraries to be device specific static libraries
- MSPSWSDK-3809, MSPSWSDK-3639: Implemented workaround for sin -90 deg and cos 180 deg
- EEPROM Emulation Library - v1.01.00
- MSPSWSDK-3947:
- Added in a call to DL_executeClearStatus(FLASHCTL) before each DL_FlashCTL_unprotectSector() function call
- Adjusted the EEPROM_EMULATION_ADDRESS #define to have a default value in the source library (0x00001000 for eeprom_emulation_type_a and 0x00001400 for eeprom_emulation_type_b). The address of EEPROM_EMULATION_ADDRESS can be overwritten in the application code by having the same #define with a different value
- MSPSWSDK-3947:
- Boot Image Manager - v1.02.00
- TI-Drivers - v2.01.00
- MSPSWSDK-4076: Implemented a bug fix where the the UART ISR no longer infinitely loops for DMA Done RX interrupt
- Code Examples
- BSL Code Examples
- MSPSWSDK-3997: Created a code example to demonstrate usage of SHA API exposed in ROM section: bsl_sha_api
- MSPSWSDK-4099: Updated BSL code examples for MSPM0C1104. Updated BSL GUI.
- Demo Code Examples
- MSPSWSDK-4002: Added new demo code example to showcase the MSPM0 to control BQ79616 to detect the battery status: bq79616_uart_to_can
- DriverLib Code Examples
- MSPSWSDK-3990: Updated flashctl_ecc_error_injection to remove build warnings and properly allocated memory for buffer to account for modified memory
- MSPSWSDK-3961: Added new AESADV code examples to show different encryption/decryption modes: aesadv_cbc_128_enc_dec, aesadv_ctr_128_enc_dec, aesadv_ecb_128_enc_dec, aesadv_gcm_128_enc_dec
- EEPROM Code Examples
- MSPSWSDK-3947:
- Added support for MSPM0Gx51x devices for the eeprom_emulation_type_a, eeprom_emulation_type_a_test, eeprom_emulation_type_b, and eeprom_emulation_type_b_test examples
- Adjusted the EEPROM_EMULATION_ADDRESS for eeprom_emulation_type_b to have the application execute as intended
- MSPSWSDK-3947:
- PMBus Code Examples
- MSPSWSDK-4079:
- Ported example to the LP_MSPM0G3519 Launchpad
- MSPSWSDK-4098:
- Fixed incorrect reference to application interrupt handler
- MSPSWSDK-4079:
- SMBus Code Examples
- MSPSWSDK-4079:
- Ported examples to the LP_MSPM0G3519 Launchpad
- MSPSWSDK-4079:
- FreeRTOS Code Examples
- MSPSWSDK-3806: Updated examples to support ROV for CCS Theia
- MSP SubSystems
- MSPSWSDK-3883: Fixed ioExpander variable getting optimized out in higher opt levels in io_expander_uart_i2c_spi example
- MSPSWSDK-4049: Added new MSP subsystem code examples: frequency_counter_tone_detection, i2c_expander, i2c_expander_uart_to_i2c_bridge
- TI-Drivers Code Examples
- MSPSWSDK-3869: Added an empty project for FreeRTOS for all MSPM0 devices
- BSL Code Examples
- Documentation
- MSPSWSDK-3919: Updated CCS IDE Guide and SysConfig Guide with details on updated device migration flow after SysConfig GPN update.
- MSPSWSDK-3898: Documented steps on how to use MSPM0Gx51x with latest version of IAR as of August.
- MSPSWSDK-3881: Fixed incorrect hyperlink to MSPM0L122x/L222x API Guide from the DriverLib API Guide Overview page
- MSPSWSDK-3872: Updated TI Drivers API Guide to add support for MSPM0L122x/L222x devices
Operating Systems Support
- Windows 10
- Ubuntu 18.04
- macOS Monterey
Dependencies
This release was validated with the following components:
- Code Composer Studio
- TI Arm Clang Compiler
- TI Clang v3.2.2_LTS. Also included with CCS 12.8.0 and CCS Theia 1.4.0.
- TI Clang v4.0.0_LTS. Also included with CCS Theia 1.5.0.
- SysConfig
- SysConfig 1.21.x. Also included with CCS 12.8.0 and CCS Theia 1.5.0.
- GNU Code Generation Tools
- IAR Embedded Workbench
- Keil uVision
- 5.38, with Arm Clang compiler v6.16 or later.
Device Support
- MSPM0L11xx/L13xx
- MSPM0G1x0x/G3x0x
- MSPM0C110x
- MSPS003Fx
- MSPM0L122x/L222x
- MSPM0G151x/MSPM0G351x
Known Issues
Please refer to the MSPM0 SDK Known Issues and FAQ document for a detailed list of known issues and workarounds.
Upgrade and Compatibility Information
- MSPSWSDK-3847: This adds validation to force users to configure relevant PWM channels when selecting the matching COMP Blanking Source. Anybody previously configuring Blanking Source on COMP without configuring the relevant PWM Channel will see an error until they have updated their configuration. Error messages give detailed description of what needs to be enabled.
- MSPSWSDK-3913: On SysConfig, UDIV3 selection for ULPCLK has been disabled for MSPM0G devices. This matches device behavior, as option does not exist on device. Users should update their configuration to one of the valid UDIV options if in use.
- MSPSWSDK-3703: SysConfig now allows for GPN-specific device selection. Projects developed with previous version will have to select the specific GPN when launched on the new version of the tool by following the on-screen instructions.
- MSPSWSDK-3882: GPIO Hysteresis enable and disable bits were previously reversed, and they have now been corrected on DriverLib. In SysConfig, the selection is now done automatically by default based on the pin IO type, enabling the feature if it is available. If the user had previously selected a hysteresis configuration and wants to enforce it, they should now toggle the new “Override Pin Hysteresis Default” option.
Previous Releases
The updates for the past releases starting at MSPM0 SDK 2.00 and later are shown below.
The updates and compatibility information prior to MSPM0 SDK 2.00 can be viewed at TI Resource Explorer.
Previous Updates
- 2.01.00.03
- DriverLib Library - v1.32.00
- MSPSWSDK-3607: Fixed DL_TIMER_CC_IN_SEL defines having a typo in dl_timer.h
- MSPSWSDK-3786: Added defines for TIMG14 supporting CCP channels 2 and 3 to dl_timerg.h
- MSPSWSDK-3790: Handled MSPM0C110X ADC errata: ADC_ERR_06.
- Added new FactoryRegion DriverLib API DL_FactoryRegion_getADCOffset that returns ADC TRIM value from 0x41C40040
- Added new ADC DriverLib API DL_ADC12_getADCOffsetCalibration that returns calibrated ADC offset
- MSPSWSDK-3811: Updated some Timer APIs to to reflect that some timer instances are 32 bits.
- MSPSWSDK-3827: Fixed DL_TimerA_initPWMMode to correct the output behavior when using PWM_MODE_EDGE_ALIGN_UP
- MSPSWSDK-3381: Updated DL_FlashCTL_unprotectSector API to account for DATA bank
- MSPSWSDK-3849: Updated DL_FlashCTL_programMemoryBlocking* APIs to move the clear status command before unprotecting memory
- MSPSWSDK-3808: Updated DL_SYSCTL_getTempCalibrationConstant API for each device family to use FactoryRegion API instead of hard-coded address
- SysConfig - v1.32.00
- Clock Tree
- MSPSWSDK-3822: Fixed warning for LFXT saying it needs VBAT powered on MSPM0G350x devices instead of MSPM0L122x/L222x devices
- COMP
- MSPSWSDK-3847: Updated Comparator Blanking Source if selected to show an error if the specific timer instance and channel have not been configured
- I2C
- MSPSWSDK-3656: Disabled Target WakeUp Enable function by default when configuring an I2C Target
- RTC
- MSPSWSDK-3629: Fixed incorrect inline comment in code generation for the reported frequency of the periodic alarm 1
- SYSCTL
- MSPSWSDK-3856: Added PA2 as an available pin when configuring External ROSC for MSPM0Lx22x devices.
- TIMER
- MSPSWSDK-3826: Fixed issue when selecting a CCP channel where setting the capture compare channel update mode needed to occur before setting the capture compare value
- MSPSWSDK-2424: Added phase load configuration options to the TIMER and TIMER PWM SysConfig modules
- MSPSWSDK-3675: Added Timer Internal Channels 4-5 as channel options for TIMA on the TIMER PWM and TIMER COMPARE SysConfig modules
- MSPSWSDK-3759: Updated the description for timer clock divider and prescaler for clarity
- MSPSWSDK-3803: Fixed CC2/CC3 events and interrupts incorrectly not being selectable for TIMG14
- Clock Tree
- Middleware
- Sensorless FOC BLDC Motor Control Library - v2.01.00
- MSPSWSDK-3814: Fixed memory overflow in the variable input structures. Updated linker command file and main.h file FW version location.
- MSPSWSDK-3833: Added support for High Voltage Motor Control Reference design TIDA-010250.
- MSPSWSDK-3834: Fixed Motor Start up failure when commanded with speed immediately after setting the custom tuning parameters. Added support for a new configuration “updateConfigs” to monitor the parameter update status before sending the speed command.
- Sensorless FOC BLDC Motor Control Library - v2.01.00
- Header Files
- MSPSWSDK-3535: Fixed incorrect maximum values for Timer Counter and Load values in hw_gptimer.h
- Code Examples
- DriverLib Code Examples
- MSPSWSDK-3790: Handled MSPM0C110X ADC errata: ADC_ERR_06.
- Updated ADC12 DriverLib examples to showcase how to apply ADC offset to ADC memory result
- MSPSWSDK-2966: Added SysConfig support to AESADV DriverLib code examples
- MSPSWSDK-3812: Added notes to recommend using external pull-ups for I2C examples
- MSPSWSDK-3852: Updated all FlashCtl DriverLib code examples to execute clear status command before any flash operation
- MSPSWSDK-3790: Handled MSPM0C110X ADC errata: ADC_ERR_06.
- Demo Code Examples
- MSPSWSDK-3819: Added new demo code example for LP_MSPM0L2228 Out of Box Experience
- MSPSWSDK-3823: Added new demo code example motor_control_bdc_sensor for MSPM0C BDC motor control
- MSPSWSDK-3824: Added new demo code example pga460_control_spi for MSPM0C control PGA460 driver
- TI Drivers Code Examples
- MSPSWSDK-3813: Removed code comment that the TI Drivers config files were generated by SysConfig
- Battery Gauge L2 Code Examples
- MSPSWSDK-3778: Added new battery gauge L2 code example gauge_level2_bq76952 for LP_MSPM0G3507
- DriverLib Code Examples
- Documentation
- MSPSWSDK-3854: Updated MSP-GANG documentation to include the E2E FAQ for alternative production programming tools
- MSPSWSDK-3855: Created new guide for OpenOCD support for MSPM0
- Other
- MSPSWSDK-3760: Standardized code examples naming and directory structure
- DriverLib Library - v1.32.00
- 2.00.01.00
- DriverLib Library - v1.31.01
- MSPSWSDK-3804: Fixed issue with case statement for 1-4 mux mode in DL_LCD_setPinAsCommon API in dl_lcd.c
- SysConfig - v1.31.01
- MSPSWSDK-3791: Fixed MCAN peripheral not being available for the MSPM0G310X devices
- DriverLib Library - v1.31.01
- 2.00.00.03
- DriverLib Library - v1.31.00
- MSPSWSDK-2730: Fixed DL_SYSCTL_setPowerPolicySTOP0() and DL_SYSCTL_setPowerPolicySTOP1() APIs incorrectly making ULP to run at 32 MHz instead of 32 kHz in RUN1 and RUN2 modes
- MSPSWSDK-3314: Fixed issue in DL_Timer_initCaptureMode where the various modes with up counting where not being selected
- MSPSWSDK-3323: Fixed issue with DL_LCD_setPinAsCommon where it was incorrectly setting the blinking memory
- MSPSWSDK-3715: Fixed issue with DL_LCD_setPinAsCommon not correctly selecting some mux rates
- MSPSWSDK-3716: Update documentation of DL_UART_setTransmitPinManualOutput to correctly reference DL_UART_disableTransmitPinManualControl
- MSPSWSDK-3419: Added new DL_SYSCTL_RESET_SYSRST macro to replace deprecated DL_SYSCTL_RESET_CPU macro
- MSPSWSDK-3650: Added DriverLib APIs to access PDBGCTL register for WWDT
- MSPSWSDK-3652: Added support for GPIOC interrupts in dl_interrupt.h
- MSPSWSDK-3717: Fixed typo in DL_FlashCTL_programMemoryFromRAM32WithECCGenerated API description
- MSPSWSDK-3756: Fixed issue in DL_TAMPERIO APIs incorrectly writing to upper bits of register
- MSPSWSDK-3757: Fixed issue with SYSCTL SUPERCAP APIs missing SYSTEMCFG unlock key
- SysConfig - v1.31.00
- General
- MSPSWSDK-3490: Fixed issue for M0L134x devices where some OPA pins were being recognized as standard GPIO pins and attempts to configured unused pins caused build issues
- MSPSWSDK-3642: Fixed incorrect pinout for DGS28 packages
- MSPSWSDK-3711: Added notes that VBAT is required on the LFSS modules (and LFXT) for MSPM0L122X/L222X
- MSPSWSDK-3742: Removed COMP incorrectl showing as an available peripheral for M0G110x devices
- ADC
- MSPSWSDK-2258: Updated ADC Conversion Period description detailing the factors that contribute to the calculation as well the overall formula used to determine this field
- MSPSWSDK-3338: Fixed incorrect ADC Conversion Period calculation in some modes
- MSPSWSDK-3582: Fixed issue with MSPM0G ADC Channel 12 Resource Error
- MSPSWSDK-2295: Added voltage configuration of VDDA for ADC to SysConfig Board module
- MSPSWSDK-2296: Updated reference voltage units to volts in code generation
- COMP
- MSPSWSDK-3618: Fixed incorrect code generation when configuring the Reference Source to VREF
- MCAN
- MSPSWSDK-3460: Fixed incorrect calculated arbitration and data sample point
- MSPSWSDK-3493: Updated extended filter name options to use hex notation instead of binary notation
- MSPSWSDK-3494: Fixed MCAN RAM start address parameter based on MCAN element sizes and added check for 32-bit alignment
- NONMAIN Configurator
- MSPSWSDK-3685: Fixed incorrect default value for MSPM0L122X/L222X UART pin configuration
- SYSCTL
- MSPSWSDK-3268: When using Clock Tree, disabled the user being able to configure the CANCLK in the SYSCTL module
- MSPSWSDK-3693: Removed warning about fVCO pending characterization for most frequencies, this issue has been resolved
- TIMER
- MSPSWSDK-3221: Fixed incorrect code generation when configuring a Timer as a secondary cross trigger
- MSPSWSDK-3403: Fixed issue where TIMG instances were incorrectly showing repeat counter as an available feature
- MSPSWSDK-3752: Removed outdated pipeline interrupt options from PWM Configuration
- TIMER - Capture
- MSPSWSDK-3326: Fixed issue where Capture Edge Detection mode field was missing the option for Rising and Falling Edge detection
- VREF
- MSPSWSDK-3332: For MSPM0L122X/L222X, added support for DL_VREF_enableInternalRefCOMP API
- General
- Middleware
- Battery Gauge L2 - v1.00.00
- MSPSWSDK-3695: Added battery management Gauge Level 2 library and examples using BQ76952 and with integrated analog
- Boot Image Manager - v1.01.00
- MSPSWSDK-3573: Secure Bootloader - Implemented encrypted image transfer to Customer Secure Code (CSC) examples
- MSPSWSDK-3725: Fixed build errors with bim_sample_image example
- Communication Modules - v1.00.00
- MSPSWSDK-3689: Added new UART Comm Module and corresponding examples and documentation
- Energy Metrology Library - v2.00.00
- MSPSWSDK-3666: Add new split phase solution (TIDA-010944). Files and folders were restructured based on energy measurement. This update causes compatibility issues described in this document.
- MSPSWSDK-3620: Add metrology GUI to SDK
- IQMath Library - v1.11.00
- MSPSWSDK-3661: Improved IQMpy performance for IQMath RTS. Benchmarks updated to latest compiler
- Sensorless FOC BLDC Motor Control Library - v2.00.00
- MSPSWSDK-3663: Updated HAL drivers for single shunt support. This update causes compatibility issues described in this document.
- MSPSWSDK-3698: Updated HAL drivers configurations for DRV8329 Driver with single shunt configuration. This update causes compatibility issues described in this document.
- MSPSWSDK-3664: Updated HAL drivers and AppLib configuration for field weakening support. This update causes compatibility issues described in this document.
- MSPSWSDK-3665: Updated HAL drivers and AppLib configuration for MTPA feature support. This update causes compatibility issues described in this document.
- SMBus Library - v2.00.00
- MSPSWSDK-3458: Removed some BKPTs that were in the SMBus library
- MSPSWSDK-3676: Fixed SMBUS Target HW PEC. Device now responds a NACK if PEC is wrong and returns error if PEC is missing. This update causes compatibility issues described in this document.
- SENT Library - v1.00.01
- MSPSWSDK-3623: Fixed incorrect pause calculation in SENT library
- TI Drivers - v2.00.00
- MSPSWSDK-3588: Added I2C Target TI Driver and corresponding examples
- MSPSWSDK-3630: Implemented workaround to fix link order bug with non-SysConfig examples. Added known issue for examples which don’t support automated device migration in CCS
- MSPSWSDK-3646: Added MSPM0L22x support in TI-Drivers and create examples
- MSPSWSDK-3737: Removed TI drivers and kernel examples for M0L devices due to memory restrictions
- MSPSWSDK-3745: Addressed the Documentation issues for TI drivers
- MSPSWSDK-3687: Merged low level UART drivers for M0L and M0G. This update causes compatibility issues described in this document.
- Battery Gauge L2 - v1.00.00
- DriverLib Code Examples
- MSPSWSDK-3453: Fixed issue where LP_MSPM02228 empty example for Keil incorrectly included two DriverLib libraries
- MSPSWSDK-3461: Fixed issue where dac12_fifo_timer_event had wrong interrupt case
- MSPSWSDK-3523: Fixed issue where i2c_target_rw_multibyte_fifo_interrupts_LP_MSPM0L2228 was incorrectly setting the device to Controller instead of Target
- MSPSWSDK-3616: Update trng_sample example to manually clear the interrupt flag to ensure correct data
- MSPSWSDK-2327: Removed DriverLib.a from being copied into Keil code examples
- MSPSWSDK-3294: Updated adc12_internal_temp_sensor_mathacl to use updated Temperature Sensor coefficient, and fixed calculation to use correct VREF voltage value
- MSPSWSDK-3397: Updated Keil code examples to set default debugger to CMSIS-DAP
- MSPSWSDK-3434: Added flashctl_nonmain_memory_write example for LP_MSPM0L2228
- MSPSWSDK-3668: Added SysConfig support for the LP_MSPM0L2228 empty example
- MSPSWSDK-3679: Updated READMEs for low-power mode DriverLib examples to better describe low-power mode behavior while debugging
- MSPSWSDK-3741: Renamed DriverLib example timx_timer_mode_pwm_cross_trigger_stop_restore to timx_timer_mode_pwm_x_trig_stop_restore
- MSPSWSDK-3754: Fixed incorrect Flash and SRAM sizes in generated linker files for CUSTOM_BOARD empty examples
- MSP Subsystem Code Examples
- MSPSWSDK-3291: Added new MSP subsystems:
- io_expander_i2c_host
- io_expander_i2c_target
- spi_to_can_bridge
- MSPSWSDK-3291: Added new MSP subsystems:
- Batery Gauge Code Examples
- MSPSWSDK-3198: Added examples using BQ7690x for TIDA-010268 Battery Pack design
- MSPSWSDK-3686: Updated bq769x2_control_i2c examples. Added example
- BSL Code Examples
- MSPSWSDK-3442: Fixed secondary_bsl_can example to use DL_FlashCTL_eraseMemoryFromRAM instead of DL_FlashCTL_eraseMemory
- MSPSWSDK-3733: Added the following BSL examples for LP_MSPM0L2228:
- bsl_i2c_flash_interface
- bsl_spi_flash_interface
- bsl_uart_flash_interface
- secondary_bsl_uart
- MSPSWSDK-3735: Added Flash BSL code examples for LP_MSMP0C1104:
- flash_bsl
- flash_bsl_app_invoke
- MSPSWSDK-3635: Updated BSL host code examples
- Documentation
- MSPSWSDK-3509: Fixed outdated version numbers in some documentation
- MSPSWSDK-3655: Added MSPM0L122X_L222X API Documentation
- MSPSWSDK-2899: Updated the CCS and CCS Theia IDE Guides to point to the documentation on tiarmobjcopy
- MSPSWSDK-3673: Updating Tools related documentation and FAQ and Known Issues Guide with more detailed and up-to-date information on low-power mode debugging, considerations when using 3P tools, and more troubleshooting information
- MSPSWSDK-3706: Fixed outdated version numbers in some middleware User Guides
- MSPSWSDK-3747: Updated the Keil QuickStart guide to no longer require switching debugger to CMSIS-DAP, since it is the default now
- Tools
- MSPSWSDK-3746: Updated MSPM0 BSL GUI tooling to remove the BSL GUI executable, and instead added batch file and instructions on how to build the GUI
- DriverLib Library - v1.31.00
Previous Upgrade and Compatibility
- 2.00.01.00
- Not applicable for this release
- 2.00.00.03
- SMBus Library - v2.00.00
- MSPSWSDK-3676: Application must now report command length to SMBus drivers when enabling PEC.
- The application should call
SMBus_targetReportBlock
and/orSMBus_targetReportLength
when the SMBus is inSMBus_State_Target_FirstByte
state. See SMBus target examples for a sample implementation.
- The application should call
- MSPSWSDK-3676: SMBus Target PEC error interrupt should be disabled. This flag is checked manually by the library during reception.
- When using SysConfig, this option can be disabled at Interrupt Configuration → Target Interrupts.
- MSPSWSDK-3676: Application must now report command length to SMBus drivers when enabling PEC.
- TI Drivers - v2.00.00
- MSPSWSDK-3687: The low level UART driver files located at
<sdk>\source\ti\drivers\uart\
are now merged to a common driver.- The following files changed:
UARTMSPM0G1X0X_G3X0X.c
andUARTMSPM0L11XX_L13XX.c
→UARTMSPM0.c
UARTSupportMSPM0G1X0X_G3X0X.h
andUARTSupportMSPM0L11XX_L13XX.h
→UARTSupportMSPM0.h
UARTMSPM0G1X0X_G3X0X.h
andUARTMSPM0L11XX_L13XX.h
→UARTMSPM0.h
- If a project is referencing the previous header files, they have to be replaced with
UARTMSPM0.h
orUARTSupportMSPM0.h
respectively.
- The following files changed:
- MSPSWSDK-3687: The low level UART driver files located at
- Energy Metrology Library - v2.00.00
- MSPSWSDK-3666: Files and folders were restructured based on energy measurement.
- The following change is required in code:
- Structure name changed
gMetrologyworkingData
→gMetrologyWorkingData
.
- Structure name changed
- The following file changed and references must be fixed where required:
TIDA-010243.h
→TIDA_010243.h
- The following paths changed and must be updated in example properties:
<sdk>\source\ti\energy_metrology\modules\TIDA-010243\
→<sdk>\examples\nortos\LP_MSPM0G3507\energy_metrology\three_phase\TIDA_010243_SW\TIDA_010243\
<sdk>\examples\nortos\LP_MSPM0G3507\energy_metrology\TIDA_010243\TIDA_010243_SW\
→<sdk>\examples\nortos\LP_MSPM0G3507\energy_metrology\three_phase\TIDA_010243_SW\
- The following change is required in code:
- MSPSWSDK-3666: Files and folders were restructured based on energy measurement.
- Sensorless FOC BLDC Motor Control Library - v2.00.00
- MSPSWSDK-3663, MSPSWSDK-3698, MSPSWSDK-3664, MSPSWSDK-3665: Updated HAL driversand AppLib configurations for single shunt, DRV8329 motor drive, field weakening, and MTPA support.
- To add support for these new features to existing projects, the user must update their project to use the HAL drivers, AppLib module & FOC.lib in the Sensorless FOC BLDC Motor Control Library v2.00.00
- No additional bugs or features were addressed on this release. Developers can continue with previous version, unless any of these features is desired.
- MSPSWSDK-3663, MSPSWSDK-3698, MSPSWSDK-3664, MSPSWSDK-3665: Updated HAL driversand AppLib configurations for single shunt, DRV8329 motor drive, field weakening, and MTPA support.
- SMBus Library - v2.00.00
Versioning
This product follows a version format, M.mm.pp.bb, where:
- M is a single digit Major number
- mm is a 2 digit minor number
- pp is a 2 digit patch number
- bb is a 2 digit incrementing build counter
Technical Support and Product Updates
- To request a new feature or file a software bug, please contact your local sales representative, TI support team or E2E.