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 features 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.


TinyCLR-OS is licensed for commercial and non-commercial use, under the Apache 2 license. Commercial users utilizing GHI Electronics hardware will also receive professional support from GHI Electronics. Running TinyCLR OR on non-GHI Electronics hardware is community supported only.