# Machine learning on a microcontroller

Small machine-learning models can run on microcontrollers, with no operating system and very little memory.

Page: https://dharanova.com/learn/tinyml · Track: Infer · Level: Core · Facts last checked 6 October 2026

Read first: [Microcontroller or microprocessor?](https://dharanova.com/learn/mcu-vs-mpu.md), [GPUs, DSPs, ISPs, NPUs and what TOPS means](https://dharanova.com/learn/accelerators-and-tops.md)

Diagram: Top: training happens on a computer or in the cloud; the trained model, now fixed, goes to the microcontroller, where inference applies it to new sensor data. Middle, runtimes: LiteRT for Microcontrollers (TensorFlow Lite became LiteRT in September 2024; the code is still in the tflite-micro repository) needs no operating system, no standard C/C++ libraries and no dynamic memory allocation; ExecuTorch is the PyTorch project's on-device runtime, including microcontroller targets. Bottom: some MCUs pair a Cortex-M core with Arm's Ethos-U NPU, others add an NPU of their own design.

## Key points

1. Training normally happens on a computer or in the cloud; the microcontroller only runs inference, applying a fixed, already-trained model to new sensor data. [1]
2. Google renamed TensorFlow Lite to LiteRT in September 2024. Its microcontroller version, LiteRT for Microcontrollers (still kept in the tflite-micro code repository), needs no operating system, no standard C/C++ libraries and no dynamic memory allocation. (as of 6 October 2026) [2][1][3]
3. ExecuTorch is the PyTorch project's runtime for on-device inference, including microcontroller targets. (as of 6 October 2026) [4]
4. Microcontroller-class NPUs now appear in MCUs from several vendors. Some license Arm's Ethos-U NPU and pair it with a Cortex-M core; others design an NPU of their own. [5][6][7][8]

## Where to go next

- [The one room a phone does not follow you into](https://dharanova.com/arduino-physical-ai-challenge-2026.md): an engineering note from our team
- [Wake-word and stop-phrase detection for VAHA: dataset, validation accuracy and first field check](https://dharanova.com/whitepapers/vaha-wake-word-stop-phrase-detection.md): a whitepaper from our lab
- [Quantisation: making models fit](https://dharanova.com/learn/quantisation.md): Storing weights as 8-bit integers instead of 32-bit floats makes a model about four times smaller. Quantising the activations too lets integer-only NPUs run it.

## Sources

1. [LiteRT for Microcontrollers](https://developers.google.com/edge/litert/microcontrollers/overview), Google
2. [TensorFlow Lite is now LiteRT](https://developers.googleblog.com/en/tensorflow-lite-is-now-litert/), Google for Developers Blog
3. [TensorFlow Lite for Microcontrollers (tflite-micro) repository](https://github.com/tensorflow/tflite-micro), TensorFlow / Google
4. [ExecuTorch overview](https://docs.pytorch.org/executorch/stable/intro-overview.html), PyTorch
5. [Ethos-U55 microNPU](https://www.arm.com/products/silicon-ip-cpu/ethos/ethos-u55), Arm
6. [Ensemble family of fusion processors and microcontrollers](https://alifsemi.com/products/ensemble/), Alif Semiconductor
7. [RA8P1: 1GHz Arm Cortex-M85 and Ethos-U55 NPU based AI microcontroller](https://www.renesas.com/en/products/ra8p1), Renesas
8. [MCX N94x and N54x](https://www.nxp.com/products/MCX-N94X-N54X), NXP
