A system running TinyCLR OS includes two major components, the managed application and the native side. The managed side is your end application, developed in a modern language, like C#. The software page covers the features available in TinyCLR OS.

The native side is called the firmware and it consists of two layers, the precompiled TinyCLR OS core and the specific peripheral drivers. The peripheral drivers are called the Hardware Abstraction Layer (HAL).

For those wanting to enjoy TinyCLR OS without worrying about porting, we offer an out-of-the-box solution for multiple boards.

Supported Boards

Supported Boards

Supported Cores

The precompiled TinyCLR OS library is currently available for ARM’s Cortex-M4, Cortex-M3, ARM9 and ARM7 cores. The TinyCLR OS repository includes support for several processors; however, supporting additional processors is simply done by combining one of the provided core libraries with the needed peripheral drivers such as USB, UART, SPI, I2C and Analog.

There are already several supported processors with complete peripheral drivers that can be used as a reference.

Porting Documentation

ARM Support

Compiler Options

TinyCLR has been tested to work with GCC, ARM Keil MDK and even the online ARM-mbed tools.

Porting Documentation

Code Compiler


TinyCLR-OS is licensed for commercial and non-commercial use, under the Apache 2 license.

We want to hear from you!

Thanks to all the feedback we have received from our commercial customers and our maker community. We continue to need your feedback to turn TinyCLR OS into the best option for embedded systems.

Contact Us