TI-RTOS-MCU

TI-RTOS: Real-Time Operating System (RTOS) for Microcontrollers (MCU)

TI-RTOS-MCU

Downloads

Overview


Develop MCU applications faster with TI-RTOS

TI-RTOS accelerates development schedules by eliminating the need to create basic system software functions from scratch. TI-RTOS scales from a real-time multitasking kernel - TI-RTOS Kernel - to a complete RTOS solution including additional middleware components, device drivers and power management. TI-RTOS and TI's ultra low-power MCUs combine to enable developers to design applications with much longer battery life. By providing essential system software components pre-tested and pre-integrated, TI-RTOS enables developers to focus on differentiating their application.

TI-RTOS builds on existing proven software components to ensure reliability and quality. It augments these with documentation, additional examples and APIs appropriate for multitasking development and integration testing to verify that all components work together. TI-RTOS applications may be developed with multiple Integrated Development Environments (IDEs) or toolchains, including Code Composer Studio™ IDE Desktop, Code Composer Studio IDE Cloud, Energia (an Arduino-compatible software environment), IAR Embedded Workbench IDE and GCC.

To obtain TI-RTOS for Microcontrollers (MCUs)

  • To use TI-RTOS with TI's SimpleLink™ SDKs – Click the appropriate “Get Software” button above. Note that for more recent TI devices, including the CC3220, CC2640R2F, and CC13x0, TI-RTOS support is only available as part of the SimpleLink SDK.
  • To use TI-RTOS with other TI MCUs and Wireless MCUs – Click the TI-RTOS “Get Software” button above. Device families supported include the ARM® Cortex™-M4 Tiva-C, C2000™ and MSP430™ microcontrollers, as well as the SimpleLink™ WiFi® CC3200 and SimpleLink™ CC2630/40/50 ULP Wireless MCUs.
  • To use TI-RTOS with Code Composer Studio IDE Desktop – Download and install the latest CCS version. Once installation is complete, run CCS and download the appropriate SimpleLink SDK or TI-RTOS release through the CCS Applications Center.
  • To use TI-RTOS with Code Composer Studio IDE Cloud – Go to dev.ti.com
  • To use TI-RTOS with IAR Embedded Workbench or GCC – Click “Get Software” button above and download the latest TI-RTOS version. See release notes for compatible tools versions.

Licensing - TI-RTOS is provided with full source code and requires no up-front or runtime license fees. The multitasking kernel, TCP/IP networking stack, FAT File System, and all device drivers and examples all use open source BSD-like licensing. This enables developers to easily pass on software to partners or sub-contractors without cumbersome licensing constraints. Unlike the GPL license, the BSD license does not impose requirements for developers to ship their application source code.

Features

TI-RTOS offers the following components:

TI-RTOS ModuleDescription
TI-RTOS Kernel

TI-RTOS Kernel (formerly known as SYS/BIOS) provides deterministic preemptive multithreading and synchronization services, memory management, and interrupt handling.

TI-RTOS Device Drivers and Board InitializationTI-RTOS Drivers and Board Initialization provides a set of device driver APIs, such as Ethernet, UART and I2C, that are standard across all devices, as well as initialization code for all supported boards. All driver and board initialization APIs are built on the TivaWare, MWare, CCWare, or MSPWare libraries.
TI-RTOS NetworkingTI-RTOS Networking (formerly known as the NDK) provides an IPv4 and IPv6-compliant TCP/IP stack along with associated network applications such as DNS, HTTP, and DHCP.
TI-RTOS Wireless ConnectivityTI-RTOS is fully integrated with the wireless connectivity stacks provided with the SimpleLink™ Wireless MCU families, including Wi-Fi, Bluetooth Smart (Bluetooth Low Energy), and ZigBee®.
TI-RTOS File SystemTI-RTOS File System is a FAT-compatible file system based on the open source Fatfs product.
TI-RTOS USBTI-RTOS USB provides both USB Host and Device stacks, as well as MSC, CDC, and HID class drivers.
TI-RTOS Power Manager The TI-RTOS Power Manager provides pre-implemented, ultra-low power modes and can automatically determine the optimal low-power mode when the CPU becomes idle. TI-RTOS drivers are power-aware and communicate with the Power Manager to ensure peripherals are powered-down when not in use.

See our Power Management whitepaper for more details.
TI-RTOS InstrumentationTI-RTOS Instrumentation  allows developers to include debug instrumentation in their application that enables run-time behavior, including context-switching, to be displayed by system-level analysis tools.
 TI-RTOS Ecosystem Partners

Customers who require additional functionality to complement that provided by TI-RTOS can license system software modules from TI-RTOS Ecosystem partners:

CompanyProducts
HCC Embedded              

SNMP, Failsafe and Flash File Systems

wolfSSL

