Top TinyML Boards for Machine Learning on Small Devices (2022 Edition)

TinyML boards are small, low-power microcontrollers that are designed to run machine learning models at the edge. These boards are a great way to bring machine learning capabilities to your projects, and they are becoming increasingly popular as more and more people discover their potential.

Introduction

In this post, we’ll take a look at some of the most popular TinyML boards currently available. We’ll provide a brief overview of each board, as well as a link where you can find more information and purchase them.

 

Sipeed Maixduino

 

 

The Sipeed Maixduino is a TinyML board that features the Kendryte K210 microcontroller, which has a dual-core RISC-V processor and a built-in neural network accelerator. It’s suitable for running TensorFlow Lite for Microcontrollers and can be used for various machine learning applications.
The Maixduino also includes various sensors and interfaces, making it easy to connect to other devices and peripherals. It’s compatible with the Arduino IDE and supports various programming languages, including MicroPython and C++.

 

Learn more about the Sipeed Maixduino: https://s.click.aliexpress.com/e/_DBd6fTF

 

Arduino Nano 33 BLE Sense

The Arduino Nano 33 BLE Sense is a small, powerful microcontroller that is perfect for TinyML projects. The board uses mainly the Arduino Integrated Development Environment (IDE) and has a range of libraries and example projects available.

  • 9 axis inertial sensor: what makes this board ideal for wearable devices
  • Humidity, and temperature sensor: to get highly accurate measurements of the environmental conditions
  • Barometric sensor: you could make a simple weather station
  • Microphone: to capture and analyse sound in real time
  • Gesture, proximity, light color and light intensity sensor : estimate the room’s luminosity, but also whether someone is moving close to the board

You can find more information and purchase the Arduino Nano 33 BLE Sense here: https://store.arduino.cc/products/arduino-nano-33-ble-sense?selectedStore=eu

Adafruit EdgeBadge

The Adafruit EdgeBadge is a tiny, low-power microcontroller that is specifically designed for TinyML projects.

  • ATSAMD51J19 @ 120MHz with 3.3V logic/power – 512KB of FLASH + 192KB of RAM
  • 2 MB of SPI Flash for storing images, sounds, animations, whatever!
  • 1.8″ 160×128 Color TFT Display connected to its own SPI port
  • 8 x Game/Control Buttons with nice silicone button tops (these feel great)
  • 5 x NeoPixels for badge dazzle, or game score-keeping
  • Triple-axis accelerometer (motion sensor)
  • Light sensor, reverse-mount so that it points out the front
  • Built in buzzer mini-speaker
  • Mono Class-D speaker driver for 4-8 ohm speakers, up to 2 Watts
  • LiPoly battery port with built in recharging capability
  • USB port for battery charging, programming and debugging
  • Two female header strips with Feather-compatible pinout so you can plug any FeatherWings in
  • JST ports for NeoPixels, sensor input, and I2C (you can fit I2C Grove connectors in here)
  • Reset button
  • On-Off switch

You can find more information and purchase the Adafruit EdgeBadge here: https://www.adafruit.com/product/4500

SparkFun Edge

The SparkFun Edge is a powerful, low-power microcontroller that is perfect for TinyML projects. It has a Cortex M4 processor and comes with a number of built-in sensors.

Microcontroller

  • 32-bit ARM Cortex-M4F processor with Direct Memory Access
  • 48MHz CPU clock, 96MHz with TurboSPOT™
  • Extremely low-power usage: 6uA/MHz
  • 1MB Flash
  • 384KB SRAM
  • Dedicated Bluetooth processor with BLE 5

Onboard

  • ST LIS2DH12 3-axis accelerometer
  • 2x MEMS microphones with operational amplifier
  • Himax HM01B0 camera connector
  • Qwiic connector
  • 4 x GPIO connections
  • 4 x user LEDs
  • 1 x user button
  • FTDI-style serial header for programming
  • Bluetooth antenna
  • CR2032 coin cell holder for battery operation

You can find more information and purchase the SparkFun Edge here: https://www.sparkfun.com/products/15170

Coral Dev Board

The Coral Dev Board is a powerful, low-power microcontroller that is specifically designed for machine learning projects. The Dev Board also has a range of libraries and example projects available, so you can easily build and deploy machine learning models at the edge.

CPU NXP i.MX 8M SoC (quad Cortex-A53, Cortex-M4F)
GPU Integrated GC7000 Lite Graphics
ML accelerator Google Edge TPU coprocessor:
4 TOPS (int8); 2 TOPS per watt
RAM 1 or 4 GB LPDDR4
Flash memory 8 GB eMMC, MicroSD slot
Wireless Wi-Fi 2×2 MIMO (802.11b/g/n/ac 2.4/5GHz) and Bluetooth 4.2
USB Type-C OTG; Type-C power; Type-A 3.0 host; Micro-B serial console
LAN Gigabit Ethernet port
Audio 3.5mm audio jack (CTIA compliant); Digital PDM microphone (x2); 2.54mm 4-pin terminal for stereo speakers
Video HDMI 2.0a (full size); 39-pin FFC connector for MIPI-DSI display (4-lane); 24-pin FFC connector for MIPI-CSI2 camera (4-lane)
GPIO 3.3V power rail; 40 – 255 ohms programmable impedance; ~82 mA max current
Power 5V DC (USB Type-C)

