Release Notes
Table of Contents
Introduction
This is a GA release of the Core SDK 3.50.00.17 for MSP432P4 devices.
Documentation
Open the documentation overview web page file in the SDK’s Doc folder for a full list of documentation.
What’s New
This release updates to the newest code gen tools. See the Validation Information section for details on what versions of each code gen tools was used to test this release.
The open-source SPIFFS file system is now provided in this release. An example has been provided to showcase this file system’s capabilities. This file system requires a non-volatile storage (NVS) driver (which is not available on CC32xx devices).
FATFS has been updated to the latest release (v0.13a).
FreeRTOS has been updated to v10.0.0.
New Features
ID | Summary |
---|---|
TIRTOS-1421 | Update FreeRTOSConfig.h assorted files to use v10 license |
TIRTOS-1377 | Update Core SDK products to use FreeRTOS version 10 |
TIRTOS-1368 | FreeRTOS/POSIX clock_gettime() needs to be updated for FreeRTOS v10.0 |
TIDRIVERS-1310 | Extend the NVS driver example to show how to add a custom region |
TIDRIVERS-591 | TI-DRIVERS should upgrade to FatFs v0.13a |
TIDRIVERS-461 | UART driver should notify application of errors |
TIDRIVERS-441 | Add SPIFFS, a lightweight file system that uses NVS to interface with on-chip or off-chip FLASH |
Bugs Resolved
ID | Summary |
---|---|
TIRTOS-1346 | Incorrect thread protection in removeThreadKeys() [FreeRTOS] |
TIRTOS-1337 | Dereference of freed memory in pthread_join() [FreeRTOS] |
TIRTOS-1336 | pthread_detach() needs thread protection [FreeRTOS] |
TIRTOS-1335 | Memory leak in pthread_create() on FreeRTOS |
TIRTOS-1319 | Incorrect thread protection in mq_open() |
TIRTOS-1023 | pthread_exit-related memory leak |
TIDRIVERS-1413 | ADCMSP432P/E drivers globalSemaphore should be created in init() |
TIDRIVERS-1393 | ADCBufMSP432_open() does not call ADCBufMSP432_close() when initHw() fails |
TIDRIVERS-1382 | Power Manager driver saves incorrect state of the IO |
TIDRIVERS-1379 | Timer never disabled for ADCBuf timer trigger |
TIDRIVERS-1348 | ADCBuf requires the user to assign two sample buffers even when using one-shot mode |
TIDRIVERS-1335 | PWMTimerMSP432.h is missing GPIO pin P10.5 |
TIDRIVERS-1307 | UDMAMSP432_close() does not free resources |
Upgrade and Compatibility Information
This release breaks compatibility with previous releases of the Core SDK in the following ways:
Due to the GCC compiler update, C files now require -std=c99 to be included on the compile line. GCC C++ files require -std=c++98 to be included on the compile line.
- The SimpleLink SDK has moved to the R0.13a release of FatFs. Applications using FatFs will need to update code that invokes f_mkfs(), as parameters to this function have changed.
The f_mkfs() function now requires the following to be provided:- path - null-terminated string specifying logical driver to be formatted.
- opt - File system format (FM_FAT, FM_FAT32, FM_EXFAT, FM_ANY).
- au - cluster allocation unit size in bytes.
- work - work buffer used during format process.
- len - size of the work buffer provided.
The FatFS component has undergone a name and path change and requires a modification to the fatfs link resource path in your application from previous SDK releases.
Old Values:
<SDK_INSTALL_DIR>/source/third_party/fatfs/lib/fatfs.<LIBRARY_EXTENSION>
New Values:
<SDK_INSTALL_DIR>/source/third_party/fatfs/lib/<TOOLCHAIN>/<ARCH>/fatfs.a
- The Grlib component for MSP432P4 has been extended to provide support for all devices in the SimpleLink Platform for a centralized solution. This change has impacted the pre-built grlib library name and location in the SDK and requires a modification to the grlib link resource path in your application from previous SDK releases.
Old Values:
<SDK_INSTALL_DIR>/source/ti/grlib/<TOOLCHAIN>/grlib.<LIBRARY_EXTENSION>
New Values:
<SDK_INSTALL_DIR>/source/ti/grlib/lib/<TOOLCHAIN>/m4f/grlib.a
- The new grlib.a also includes a range of fonts that can be used in your application. If your application previously included a font source file, you may be able to exclude that and take advantage of the variety of fonts available in the pre-built grlib.a today. The list of pre-built fonts is available in the
/source/ti/grlib/fonts folder.
Host Support
See the SDK release notes for a description of which host operating systems are supported in this release.
Dependencies
See the SDK release notes for a description of which components and tools are required to work with this product.
Device Support
See the SDK release notes for a list of TI devices that are supported in this product.
Validation Information
The Core SDK was validated with the following components:
- Code Composer Studio 8.0.0
- ARM 18.1.0.LTS
- GNU Code Generation Tools
- ARM GCC 7-2017-q4-major
- IAR Code Generation Tools
- ARM 8.20.2
- FreeRTOS 10.0.0
- XDCTools 3.50.05
Known Issues
ID | Summary |
---|---|
TIRTOS-476 | POSIX threads render as single task in execution graph |
Versioning
This product’s version follows a version format, M.mm.pp.bb, where M is a single digit Major number, mm is 2 digit minor number, pp is a 2 digit patch number, and b is an unrestricted set of digits used as an incrementing build counter.
Prior Release Changes
Core SDK 3.40.00 (Nov 20 2017)
New Features
ID | Summary |
---|---|
TIRTOS-1318 | Update Power Management User's Guide describing enhancements for MSP432P4 |
TIRTOS-1312 | Update POSIX pthread support to show ‘fxn’ in UIA execution graph |
TIDRIVERS-1280 | UART drivers should have error function in HwAttrs |
TIDRIVERS-1183 | Improve RAM footprint of No-RTOS HwiP dispatch table |
TIDRIVERS-1100 | Add support in MSP432P4 ADCBuf Driver for ULTRA LOW POWER MODE using the ADCBuf_control API |
TIDRIVERS-1073 | Add support for Differential Mode to MSP432P4 ADCBuf driver (see adcInputMode in ADCBufMSP432_HWAttrs for more details) |
TIDRIVERS-1071 | MSP432P4 ADCBuf Driver defaults to only first sample triggered by Timer Trigger |
TIDRIVERS-1061 | Add DMA option to MSP432P4 ADCBuf driver (see useDMA in ADCBufMSP432_HWAttrs for more details) |
TIDRIVERS-1059 | Add crystal and alternate clock source support to PowerMSP432 driver |
TIDRIVERS-856 | Add support in MSP432P4 ADCBuf Driver for Internal Sources - Battery Monitor and Temperature Sensor (see adcInternalSource in ADCBufMSP432_HWAttrs for more details) |
TIDRIVERS-704 | Convert SDSPI implementations to use SDFatFS interface |
Bugs Resolved
ID | Summary |
---|---|
TIRTOS-1345 | Timed functions expecting abstime on CLOCK_REALTIME are broken |
TIRTOS-1280 | POSIX barrier broken on FreeRTOS |
TIDRIVERS-1314 | DPL nortos MSP432P4 Timer overflow issue |
TIDRIVERS-1309 | PWMTimerMSP432 clobbers shared port pins |
TIDRIVERS-1284 | NoRTOS SemaphoreP_post can permanently disable power policy |
TIDRIVERS-1272 | Update MSP432P4 SPI driver phase and polarity settings to align with other SimpleLink device drivers (see Upgrade/compatibility section for more details) |
TIDRIVERS-1225 | NVS drivers pre-erase 2 sectors when write is equal to sector size |
TIDRIVERS-1090 | Add support for all valid input clockSources to MSP432P4 ADCBuf driver (see clockSource in ADCBufMSP432_HWAttrs for more details) |
Core SDK 3.30.00 (Aug 23 2017)
New Features
ID | Summary |
---|---|
TIDRIVERS-1155 | NVS sections in GCC linker files should only set alignment |
TIDRIVERS-1111 | Enhance SPI MSP432 driver implementation to handle DMA transfers > 1024 |
TIDRIVERS-1110 | Provide an NVS driver for RAM (NVSRAM) |
TIDRIVERS-1075 | Make Power_idleFunc() the default idleCallback in NoRTOS module |
TIDRIVERS-74 | Update MSP432 SPI driver to have a polling mechanism for small transfers |
Bugs Resolved
ID | Summary |
---|---|
TIRTOS-1193 | No-RTOS Display_printf “%%” problem in SystemP_nortos.c |
TIRTOS-1163 | Display_print3 does not print out % in FreeRTOS based examples |
TIDRIVERS-1177 | Remove usage of shutdown disallow constraints by drivers |
TIDRIVERS-1147 | SPI drivers should support transfer timeout |
TIDRIVERS-1136 | NoRTOS SemaphoreP_pend should use local ClockP structure |
TIDRIVERS-1122 | ADCBufMSP432 causing bus fault |
TIDRIVERS-1106 | POSIX clock_gettime() for FreeRTOS needs to be more accurate |
TIDRIVERS-1087 | Drive Strength is available only for 4 pins. P2.0 to P2.3 - GPIOMSP432 |
TIDRIVERS-1086 | GPIO_setConfig in GPIOMSP432.c should exit gracefully if invalid port is selected for Hwi creation |
TIDRIVERS-1067 | MSP432 I2C error condition not handled safely, resulting in bus error |
TIDRIVERS-893 | TimerMSP432 driver has multiple bugs |
Core SDK 3.20.02 (Jul 10 2017)
New Features
None
Bugs Resolved
ID | Summary |
---|---|
TIDRIVERS-1136 | NoRTOS SemaphoreP_pend should use local ClockP structure |
Core SDK 3.20.00 (May 25 2017)
New Features
ID | Summary |
---|---|
TIRTOS-1066 | Set configUSE_TIME_SLICING to ‘0’ in all FreeRTOSConfig.h files |
TIRTOS-1056 | Remove spiloopback4wiremode example |
TIRTOS-1036 | Supply Portable example with native RTOS APIs |
TIRTOS-1009 | Add examples for NVS for internal and external SPI FLASH when available |
TIRTOS-991 | Optimize DPL for size |
TIRTOS-988 | Provide all single-task driver examples also for Non-RTOS |
TIRTOS-952 | MSP432 GCC startup files require define from GCC standard libraries |
TIRTOS-948 | pthread_cond_timedwait should support CLOCK_MONOTONIC |
TIRTOS-644 | Redundant FreeRTOS C stack definitions |
TIRTOS-615 | Create example for UARTMon module |
TIDRIVERS-1008 | Need Posix sleep and usleep for NoRTOS |
TIDRIVERS-971 | Provide NVS driver for SPI FLASH |
TIDRIVERS-916 | Board.html should specify pin functions for communication buses |
TIDRIVERS-900 | Various driver pin encodings need to be explained better |
TIDRIVERS-891 | Rename ADC_convertRawToMicroVolts to ADC_convertToMicroVolts |
TIDRIVERS-887 | Capture Driver top level implementation review and fix |
TIDRIVERS-884 | MSP432 TI Driver SPI 4 wire example update |
TIDRIVERS-881 | Construct and destruct APIs for DPL |
TIDRIVERS-488 | Review TI-RTOS SemaphoreP implementation with goal to reduce stack usage |
Bugs Resolved
ID | Summary |
---|---|
TIRTOS-1031 | FreeRTOS mq_getattr() should not disable scheduler |
TIRTOS-1027 | i2cmsp432 does not work if write/read on same transaction |
TIRTOS-1012 | MSP432 linker files must ALIAS SRAM_CODE & SRAM_DATA |
TIRTOS-954 | Update ADC examples to show microvolt values |
TIRTOS-936 | TI-RTOS examples suppress ULP warnings |
TIDRIVERS-1077 | TimerMSP432 bug fixes (update Timer_getCount() and Timer_start()) |
TIDRIVERS-1062 | MSP432 Timer_open should check registers to see if timer is already in use |
TIDRIVERS-1054 | Correct the IEEE RX command definition |
TIDRIVERS-1027 | SemaphoreP_pend for FreeRTOS does not work with tick rate less than 1 msec |
TIDRIVERS-1014 | PWMMSP432 setPeriod() bug |
TIDRIVERS-1013 | FreeRTOS posix mqueue.h mode_t needs to be uint32_t |
TIDRIVERS-1005 | SemaphoreP_Params_init() should set mode to COUNTING |
TIDRIVERS-960 | ADC14 single driver, ADCMSP432.c only supports performance levels 0 and 1 |
TIDRIVERS-934 | Timeouts for Posix FreeRTOS need to handle wrapping |
TIDRIVERS-929 | PowerMSP432.c has non-MAP_ function calls |
Core SDK 3.10.02 (Mar 1 2017)
New Features
None
Bugs Resolved
ID | Summary |
---|---|
TIRTOS-992 | FreeRTOS POSIX mq_send and mq_receive should be callable from ISR context |
Core SDK 3.10.01 (Feb 24 2017)
New Features
None
Bugs Resolved
ID | Summary |
---|---|
None | None |
Core SDK 3.10.00 (Feb 15 2017)
New Features
ID | Summary |
---|---|
TIRTOS-946 | Release.cfg should use policyMin instead of policySpin |
TIRTOS-925 | IAR Examples.html should reference .eww and not .ipcf files any longer |
TIRTOS-849 | Capture example needs to be replaced by CapturePWM |
TIRTOS-842 | Need Mailbox example in the product |
TIRTOS-750 | The CoreSDK is carrying around unnecessary files/directories |
Bugs Resolved
ID | Summary |
---|---|
TIRTOS-945 | pthread_setschedparam not supported in Freertos POSIX |
TIRTOS-933 | CCS platform warning with TI-RTOS examples |
TIRTOS-903 | Inconsistent declaration for timer_create, TI-RTOS and FreeRTOS |
TIRTOS-900 | Display driver not printing float values |
TIRTOS-897 | Makefile for FreeRTOS kernel has bad error message if FREERTOS_INSTALL_DIR is not set |
TIRTOS-891 | RTOS build in IAR should be an .ewp and preferably a dependent project like in CCS |
TIRTOS-785 | Board_ADCBUFCHANNEL0 should be changed to Board_ADCBUF0CHANNEL0 for consistency |
TIRTOS-776 | Posix usleep() function implemented in millisecond and not in microseconds |
TIRTOS-749 | C++ constructors on FreeRTOS with GCC are not called |
TIRTOS-709 | RTOS config projects are available only in makefile for IAR |
TIRTOS-415 | IAR tools must be installed in non-default location to work with gmake |
TIDRIVERS-890 | exit() support is missing in gcc libraries for FreeRTOS |
TIDRIVERS-837 | FreeRTOS Posix timer APIs need to check if in an ISR |
TIDRIVERS-745 | Change reverse() in source\ti\mw\lcd\SharpGrLib.c to SharpGrLib_reverse() |
Core SDK 3.01.01 (Dec 9 2016)
New Features
ID | Summary |
---|---|
TIRTOS-838 | Update the IAR/Arm compiler tools to version 7.80.x |
TIRTOS-832 | kernel examples should get stack size from linker.cmd files like driver examples |
TIRTOS-821 | remove ‘eclipse’ directory from the product, CCSv7 needs only .metadata folder |
Bugs Resolved
ID | Summary |
---|---|
TIRTOS-814 | Update primary_heap size logic in TI and GCC linker .cmd files |
TIRTOS-606 | Makefiles should support tools directory names that contain spaces |
TIDRIVERS-796 | Display_getType compile error for Display_DISABLE_ALL |
Core SDK 3.01.00 (Nov 9 2016)
New Features
ID | Summary |
---|---|
TIRTOS-759 | Update TI tools to 16.9.0 to be ready for CCSv7.0 |
TIRTOS-756 | Update examples to use Display_printf instead of print0, etc. |
TIRTOS-745 | Display_Type_UART should disable RX to allow power savings |
TIRTOS-705 | Power Management doc needs updating for CoreSDK |
TIRTOS-543 | Update all Drivers examples with Display module usage as necessary |
TIRTOS-248 | Move TI-RTOS driver documentation out of the user guide and into doxygen |
TIDRIVERS-738 | Deprecate ti.drivers.Config as apps should supply libs on command line |
TIDRIVERS-735 | Remove instrumented driver libraries and provide only release libraries |
TIDRIVERS-601 | Update Power APIs for MISRA compliance |
TIDRIVERS-569 | Update UART Display driver to function like an LCD |
Bugs Resolved
ID | Summary |
---|---|
TIRTOS-552 | Spiloopback example master/slave needs synchronization |