SSL, TLS, DTLS, cipher libraries

Simma SoftwareCAN stacks
 TI-RTOS Kernel Overview

TI-RTOS Kernel is a deterministic, preemptive, multitasking kernel that enables developers to create sophisticated applications without compromising real-time deadlines. The kernel services are summarized in the table below:

Kernel ServiceDescription
CacheCache configuration and management
ClockTime-triggered functions
DiagsUser-configurable tracing including asserts for parameter and state checking
ErrorDefine, raise, and check error-handlers
Event

Wait on any combination of multiple RTOS or custom events

GateMutexBinary mutex with priority inheritance
HeapBufFast, deterministic fixed-size buffer pools
HeapMemVariable-sized dynamic heaps
HeapMultiBuf

Variable-sized, deterministic dynamic heaps based on multiple buffer pools

Hardware Interrupts (HWI)

Interface from hardware interrupts to the RTOS

Log

Low-overhead logging and print statements

MailboxSynchronized data exchange between tasks
Memory

Memory allocation interface

Semaphores

Counting semaphores

Software Interrupts (SWI)Lightweight preemptible threads that use the program stack but cannot yield
System

General system functions such as abort, exit, and system printf

TaskIndependent threads of execution that can yield the processor
TimerInterface to hardware timers
Timestamp

32- and 64-bit timestamping services

 TI-RTOS Power Manager

For TI devices designed for use in IoT endpoint applications where power consumption is a key consideration, such as the SimpleLink™ CC3200 and CC2600 and MSP432™ MCU, TI-RTOS offers power management features that enable developers to easily leverage underlying hardware capabilities in the silicon.

See our Power Management whitepaper for more details.

  • Tick suppression is supported to eliminate unnecessary CPU wake-ups resulting from system timer ticks with no associated timeout or periodic function activities.
  • TI-RTOS power manager tracks peripheral activity through its drivers and automatically idles peripheral clocks and associated power domains when they are unused.
  • A power policy runs in the IDL task. This calculates the most suitable power down mode to enter during CPU idle periods to maximize power savings.
  • TI-RTOS power manager typically offers multiple power modes (e.g.idle, standby, power down). These are all fully integrated and tested for a supported device.
  • The power manager includes constraint setting and a register/notify mechanism so the application can communicate with the power manager. This prevents inappropriate power downs.

 

OS-aware Debug and Analysis Tools

In conjunction with Code Composer Studio (CCS), TI-RTOS Kernel provides several tools to aid debugging and optimization of multithreaded applications. The Run-time Object Viewer (ROV) enables a developer to check the status of OS objects such as tasks, mailboxes, and semaphores, including whether a task is ready, running or blocked; which tasks are blocked on an IPC; and whether tasks have exceeded their stack limits. ROV is integrated into both the CCS and IAR Embedded Workbench IDEs. CCS also includes a tool called RTOS Analyzer that captures behavior in real-time and can display the thread execution and switching sequence, thread and system CPU load, OS events, and user-defined log information.

 TI-RTOS Networking Overview

TI-RTOS Networking - formerly known as the Network Developer Kit (NDK) - combines a dual mode IPv4/IPv6 stack with some network applications. TI-RTOS Networking support is available for both Ethernet-enabled MCU, MPUs, and DSPs. TI-RTOS Networking includes:

  • Core TCP/IP protocol stack: Dual-mode IPv6/IPv4 stack in both source and binary, including VLAN packet priority-marking, TCP, UDP, ICMP, IGMP, IP, and ARP
  • Network applications: HTTP, TELNET, TFTP, SNTP, DNS, DHCP (IPv4 only) client and server
  • Serial/cellular modem support: PPP and PPPoe
  • Application Programming interfaces: BSD Sockets, zero-copy sockets, and support for raw Ethernet
  • Device drivers: Pre-tested device drivers are available for some TI devices as part of TI-RTOS or in TI Software Development Kits (SDK)

In addition, third-party add-ons are available for SNMP and TSL/SSL support. TI-RTOS offers Wi-Fi support through a driver for the SimpleLink CC3100. This driver is pre-integrated with the SPI driver for devices such as Tiva C and MSP432™ MCUs, enabling Wi-Fi capability to be added to these devices right out-of-the-box. TI-RTOS for the CC3200 fully supports the built-in Wi-Fi capability on that device. 

Energia MT: An Arduino-compatible software environment with built-in multitasking

Energia offers an Arduino-compatible software development and run-time environment that allows makers and developers to rapidly prototype new product ideas. Developers can easily reuse existing Arduino sketches and drivers to avoid having to writing software from scratch. Energia MT offers an easy way for developers to leverage TI-RTOS multitasking, even if they have no previous embedded experience. Energia MT’s run-time sits on top of TI-RTOS and automatically maps each sketch to a task. This simplified implementation of applications such as performing actions at different rates, such as blinking multiple LEDs at different intervals, as each action uses its own independent task with its own delay between actions.