You can find more information and purchase the Coral Dev Board here: https://coral.ai/products/dev-board/

Seeeduino XIAO

The Seeeduino XIAO is a small, low-power microcontroller that is perfect for TinyML projects. The XIAO is compatible with the Arduino Integrated Development Environment (IDE) and has a range of libraries and example projects available.

  • High Performance: Powered by SAMD21G18 chip, operating up to 48MHz, equipped with 32KB of SRAM, and 256KB of onboard flash memory
  • Ultra-small Design: 21 x 17.5mm, Seeed Studio XIAO series classic form-factor, suitable for wearable devices
  • Multiple Development Interfaces: 11x analog / 11x digital Pins, 1x I2C interface, 1x UART port, and 1 SPI port
  • Multiple Develop Platform: Support Arduino / Micropython / CircuitPython development, friendly for beginners, satisfied for electronics enthusiasts
  • Perfect for Production: Breadboard-friendly & SMD design, no components on the back

You can find more information and purchase the Seeeduino XIAO here: https://www.seeedstudio.com/Seeeduino-XIAO-Arduino-Microcontroller-SAMD21-Cortex-M0+-p-4426.html

BBC micro:bit

The BBC micro:bit is a small, low-power microcontroller that is perfect for TinyML projects. The micro:bit is easy to program and has a range of libraries and example projects available.

  • Microprocessor: 32-bit ARM® Cortex™ M0 CPU
  • A 5×5 LED matrix with 25 red LEDs to light up and can display animiated patterns, scrolling text and alphanumeric characters
  • Two programmable buttons. Use them as a games controller, or control music on a smart phone
  • On-board motion detector or 3-AXIS digital accelerometer that can detect movement e.g. shake, tilt or free-fall
  • A built-in compass, 3D magnetometer to sense which direction you’re facing and your movement in degrees and detect the presence of certain metals and magnets
  • Bluetooth® Smart Technology. Connect the micro:bit to other micro:bits, devices, phones, tablets, cameras and other everday objects
  • 20 pin edge connector: This allows the micro:bit to be connected to other devices such as Raspberry Pi, Arduino, Galileo and Kano through a standard connector
  • Micro-USB controller: This is controlled by a separate processor and presents the micro:bit to a computer as a memory stick
  • Five Ring Input and Output (I/O) including power (PWR), ground (GRD) and 3 x I/O.
  • System LED x 1 (yellow)

You can find more information and purchase the BBC micro:bit here: https://www.microbit.org/buy/

Teensy 4.1

The Teensy 4.1 is a powerful, low-power microcontroller that is perfect for TinyML projects. It has a Cortex M7 processor. The Teensy 4.1 is easy to program and has a range of libraries and example projects available.

  • ARM Cortex-M7 at 600 MHz
  • Float point math unit, 64 & 32 bits
  • 7936K Flash, 1024K RAM (512K tightly coupled), 4K EEPROM (emulated)
  • QSPI memory expansion, locations for 2 extra RAM or Flash chips
  • USB device 480 Mbit/sec & USB host 480 Mbit/sec
  • 55 digital input/output pins, 35 PWM output pins
  • 18 analog input pins
  • 8 serial, 3 SPI, 3 I2C ports
  • 2 I2S/TDM and 1 S/PDIF digital audio port
  • 3 CAN Bus (1 with CAN FD)
  • 1 SDIO (4 bit) native SD Card port
  • Ethernet 10/100 Mbit with DP83825 PHY
  • 32 general purpose DMA channels
  • Cryptographic Acceleration & Random Number Generator
  • RTC for date/time
  • Programmable FlexIO
  • Pixel Processing Pipeline
  • Peripheral cross triggering
  • Power On/Off management

You can find more information and purchase the Teensy 4.1 here: https://www.pjrc.com/store/teensy41.html

Raspberry Pi Pico

