Release Notes
Table of Contents
Introduction
This is a GA release of the Core SDK 3.60.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 previews a new tool coming out called SysConfig, which allows graphical configuration of TI’s drivers. For more information, see the README file included in the syscfg directory as well as the Wiki page located here.
New Features
TIRTOS-1493 |
Add ENFILE to errno |
TIDRIVERS-1068 |
Add 7-Bit UART Mode Support for MSP432 |
Bugs Resolved
TIRTOS-1508 |
Align default pthread stack size for all kernels |
TIRTOS-1436 |
Thread handle set too late in pthread_create() [FreeRTOS] |
TIRTOS-1433 |
Clock period ignored when calling ClockP_create() [FreeRTOS] |
TIRTOS-1432 |
Clock start flag and period are ignored when calling ClockP_create() |
TIRTOS-1429 |
Deadlock risk in _pthread_removeThreadKeys() [SYS/BIOS] |
TIRTOS-1371 |
MSP432 powersleep and powerdeepsleep examples have unnecessary calls to GPIO_clearInt() |
TIDRIVERS-1591 |
UART drivers stack usage in callback mode |
TIDRIVERS-1565 |
ClockP_create() for FreeRTOS does not support a period of 0 |
TIDRIVERS-1485 |
The scheduler cannot be called from inside a HwiP_disable in a task context |
TIDRIVERS-1475 |
Period calculation in PWM drivers (CC32XX, MSP432, MSP432E4) are off by 1 |
TIDRIVERS-1474 |
ADCBufMSP432_close() should not release a timer if a timer hasn't been allocated |
TIDRIVERS-1454 |
PowerMSP432_getFreqs does not get BCLK |
TIDRIVERS-1441 |
ClockP_usleep() for FreeRTOS calculates delay incorrectly |
This release breaks compatibility with previous releases of the Core SDK in the following ways:
- Period calculation in PWM drivers were off by 1 in previous releases. The equations used have been updated to be as follows.
PWM_PERIOD_US:
periodCounts = (periodValue * (freq.lo / 1000000)) - 1;
PWM_PERIOD_HZ:
periodCounts = (freq.lo / periodValue) - 1;
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.
The Core SDK was validated with the following components:
- Code Composer Studio 8.1.0
- GNU Code Generation Tools
- IAR Code Generation Tools
- FreeRTOS 10.0.0
- XDCTools 3.50.06
Known Issues
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.50.00 (Feb 22 2018)
New Features
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
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 |
Core SDK 3.40.00 (Nov 20 2017)
New Features
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
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
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
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
TIDRIVERS-1136 |
NoRTOS SemaphoreP_pend should use local ClockP structure |
Core SDK 3.20.00 (May 25 2017)
New Features
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
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
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
Core SDK 3.10.00 (Feb 15 2017)
New Features
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
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
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
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
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
TIRTOS-552 |
Spiloopback example master/slave needs synchronization |