F29H85X-SDK is the Core SDK providing collection of all foundational software components required to accelerate application development . It includes device-specific drivers, bit-fields, libraries (math, DSP, Control, Calibration, Communication, Flash API and Security client), peripheral examples, utilities, hardware files, and documentation. Application specific software and hardware files are delivered through additional Software Development Kits (SDK). For more information, visit F29-SDK
The following devices are supported with this release
Fixed Issues
| Issue ID | Issue Description |
|---|---|
| C29SDK-1305 | CMPSS Blanking window Sysconfig Bug |
| C29SDK-1245 | SysCtl delay function does not work as expected when SSU is enabled |
| C29SDK-1275 | SSU Tool - CPU3 needs to be able to read CPU1 Flash APR |
| C29SDK-1098 | XTAL clock configuration in SSUMODE2 creates NMI |
| C29SDK-1246 | SSU Tool: Secure versus Unsecure Cross-Stack Calls |
| C29SDK-1110 | SSU Tool: Memory region name changes not reflected in Load Memory options |
| C29SDK-1255 | SSU tool: CommonCode APRs Secure Group gets appended with _COMMONCODE |
| C29SDK-1268 | Incorrect linker cmd file for f29p32x for flash/ram |
| C29SDK-1258 | SSU Tool - Cannot allocate dataAPR RW to CPA RAM |
| C29SDK-1252 | SSU Tool: P58X and P32X GPN variants generate CPU3 seccfg |
| C29SDK-1114 | SSU Tool: APR size change removes Customize APR selection |
| C29SDK-1106 | SSU Tool: Sections using non-existent APRs silently fail |
| C29SDK-1164 | Inline assembly function in sysctl.c causing issue during LTO |
| C29SDK-1181 | Incorrect APR creation |
| C29SDK-1289 | SSU Tool: Need ability to enable all of the peripherals |
| C29SDK-1292 | SSU Tool: Removing all sections on CPU3 causes an error |
| C29SDK-1222 | RTlib CRC doesn't support Result reflected and Final XOR |
| C29SDK-1293 | SSU Tool: CPU3 can be given write access to CPU1 RAM |
| C29SDK-1310 | For Timer2 module, when SYSCLK clock source is selected, pre-scale should be bypassed |
| C29SDK-1249 | Common Code LINK - Generate Linker Errors |
| C29SDK-1168 | Sysconfig incorrectly adds call to PMIC_configure() in board.c before FreeRTOS starts |
| C29SDK-1145 | SSU Tool: Need errors for old APR references |
| C29SDK-1123 | SSU Tool: Data RAM defaults to CDA instead of LDA |
| C29SDK-1302 | SSU Tool: STACK1 APR in LDA causes FLASHCOVER_REGION APR Failure |
| C29SDK-1086 | Missing support for MPU |
| C29SDK-1277 | FreeRTOS overwrites Timer ISR created by DPL |
| C29SDK-1257 | SSU Tool: EPWM_XLINK should not be part of peripheral list |
| C29SDK-1226 | RWAIT of 1 needs to have Block Cache Disabled |
| C29SDK-1276 | PLL SYSCLK should divide by 1, not 2 |
| C29SDK-1279 | CMPSS Sysconfig DF reset bug |
| C29SDK-1224 | CLK settings are getting set after FlashInit() |
| C29SDK-1092 | SECCFG: Update Owner Link |
| C29SDK-1102 | Peripheral_frame_mapping.h should be same across all CPU projects in case of Multicore project |
| C29SDK-1103 | Add LPOST and MPOST status check API's |
| C29SDK-1090 | Missing ADC SOC trigger configuration for eCAP |
| C29SDK-1250 | ESM High Priority Watchdog View is incorrect it should be enabled by default |
| C29SDK-1236 | SSU Tool: RO APRs don't have Commoncode link API |
| C29SDK-1171 | Invalid channels in sysconfig of P32x and H58x devices |
| C29SDK-1104 | SysCfg doesn't load for epwm_ex1_cpu1_cpu3_framesel_multi project |
| C2000DL-874 | SDL CMPSS: Loopback function skips part of test |
| C2000DL-875 | SDL DAC & CMPSS: Error calculation issue |
| C2000DL-896 | SDL_ECAP_init() hardcoded settings to be made configurable |
| C2000DL-930 | SDL MEMSS, PIPE, SIC: Error aggregator CPU source calculation issue |
| C2000DL-931 | SDL ESM: NMI workaround triggered for too many events |
| C2000DL-932 | Remove SDL_ADC_setINLTrim and SDL_ADC_setOffsetTrim APIs from SDL_ADC_init() |
| C2000DL-935 | SDL: Add ADC trim init to all examples that call SDL_ADC_init() |
| C2000DL-868 | SDL_SIC_RTDMA_DW_emulateFault is failing for flash configuration |
| C2000DL-937 | SDL_MEMSS_handleESMIntr won't handle interrupt without NMI workaround |
| C2000DL-943 | SDL_MEMSS_testECCInjection issues |
| C2000DL-946 | SDL ESM: Remove ECAT_LP_ERR |
| C2000DL-929 | SDL ESM: Multiple issues with sdl_esm_mmrparity_example |
| C2000DL-928 | SDL SIC: PIPE ECC self-test should disable interrupts |
| C2000DL-980 | SDL_SYSCTL_checkMCD() needs to clear SDL_SYSCTL_mcdDetect flag |
| C2000DL-983 | SDL CMPSS: Max CMPSS instance should be 12 |
There are few limitations and known issues associated with this release
Limitations
| Description | Workaround |
|---|---|
| FreeRTOS: Support for task-specific FPU register saves has been removed. | FPU registers are now always saved for all tasks. Any usage of vPortTaskUsesFPU() can be omitted. |
| Only Windows build is supported for the the Transfer examples. | None. |
| SDL: The sdl_dcc_example has a dependency on a SYSCLK configured using a clock source of a 25 MHz X1 which is not available on some EVMs. To run the example, you will either need a newer version of the SOM (such as MCU144A-003) with X1 connected, or your own board with a similar external oscillator setup. | Without this hardware dependency, you can update the .syscfg file with alternative SYSCLK settings and adjust the tests in the DCC_Test_UseCaseArray in sdl_dcc_example.h to use the 10 MHz INTOSC2 instead of XTAL or remove the XTAL test cases altogether. |
| Link Time Optimization (LTO) compiler option is enabled only for WADI examples. | None. |
| SDL: Makefile build for 'integrated_example' is not supported. | None. |
Known Issues
| Issue ID | Issue Description | Workaround |
|---|---|---|
| C2000DL-981 | SDL: Some tests fail when .lib is built with -Og. | By default the Debug and Release builds of the SDL library use -O1 and -O2 optimization levels respectively. If you try to rebuild them to -Og, you may see some test failures, so it is not recommended. |
| C2000DL-987 | SDL: F29P32x integrated example calls unsupported functions. | Comment out tests for buffered DAC and functions like SDL_LCM_enableLockstep() as they are not supported on F29P32x devices. In a future release, these will be filtered out. |
| C2000DL-993 | SDL_ESM_SAFETYAGGR_enableEDCIntr (and disable) write incorrect bits | Instead of using provided enum type, use an integer value for the instance parameter that will write to the correct field, such as 1 for SYSTEM instance, 2 for CPU1 instance, and so on. |
| CODEGEN-15386 | Compiling code with LTO enabled and -O3 optimization level may fail with 'error: ran out of registers' error. | Fix will be available in compiler ver 3.0.0.LTS. |
| C29SDK-1105 | Migrating 'led_ex1_blinky' from SOM board to Launchpad board errors out in GPIO and JTAG syscfg. | Clear error in GPIO and JTAG pinmux configurations. |
| Pull up for unbonded (without connection) GPIOs is not enabled. | Below mentioned driverlib routine is provided which should be called in the application initialization sequence
|
| Module | Description |
|---|---|
| Driverlib | The interface of the following clock configurations driver functions are modified
|
| SSU Tool | Remove the following configurations from the project syscfg file if present
|
| SSU Tool | If EPWM_XLINK is listed as one of the assigned options in the lines below, remove it:
|
F29H85X-SDK releases follow a tiered support model with three release types: Early Adopter (EA), Short Term Support (STS), and Long Term Support (LTS). Each release type serves different customer needs and provides varying levels of support, quality assurance, and maintenance.
The release type for each F29H85X-SDK release can be identified through the following methods:
Early Adopter releases are intended for customers who want early access to new features and capabilities before they are fully validated. These releases allow customers to evaluate new functionality and provide feedback during the development cycle.
Example Use Cases:
Short Term Support releases provide a stable platform with validated features suitable for development and integration activities. These releases offer improved quality assurance compared to EA releases but are not intended for production deployment.
Example Use Cases:
Long Term Support releases are production-ready releases that provide the highest level of quality assurance, safety certification support, and long-term maintenance. These releases are recommended for production deployment in automotive and safety-critical applications.
Example Use Cases:
| Topic | EA (Early Adopter) | STS (Short Term Support) | LTS (Long Term Support) |
|---|---|---|---|
| Quality | Baseline Quality | Baseline Quality (new features) | Functional Safety (if applicable) |
| Testing | Best Effort | >95% pass | >95% pass |
| Safety CSP | NA | NA | Yes (if FSQ) |
| Safety Certification | NA | NA | Yes (Internal / External) |
| Maintenance | No | No | Will maintain until next LTS release |
| Bug Fix / Patch Release | No | Bugs that are prioritized will be fixed in the next release; no backporting to STS releases | Bug fixes on the LTS maintenance branch will be prioritized based on the severity of the bug |
| Feature Addition | Yes | Yes | New features will be added in an LTS release, but post LTS release, new features will not be backported to the LTS maintenance branch |
| Production Ready | No | Not recommended for Production | Recommended for Production |
| Component Type | Component Name | Production or Reference | Process Compliance | Certification | Distribution | Comments |
|---|---|---|---|---|---|---|
| Documentation | ${COM_TI_MCU_SDK_INSTALL_DIR}/docs/* | Reference | Baseline Quality | No | ti.com | |
| Examples | ${COM_TI_MCU_SDK_INSTALL_DIR}/examples/* | Reference | Demo Quality | No | ti.com | |
| Drivers | ${COM_TI_MCU_SDK_INSTALL_DIR}/source/* | Reference | Baseline Quality | No | ti.com | |
| Tools | ${COM_TI_MCU_SDK_INSTALL_DIR}/tools/* | Reference | Demo Quality | No | ti.com | |
| Examples | ${COM_TI_MCU_SDK_INSTALL_DIR}/solutions/digital_power/* | Reference | Demo Quality | No | ti.com |
This release has dependency on the following tools.