Updated: Jan 2026
CMRX real-time operating system is designed to run on microcontrollers. Microcontrollers are low-power devices having limited amount of resources such as RAM and Flash memory. Microcontrollers also usually don’t contain memory management unit and it is not possible to run Linux or similar operating system there.
CMRX supports following microcontroller families:
All ARM cores of ARMv6-M and ARMv7-M are supported as long as they are equipped with ARM Cortex MPU peripheral.
This is a brief list of microcontrollers with known level of support. This list is by no means complete and the fact that device is not present in this list does not mean that the microcontroller is not supported.
| Manufacturer | Model Family | CPU Core | SDK / HAL | Supported | Notes |
|---|---|---|---|---|---|
| Linus Torvalds | Linux | any | any | Yes | *6 |
| Microchip | PIC32CK | Cortex-M33 | MPLAB X | Yes | |
| Microchip | PIC32CM GV00 | Cortex-M0+ | MPLAB X | Yes | |
| Microchip | PIC32CM JHxx | Cortex-M0+ | MPLAB X | Yes | |
| Microchip | PIC32CM LX | Cortex-M23 | MPLAB X | Yes | |
| Microchip | PIC32CM MC | Cortex-M0+ | MPLAB X | Yes | |
| Microchip | PIC32CX | Cortex-M4 | MPLAB X | Yes | |
| Microchip | PIC32CZ | Cortex-M7 | MPLAB X | Yes | |
| Microchip | SAM 4 | Cortex-M4 | MPLAB X | Yes | |
| Microchip | SAM C | Cortex-M0+ | MPLAB X | Yes | |
| Microchip | SAM D | Cortex-M0+ | MPLAB X | Yes | |
| Microchip | SAM D5x | Cortex-M4 | MPLAB X | Yes | |
| Microchip | SAM E5x | Cortex-M4 | MPLAB X | Yes | |
| Microchip | SAM E7x | Cortex-M7 | MPLAB X | Yes | |
| Microchip | SAM G | Cortex-M4 | MPLAB X | Yes | |
| Microchip | SAM L21/L22 | Cortex-M0+ | MPLAB X | Yes | |
| Microchip | SAM L10/L11 | Cortex-M23 | MPLAB X | Yes | |
| Microchip | SAM S7x | Cortex-M7 | MPLAB X | Yes | |
| Microchip | SAM V7x | Cortex-M7 | MPLAB X | Yes | |
| Nordic Semiconductor | nRF51 | Cortex-M0 | nRF5 SDK | No | |
| Nordic Semiconductor | nRF52 | Cortex-M4 | nRF5 SDK | Yes | |
| Nordic Semiconductor | nRF53 | Cortex-M33 | nRF-Connect SDK | No | *4 |
| Nordic Semiconductor | nRF54 | Cortex-M33 | nRF-Connect SDK | Yes | *5 |
| Nordic Semiconductor | nRF91 | Cortex-M33 | nRF-Connect SDK | No | *4 |
| NXP | Kinetis | Cortex-M | any | No | *3 |
| ST Microelectronics | STM32C0 | Cortex-M0+ | CubeMX | Yes | |
| ST Microelectronics | STM32F0 | Cortex-M0 | CubeMX | No | |
| ST Microelectronics | STM32F1 | Cortex-M3 | CubeMX | Yes | |
| ST Microelectronics | STM32F2 | Cortex-M3 | CubeMX | Yes | |
| ST Microelectronics | STM32F3 | Cortex-M4 | CubeMX | Yes | |
| ST Microelectronics | STM32F4 | Cortex-M4 | CubeMX | Yes | |
| ST Microelectronics | STM32F7 | Cortex-M7 | CubeMX | Yes | |
| ST Microelectronics | STM32G0 | Cortex-M0+ | CubeMX | Yes | |
| ST Microelectronics | STM32G4 | Cortex-M4 | CubeMX | Yes | |
| ST Microelectronics | STM32H5 | Cortex-M33 | CubeMX | Yes | |
| ST Microelectronics | STM32H7 | Cortex-M7 | CubeMX | Yes | |
| ST Microelectronics | STM32L0 | Cortex-M0+ | CubeMX | Yes | |
| ST Microelectronics | STM32L4 | Cortex-M4 | CubeMX | Yes | |
| ST Microelectronics | STM32L4+ | Cortex-M4 | CubeMX | Yes | |
| ST Microelectronics | STM32L5 | Cortex-M33 | CubeMX | Yes | |
| ST Microelectronics | STM32N6 | Cortex-M55 | CubeMX | Not yet | *1 |
| ST Microelectronics | STM32U0 | Cortex-M0+ | CubeMX | Yes | |
| ST Microelectronics | STM32U3 | Cortex-M33 | CubeMX | Yes | |
| ST Microelectronics | STM32U5 | Cortex-M33 | CubeMX | Yes | |
| Raspberry Pi | RP2040 | Cortex-M0+ | Pico-SDK | Almost | *2 |
| Raspberry Pi | RP235x | Cortex-M33 | Pico-SDK | Yes | ARM mode only |
Additionally CMRX can be run on any auxiliary CPU core in SoCs which is Cortex-M0+ or better and supports ARM Cortex-M MPU.