Release Notes
Table of Contents
Introduction
This is a GA release of the Core SDK for CC3220.
Documentation
Open the documentation overview web page file in the SDK’s Doc folder for a full list of documentation.
What’s New
- The Core SDK is a refactored and restructured software distribution based on TI-RTOS 2.x. The directory structure of the product has changed dramatically to make things easier to find and use. The Core SDK is included in SimpleLink MCU SDKs and provides a common set of base software that each of these parent SDKs build upon. The SimpleLink MCU SDKs replace the TI-RTOS product. See the new User’s Guide for more.
- Display module. The examples now use the Display module and UART for output. Examples were previously using the SYS/BIOS System_printf() module to output to the debugger console. The Display module provides a portable output API for use with FreeRTOS, TI-RTOS or another RTOS. Using the UART allows the examples to run from FLASH without a emulator/IDE connection.
- FreeRTOS support including a POSIX pthread, semaphore, etc. library is included.
- Most of the examples have been updated to use a common/shared OS library/configuration.
- Most of the examples have been updated to use POSIX pthread APIs. This enables the same example .c files to be used with either TI-RTOS Kernel of FreeRTOS kernel.
3.01.01.19 introduces 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 |
TIDRIVERS-810 |
Add nortos support files for CC32xx |
3.01.01.19 resolves the following bugs:
TIRTOS-823 |
Update CC32XX LAUNCHXL Power section |
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 |
- All source code must be recompiled against the updated .h files in this release.
- The top-level ‘os’ directory has been renamed to ‘kernel’. The ‘examples/os’ directory has been renamed to ‘examples/rtos’.
- FatFs. The FatFs software has been moved from ti/mw/fatfs to source/third_party/fatfs directory. Support for the configuration FatFS using the TI-RTOS confg tool has been removed. The FatFS library must now be added to the link line of your application build. Some of this setup was handled behind the scenes in TI-RTOS. Use the fatfs examples in the product as a guideline.
- MISRA updates. All source files and .h files in the root ti/drivers directory (e.g., ti/drivers/UART.h, ti/drivers/UART.c) have been updated to use be MISRA compliant. The primary change is the use C99 ‘sized’ types instead of traditional ‘int’ and ‘unsigned int’ types.
- Major “board file” changes. HwAttrs structures have been extended and updated for most of the drivers. HwAttrs changes come together with a typedef name change (e.g., UARTMSP432_HwAttrs changed to UARTMSP43_HwAttrsV1) to force users with old code to review their HwAttrs structures and update accordingly.
- count variables - drivers with multiple instances now have a count field instead of the prior NULL-terminated array mechanism.
- Board_GPIO_LEDX, Board_GPIO_ButtonY. Names of some of these constants have been changed to be more intuitive. The old names are provided for compatibility.
- Pin ids are now in HwAttrs. The board files have been simplified to now have mainly just data structures. All pin management code has been moved to the drivers. This required the HwAttrs for most drivers to change to include pin ids.
- Board_initDriver (e.g., Board_initUART()) functions have been removed (macros are provide for compatibility).
- Significant review and some porting will be required if you want to use a board file from TI-RTOS 2.x with this release.
- Include paths. Some components have moved. These moves will require some changes to the include paths and library paths for existing code.
- The ti/mw/fatfs directory was moved to third_party/fatfs.
- driverlib and inc files have moved to ti/devices/devicefamily
- CC3200 support was removed. This release supports the CC3220.
- DPL (driver porting layer) changes. The driver porting APIs has been moved from ti/drivers/ports to ti/drivers/dpl. This is mostly and internal detail, as the DPL APIs are intended for use by drivers and not application software.
- Application stack sizes and heap sizes are specfied in the linker .cmd file instead of the .cfg file.
- The UARTMon module has been removed.
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 7.0.0
- GNU Code Generation Tools (for ARM only)
- ARM gcc-arm-none-eabi-4_9-2015q3
- IAR Code Generation Tools (for ARM Cortex-M only)
- XDCTools 3.32.01
Known Issues
TIRTOS-751 |
CCS does not import config project if a different version's config project is present |
TIRTOS-476 |
POSIX threads render as single task in execution graph |
TIRTOS-415 |
IAR tools must be installed in non-default location to work with gmake |
TIRTOS-243 |
CC3200 I2S audio/echo example has pin conflict between GPIO and I2S (GPIO disabled for now) |
TIDRIVERS-405 |
UART_write returns before all data has been transmitted |
TIDRIVERS-146 |
Possible bug in LCD driver (DOGM 128-6) for drawing/clearing vertical lines |
TIDRIVERS-92 |
Incorrect thread safety in LCD_open |
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.