Download View video with transcript Video

Downloads

Operating system (OS)

TI-RTOS Real-Time Operating System (RTOS) provided by Texas Instruments

Supported products & hardware

Supported products & hardware

Wi-Fi products
CC3130 SimpleLink™ Arm Cortex-M3 Wi-Fi® network processor with coexistence, WPA3, 16 TLS sockets CC3230S SimpleLink™ Arm Cortex-M4 Wi-Fi® MCU with 256kB RAM, coexistence, WPA3, 16 TLS sockets, secure boot CC3230SF SimpleLink™ Arm Cortex-M4 Wi-Fi® MCU 256kB RAM+1MB XIP flash, coex, WPA3, 16 TLS sockets,secure boot CC3235SF SimpleLink™ 32-bit Arm Cortex-M4 dual-band Wi-Fi® wireless MCU with 1MB Flash
Evaluation board
CC3200-LAUNCHXL SimpleLink Wi-Fi CC3200 LaunchPad EK-TM4C123GXL ARM® Cortex®-M4F Based MCU TM4C123G LaunchPad™ Evaluation Kit EK-TM4C1294XL ARM® Cortex®-M4F-Based MCU TM4C1294 Connected LaunchPad™ Evaluation Kit EK-TM4C129EXL ARM® Cortex®-M4F-Based MCU TM4C129E Crypto Connected LaunchPad™ for IoT Applications
Development kit
CC2650STK SimpleLink™ Bluetooth low energy/Multi-standard SensorTag MSP-EXP430F5529LP MSP430F5529 LaunchPad™ development kit for USB MSP-EXP430FR5969 MSP430FR5969 LaunchPad™ development kit MSP-EXP430FR6989 MSP430FR6989 LaunchPad™ development kit

Technical documentation

No results found. Please clear your search and try again.
View all 21
Type Title Date
User guide SYS/BIOS (TI-RTOS Kernel) User's Guide (Rev. V) 01 Jun 2020
User guide SimpleLink SDK Power Management: MSP432, MSP432E4, CC13xx/CC26xx, and CC32xx (Rev. J) 29 Jan 2019
Technical article Create a door and window sensor design using the SimpleLink™ Sub-1 GHz MCU 06 Dec 2017
User guide TI Network Developer's Kit (NDK) API Reference Guide (Rev. K) 07 Oct 2017
User guide TI Network Developer's Kit (NDK) User's Guide (Rev. K) 07 Oct 2017
Technical article New industrial Ethernet protocol: CC-Link IE Field Basic 29 Sep 2017
Technical article SimpleLink™ MCU SDKs: RTOS and POSIX 17 May 2017
More literature RTOS Power Management Emerges as a Key for MCU-based IoT Nodes (Rev. A) 11 May 2017
Technical article Simplified software development with TI’s CC2640R2F wireless MCU 19 Apr 2017
User guide TI-RTOS 2.20 User's Guide (Rev. M) 17 Jun 2016
User guide TI-RTOS 2.20 for CC13xx/CC26xx SimpleLink Getting Started Guide (Rev. D) 17 Jun 2016
User guide TI-RTOS 2.20 for MSP43x Getting Started Guide (Rev. E) 17 Jun 2016
User guide TI-RTOS 2.20 Power Management: MSP432, CC13xx/CC26xx, and CC3200 SimpleLink MCUs (Rev. C) 17 Jun 2016
User guide TI-RTOS 2.16 Power Management: MSP432, CC13xx/CC26xx, and CC3200 SimpleLink MCUs (Rev. B) 22 Feb 2016
User guide TI-RTOS 2.16 for CC32xx SimpleLink Wireless MCUs Getting Started Guide (Rev. F) 22 Feb 2016
User guide TI-RTOS 2.16 User's Guide (Rev. L) 22 Feb 2016
User guide TI-RTOS 2.16 for C2000 Getting Started Guide (Rev. D) 29 Nov 2015
User guide Network Developer's Kit (NDK) Support Package Ethernet Driver Design Guide (Rev. B) 16 Nov 2015
User guide TI Network Developer's Kit (NDK) v2.25 User's Guide (Rev. J) 16 Nov 2015
User guide TI Network Developer's Kit (NDK) v2.25 API Reference Guide (Rev. J) 16 Nov 2015
User guide TI-RTOS 2.16 for TivaC Getting Started Guide (Rev. D) 16 Nov 2015

Support & training

TI E2E™ forums with technical support from TI engineers

View all forum topics

Content is provided "as is" by TI and community contributors and does not constitute TI specifications. See terms of use.

If you have questions about quality, packaging or ordering TI products, see TI support.

Videos