TI CC35xx
The TI CC35xx are Cortex-M33 based cost-efficient, reliable single-chip Wi-Fi 6 and Bluetooth Low Energy 5.4 microcontrollers designed for compact, low-power IoT applications with broad wireless compatibility.
Overview of the TI CC35xx workflow
The TI CC35xx series implements comprehensive security mechanisms to restrict unauthorized access to the debug subsystem and memory. It also supports secure boot and device provisioning.
These security mechanisms significantly affect how the device can be programmed and debugged. As a result, the generic flashloader-based approach is not applicable.
The TI CC35xx workflow consists of the following steps:
- Device activation — Provisioning a factory-state device with user keys used to verify the user application binary. This is a one-time operation and cannot be reversed.
- Flash programming — Writing a set of firmware images, such as the bootloader, wireless subsystem firmware, user application, and other required binaries.
- Opening debug access — Requesting debug access to the Cortex-M33 core. After power-up or a hard reset, debug access is in the closed state.
To execute the operations listed above, the debug probe must be provided with the following files:
- Cortex-M3 bootloader firmware — An application for the isolated Cortex-M3 core that implements the required operation.
- Action request file — A file that contains an encoded request to perform the required operation.
- One or more firmware images — Executable binaries intended to be programmed into flash memory.
The required files can be obtained using the TI SimpleLink Wi-Fi Toolbox software kit, which is used to generate action request files and firmware binaries.
TI SimpleLink Wi-Fi Toolbox is also used to sign the user application for subsequent authentication during secure boot.
- TI Simplelink Wi-Fi Toolbox - Contains Cortex-M3 bootloader images and tools to generate signed executable binaries.
The following software kits and tools are recommended for compatibility with TI SimpleLink Wi-Fi Toolbox:
- TI Simplelink Wi-Fi SDK - Provides source code and device configuration examples.
- TI SYSCONFIG Utility or TI Code Composer Studio with built-in SYSCONFIG Utility - Generates SysConfig artifacts that are used in the post-build step to generate the final binaries.
TI CC35xx Device Provisioner support
The following operations are supported using the Device Provisioner tool:
| Operation | Device Provisioner support |
|---|---|
| Activation | |
| Programming | |
| Open debug |
Additional details and use-case examples can be found in the Device Provisioner user guide for the TI CC35xx series: TI CC35xx Device Provisioning
Flash Banks
| Flash bank | Base address | J-Link support | Flasher support | Loader | |
|---|---|---|---|---|---|
| Name | Bank size | ||||
| Secure QSPI Flash | 0x14000000 | - | Up to 64 MB | ||
| Non-secure QSPI Flash | 0x10000000 | - | Up to 64 MB | ||
Watchdog Handling
- Watchdog handling is not supported at the moment.
Device Specific Handling
Connect
- Connect is possible after the activation and flash programming.
- Then device debug access must be opened with Device Provisioner tool, for more details please refer to: CC35xx Device Provisioning
Reset
- The device uses normal Cortex-M reset, no special handling necessary, like described here.
Limitations
Attach
- Attach is supported only if the debug access is opened.