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.

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/

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.