The Raspberry Pi Pico is a small, low-power microcontroller that is perfect for TinyML projects. It has a Cortex M0+. The Pico is compatible with the Python programming language and has a range of libraries and example projects available.

  • 21 mm × 51 mm form factor
  • RP2040 microcontroller chip designed by Raspberry Pi in the UK
  • Dual-core Arm Cortex-M0+ processor, flexible clock running up to 133 MHz
  • 264kB on-chip SRAM
  • 2MB on-board QSPI flash
  • 2.4GHz 802.11n wireless LAN (Raspberry Pi Pico W and WH only)
  • 26 multifunction GPIO pins, including 3 analogue inputs
  • 2 × UART, 2 × SPI controllers, 2 × I2C controllers, 16 × PWM channels
  • 1 × USB 1.1 controller and PHY, with host and device support
  • 8 × Programmable I/O (PIO) state machines for custom peripheral support
  • Supported input power 1.8–5.5V DC
  • Operating temperature -20°C to +85°C (Raspberry Pi Pico and Pico H); -20°C to +70°C (Raspberry Pi Pico W and Pico WH)
  • Castellated module allows soldering direct to carrier boards (Raspberry Pi Pico and Pico W only)
  • Drag-and-drop programming using mass storage over USB
  • Low-power sleep and dormant modes
  • Accurate on-chip clock
  • Temperature sensor
  • Accelerated integer and floating-point libraries on-chip

You can find more information and purchase the Raspberry Pi Pico here: https://www.raspberrypi.org/products/raspberry-pi-pico/

OpenMV H7

 

The OpenMV H7 is a powerful TinyML board designed for computer vision applications. It features an STM32H7 microcontroller, which has a dual-core ARM Cortex-M7 processor running at up to 480 MHz. The board also includes a camera module, various sensors, and support for TensorFlow Lite for Microcontrollers.
With the OpenMV H7, you can run machine learning models for object detection, face recognition, and more. The board is also compatible with the OpenMV IDE, a Python-based development environment that makes it easy to program and deploy your applications.

 

Learn more about the OpenMV H7: https://openmv.io/products/h7

 

Seeed Studio Wio Terminal

 

The Seeed Studio Wio Terminal is a versatile TinyML board that features a 32-bit ARM Cortex-M4F microcontroller, a 2.4-inch LCD screen, and various sensors. It supports TensorFlow Lite for Microcontrollers and can be used for TinyML applications, as well as other projects that require a compact and easy-to-use development board.
The Wio Terminal also includes a built-in microphone and speaker, making it suitable for voice recognition and other audio-related applications. It’s compatible with the Arduino IDE and supports Grove modules, allowing you to easily expand its capabilities.

 

Learn more about the Seeed Studio Wio Terminal: https://www.seeedstudio.com/Wio-Terminal-p-4509.html

 

STM32 Nucleo

 

The STM32 Nucleo is a family of development boards based on the STM32 microcontroller series. These boards come in various configurations and are suitable for a wide range of applications, including TinyML.
Some STM32 microcontrollers, like the STM32H7 series, have built-in machine learning acceleration, making them ideal for running TensorFlow Lite for Microcontrollers. The STM32 Nucleo boards are also compatible with the Arduino IDE and support various sensors and modules.

 

 

Nordic Semiconductor nRF52840

 

 

The Nordic Semiconductor nRF52840 is a TinyML board that features a 32-bit ARM Cortex-M4 processor with a floating-point unit (FPU) and Bluetooth 5.2 support. It’s suitable for running TensorFlow Lite for Microcontrollers and can be used for a wide range of applications, from wearables to smart home devices.
The nRF52840 also includes various sensors and interfaces, making it easy to connect to other devices and peripherals. It’s compatible with the Arduino IDE and Nordic Semiconductor’s nRF5 SDK, allowing you to develop and deploy your applications quickly and easily.

 

Learn more about the Nordic Semiconductor nRF52840: https://www.seeedstudio.com/Seeed-XIAO-BLE-Sense-nRF52840-p-5253.html

 

BeagleBone AI

 

 

The BeagleBone AI is a powerful TinyML board that’s built around the Texas Instruments AM5729 SoC. This SoC features dual ARM Cortex-A15 cores and dual TI C66x DSP cores, making it ideal for edge AI applications.
The BeagleBone AI also includes the TI Deep Learning (TIDL) library, which allows you to run machine learning models on the device. It’s compatible with various sensors and modules and supports various programming languages, including Python and C++.

 

Learn more about the BeagleBone AI: https://beagleboard.org/ai

 

NVIDIA Jetson Nano

 

 

The NVIDIA Jetson Nano is a popular choice for edge AI applications due to its powerful GPU and support for various machine learning frameworks. It features a quad-core ARM Cortex-A57 processor and a 128-core NVIDIA Maxwell GPU, making it ideal for running complex machine learning models.
The Jetson Nano also includes various sensors and interfaces, making it easy to connect to other devices and peripherals. It supports various machine learning frameworks, including TensorFlow, PyTorch, and Caffe.

 

 

Conclusion

These are just a few examples of tinyML boards, and there are many other options available depending on your needs and budget. Whether you’re a hobbyist, a developer, or a researcher, there is a tinyML board out there that can meet your needs and help you build innovative machine learning applications.