mbed

Configuration:

framework = mbed

The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community.

For more detailed information please visit vendor site.

Configuration

Configuration system

PlatformIO allows you to customize mbed OS compile time configuration parameters using mbed_app.json manifest. It should be placed into the root of your project and located on the same level as “platformio.ini” (Project Configuration File).

Configuration is defined using JSON. Some examples of configuration parameters:

  • The sampling period for a data acquisition application.

  • The default stack size for a newly created OS thread.

  • The receive buffer size of a serial communication library.

  • The flash and RAM memory size of a target board.

See more details in the official ARM Mbed OS Configuration System.

A few PlatformIO-ready projects based on ARM mbed OS which use mbed_app.json;

Mbed lib and Mbed OS 5

PlatformIO allows compiling projects with or without Mbed OS. By default, project is built without the OS feature. Most of the framework functionality requires the OS to be enabled. To add the OS feature you can use a special macro definition that needs be added to build_flags of “platformio.ini” (Project Configuration File):

Name

Description

PIO_FRAMEWORK_MBED_RTOS_PRESENT

Build the project with enabled rtos

An example of “platformio.ini” (Project Configuration File) with enabled rtos

[env:wizwiki_w7500p]
platform = wiznet7500
framework = mbed
board = wizwiki_w7500p
build_flags = -D PIO_FRAMEWORK_MBED_RTOS_PRESENT

Build profiles

By default, PlatformIO builds your project using develop profile which provides optimized firmware size with full error information and allows MCU to go to sleep mode. In the case when default build profile is not suitable for your project there two other profiles release and debug that can be enabled using special macro definitions. You can change build profile build_flags of “platformio.ini” (Project Configuration File):

Name

Description

MBED_BUILD_PROFILE_RELEASE

Release profile (smallest firmware, minimal error info)

MBED_BUILD_PROFILE_DEBUG

Debug profile (largest firmware, disabled sleep mode)

More information about differences between build profiles can be found on the official page ARM Mbed OS Build Profiles.

Ignoring particular components

In case you don’t need all parts of the framework or you want to reduce the compilation time, you can explicitly exclude folders with redundant sources. For example, to remove cellular, mbedtls and nanostack features from the build process, navigate to packages_dir and create a new file framework-mbed/features/.mbedignore with the following contents:

cellular/*
mbedtls/*
nanostack/*

If you want to exclude the entire folder, simply create .mbedignore file and add only one symbol * to this file.

Custom Targets

In case when your board is not officially supported by mbed you can manually add custom board definitions to your project. First of all, you need to create a special file custom_targets.json in the root folder of your project where you describe your board, for example here is the configuration for NUCLEO-F401RE board:

{
  "NUCLEO_F401RE": {
        "inherits": ["FAMILY_STM32"],
        "supported_form_factors": ["ARDUINO", "MORPHO"],
        "core": "Cortex-M4F",
        "extra_labels_add": ["STM32F4", "STM32F401xE", "STM32F401RE"],
        "config": {
            "clock_source": {
                "help": "Mask value : USE_PLL_HSE_EXTC | USE_PLL_HSE_XTAL (need HW patch) | USE_PLL_HSI",
                "value": "USE_PLL_HSE_EXTC|USE_PLL_HSI",
                "macro_name": "CLOCK_SOURCE"
            }
        },
        "detect_code": ["0720"],
        "macros_add": ["USB_STM_HAL", "USBHOST_OTHER"],
        "device_has_add": [
            "SERIAL_ASYNCH",
            "FLASH",
            "MPU"
        ],
        "release_versions": ["2", "5"],
        "device_name": "STM32F401RE"
    }
}

Secondly, you need to add code specific to your target to the src folder of your project. Usually, it’s a good idea to isolate this code in a separate folder and add еру path to this folder to build_flags of “platformio.ini” (Project Configuration File):

[env:my_custom_board]
platform = nxplpc
framework = mbed
board = my_custom_board
build_flags = -I$PROJECTSRC_DIR/MY_CUSTOM_BOARD_TARGET

Next, you need to inform PlatformIO that there is a new custom board. To do this, you can create boards directory in the root folder of your project and add a board manifest file with your board name, e.g. my_custom_board.json as described here Custom Embedded Board

After these steps, your project structure should look like this:

project_dir
├── include
├── boards
│    └── my_custom_board.json
├── src
│    ├── main.cpp
│    └── MY_CUSTOM_BOARD_TARGET
│         ├── pinNames.h
│         └── pinNames.c
├── custom_targets.json
└── platformio.ini
More information about adding custom targets can be found on the official page

Adding and configuring targets.

See full examples with a custom board:

Debugging

PIO Unified Debugger - “1-click” solution for debugging with a zero configuration.

Tools & Debug Probes

Supported debugging tools are listed in “Debug” column. For more detailed information, please scroll table by horizontal. You can switch between debugging Tools & Debug Probes using debug_tool option in “platformio.ini” (Project Configuration File).

Warning

You will need to install debug tool drivers depending on your system. Please click on compatible debug tool below for the further instructions.

On-Board Debug Tools

Boards listed below have on-board debug probe and ARE READY for debugging! You do not need to use/buy external debug probe.

Name

Platform

MCU

Frequency

Flash

RAM

96Boards B96B-F446VE

ST STM32

STM32F446VET6

168MHz

512KB

128KB

ARM mbed LPC11U24 (+CAN)

NXP LPC

LPC11U24

48MHz

32KB

8KB

Atmel ATSAMR21-XPRO

Atmel SAM

SAMR21G18A

48MHz

256KB

32KB

Atmel ATSAMW25-XPRO

Atmel SAM

SAMD21G18A

48MHz

256KB

32KB

Atmel SAMD21-XPRO

Atmel SAM

SAMD21J18A

48MHz

256KB

32KB

Atmel SAML21-XPRO-B

Atmel SAM

SAML21J18B

48MHz

256KB

32KB

BBC micro:bit

Nordic nRF51

NRF51822

16MHz

256KB

16KB

Bambino-210E

NXP LPC

LPC4330

204MHz

8MB

264KB

CoCo-ri-Co!

NXP LPC

LPC812

30MHz

16KB

4KB

Delta DFBM-NQ620

Nordic nRF52

NRF52832

64MHz

512KB

64KB

Delta DFCM-NNN40

Nordic nRF51

NRF51822

32MHz

256KB

32KB

Delta DFCM-NNN50

Nordic nRF51

NRF51822

32MHz

256KB

16KB

EFM32GG-STK3700 Giant Gecko

Silicon Labs EFM32

EFM32GG990F1024

48MHz

1MB

128KB

EFM32LG-STK3600 Leopard Gecko

Silicon Labs EFM32

EFM32LG990F256

48MHz

256KB

32KB

EFM32WG-STK3800 Wonder Gecko

Silicon Labs EFM32

EFM32WG990F256

48MHz

256KB

32KB

EFM32ZG-STK3200 Zero Gecko

Silicon Labs EFM32

EFM32ZG222F32

24MHz

32KB

4KB

Embedded Artists LPC4088 Display Module

NXP LPC

LPC4088

120MHz

512KB

96KB

Embedded Artists LPC4088 QuickStart Board

NXP LPC

LPC4088

120MHz

512KB

96KB

Ethernet IoT Starter Kit

Freescale Kinetis

MK64FN1M0VLL12

120MHz

1MB

256KB

Freescale Kinetis FRDM-K20D50M

Freescale Kinetis

MK20DX128VLH5

48MHz

128KB

16KB

Freescale Kinetis FRDM-K22F

Freescale Kinetis

MK22FN512VLH12

120MHz

512KB

128KB

Freescale Kinetis FRDM-K64F

Freescale Kinetis

MK64FN1M0VLL12

120MHz

1MB

256KB

Freescale Kinetis FRDM-K66F

Freescale Kinetis

MK66FN2M0VMD18

180MHz

2MB

256KB

Freescale Kinetis FRDM-K82F

Freescale Kinetis

MK82FN256VLL15

150MHz

256KB

256KB

Freescale Kinetis FRDM-KL05Z

Freescale Kinetis

MKL05Z32VFM4

48MHz

32KB

4KB

Freescale Kinetis FRDM-KL25Z

Freescale Kinetis

MKL25Z128VLK4

48MHz

128KB

16KB

Freescale Kinetis FRDM-KL27Z

Freescale Kinetis

MKL27Z64VLH4

48MHz

64KB

16KB

Freescale Kinetis FRDM-KL43Z

Freescale Kinetis

MKL43Z256VLH4

48MHz

256KB

32KB

Freescale Kinetis FRDM-KL46Z

Freescale Kinetis

MKL46Z256VLL4

48MHz

256KB

32KB

Freescale Kinetis FRDM-KW41Z

Freescale Kinetis

MKW41Z512VHT4

48MHz

512KB

128KB

GAPuino GAP8

RISC-V GAP

GAP8

250MHz

64MB

8MB

JKSoft Wallbot BLE

Nordic nRF51

NRF51822

16MHz

128KB

16KB

L476DMW1K

ST STM32

STM32L476VGT6

80MHz

1MB

128KB

LPCXpresso11U68

NXP LPC

LPC11U68

50MHz

256KB

36KB

LPCXpresso824-MAX

NXP LPC

LPC824

30MHz

32KB

8KB

Maxim ARM mbed Enabled Development Platform for MAX32600

Maxim 32

MAX32600

24MHz

256KB

32KB

Mbed Connect Cloud

ST STM32

STM32F439ZIY6

168MHz

2MB

256KB

NXP LPC800-MAX

NXP LPC

LPC812

30MHz

16KB

4KB

NXP LPCXpresso54114

NXP LPC

LPC54114J256BD64

100MHz

256KB

192KB

NXP LPCXpresso54608

NXP LPC

LPC54608ET512

180MHz

512KB

200KB

NXP mbed LPC11U24

NXP LPC

LPC11U24

48MHz

32KB

8KB

NXP mbed LPC1768

NXP LPC

LPC1768

96MHz

512KB

64KB

Nordic nRF51 Dongle (PCA10031)

Nordic nRF51

NRF51822

32MHz

256KB

32KB

Nordic nRF51822-mKIT

Nordic nRF51

NRF51822

16MHz

128KB

16KB

Nordic nRF51X22 Development Kit(PCA1000X)

Nordic nRF51

NRF51822

32MHz

256KB

32KB

Nordic nRF52-DK

Nordic nRF52

NRF52832

64MHz

512KB

64KB

Nordic nRF52840-DK

Nordic nRF52

NRF52840

64MHz

1MB

256KB

RedBearLab BLE Nano 1.5

Nordic nRF51

NRF51822

16MHz

256KB

32KB

RedBearLab BLE Nano 2

Nordic nRF52

NRF52832

64MHz

512KB

64KB

RedBearLab nRF51822

Nordic nRF51

NRF51822

16MHz

256KB

16KB

RushUp Cloud-JAM

ST STM32

STM32F401RET6

84MHz

512KB

96KB

RushUp Cloud-JAM L4

ST STM32

STM32L476RGT6

80MHz

1MB

128KB

SLSTK3400A USB-enabled Happy Gecko

Silicon Labs EFM32

EFM32HG322F64

25MHz

64KB

8KB

SLSTK3401A Pearl Gecko PG1

Silicon Labs EFM32

EFM32PG1B200F256GM48

40MHz

256KB

32KB

ST 32F3348DISCOVERY

ST STM32

STM32F334C8T6

72MHz

64KB

12KB

ST 32F401CDISCOVERY

ST STM32

STM32F401VCT6

84MHz

256KB

64KB

ST 32F413HDISCOVERY

ST STM32

STM32F413ZHT6

100MHz

512KB

128KB

ST 32F429IDISCOVERY

ST STM32

STM32F429ZIT6

180MHz

2MB

256KB

ST 32F469IDISCOVERY

ST STM32

STM32F469NIH6

180MHz

1MB

384KB

ST 32F746GDISCOVERY

ST STM32

STM32F746NGH6

216MHz

1MB

320KB

ST 32F769IDISCOVERY

ST STM32

STM32F769NIH6

216MHz

1MB

512KB

ST 32L0538DISCOVERY

ST STM32

STM32L053C8T6

32MHz

64KB

8KB

ST 32L476GDISCOVERY

ST STM32

STM32L476VGT6

80MHz

1MB

128KB

ST 32L496GDISCOVERY

ST STM32

STM32L496AGI6

80MHz

1MB

320KB

ST DISCO-L072CZ-LRWAN1

ST STM32

STM32L072CZ

32MHz

192KB

20KB

ST DISCO-L475VG-IOT01A

ST STM32

STM32L475VGT6

80MHz

1MB

128KB

ST Discovery F072RB

ST STM32

STM32F072RBT6

48MHz

128KB

16KB

ST Nucleo F030R8

ST STM32

STM32F030R8T6

48MHz

64KB

8KB

ST Nucleo F031K6

ST STM32

STM32F031K6T6

48MHz

32KB

4KB

ST Nucleo F042K6

ST STM32

STM32F042K6T6

48MHz

32KB

6KB

ST Nucleo F070RB

ST STM32

STM32F070RBT6

48MHz

128KB

16KB

ST Nucleo F072RB

ST STM32

STM32F072RBT6

48MHz

128KB

16KB

ST Nucleo F091RC

ST STM32

STM32F091RCT6

48MHz

256KB

32KB

ST Nucleo F103RB

ST STM32

STM32F103RBT6

72MHz

128KB

20KB

ST Nucleo F207ZG

ST STM32

STM32F207ZGT6

120MHz

1MB

128KB

ST Nucleo F302R8

ST STM32

STM32F302R8T6

72MHz

64KB

16KB

ST Nucleo F303K8

ST STM32

STM32F303K8T6

72MHz

64KB

12KB

ST Nucleo F303RE

ST STM32

STM32F303RET6

72MHz

512KB

64KB

ST Nucleo F303ZE

ST STM32

STM32F303ZET6

72MHz

512KB

64KB

ST Nucleo F334R8

ST STM32

STM32F334R8T6

72MHz

64KB

16KB

ST Nucleo F401RE

ST STM32

STM32F401RET6

84MHz

512KB

96KB

ST Nucleo F410RB

ST STM32

STM32F410RBT6

100MHz

128KB

32KB

ST Nucleo F411RE

ST STM32

STM32F411RET6

100MHz

512KB

128KB

ST Nucleo F412ZG

ST STM32

STM32F412ZGT6

100MHz

1MB

256KB

ST Nucleo F413ZH

ST STM32

STM32F413ZHT6

100MHz

512KB

128KB

ST Nucleo F429ZI

ST STM32

STM32F429ZIT6

180MHz

2MB

256KB

ST Nucleo F439ZI

ST STM32

STM32F439ZIT6

180MHz

2MB

256KB

ST Nucleo F446RE

ST STM32

STM32F446RET6

180MHz

512KB

128KB

ST Nucleo F446ZE

ST STM32

STM32F446ZET6

180MHz

512KB

128KB

ST Nucleo F746ZG

ST STM32

STM32F746ZGT6

216MHz

1MB

320KB

ST Nucleo F756ZG

ST STM32

STM32F756ZG

216MHz

1MB

320KB

ST Nucleo F767ZI

ST STM32

STM32F767ZIT6

216MHz

2MB

512KB

ST Nucleo H743ZI

ST STM32

STM32H743ZIT6

400MHz

2MB

512KB

ST Nucleo L031K6

ST STM32

STM32L031K6T6

32MHz

32KB

8KB

ST Nucleo L053R8

ST STM32

STM32L053R8T6

32MHz

64KB

8KB

ST Nucleo L073RZ

ST STM32

STM32L073RZ

32MHz

192KB

20KB

ST Nucleo L152RE

ST STM32

STM32L152RET6

32MHz

512KB

80KB

ST Nucleo L432KC

ST STM32

STM32L432KCU6

80MHz

256KB

64KB

ST Nucleo L433RC-P

ST STM32

STM32L433RC

80MHz

256KB

64KB

ST Nucleo L476RG

ST STM32

STM32L476RGT6

80MHz

1MB

128KB

ST Nucleo L486RG

ST STM32

STM32L486RGT6

80MHz

1MB

128KB

ST Nucleo L496ZG

ST STM32

STM32L496ZGT6

80MHz

1MB

128KB

ST Nucleo L496ZG-P

ST STM32

STM32L496ZGT6P

80MHz

1MB

320KB

ST Nucleo L4R5ZI

ST STM32

STM32L4R5ZIT6

120MHz

2MB

640KB

ST STM32F0308DISCOVERY

ST STM32

STM32F030R8T6

48MHz

64KB

8KB

ST STM32F0DISCOVERY

ST STM32

STM32F051R8T6

48MHz

64KB

8KB

ST STM32F3DISCOVERY

ST STM32

STM32F303VCT6

72MHz

256KB

48KB

ST STM32F4DISCOVERY

ST STM32

STM32F407VGT6

168MHz

1MB

128KB

ST STM32VLDISCOVERY

ST STM32

STM32F100RBT6

24MHz

128KB

8KB

ST Sensor Node

ST STM32

STM32L476JG

80MHz

1MB

128KB

Seeed Arch BLE

Nordic nRF51

NRF51822

16MHz

128KB

16KB

Seeed Arch Link

Nordic nRF51

NRF51822

16MHz

256KB

16KB

Seeed Arch Max

ST STM32

STM32F407VET6

168MHz

512KB

192KB

Seeed Arch Pro

NXP LPC

LPC1768

96MHz

512KB

64KB

Seeed Tiny BLE

Nordic nRF51

NRF51822

16MHz

256KB

16KB

Seeed Wio 3G

ST STM32

STM32F439VI

180MHz

2MB

256KB

Switch Science mbed HRM1017

Nordic nRF51

NRF51822

16MHz

256KB

16KB

Switch Science mbed LPC1114FN28

NXP LPC

LPC1114FN28

48MHz

32KB

4KB

Switch Science mbed LPC824

NXP LPC

LPC824

30MHz

32KB

8KB

Switch Science mbed TY51822r3

Nordic nRF51

NRF51822

32MHz

256KB

32KB

Thunderboard Sense 2 Sensor-to-Cloud Advanced IoT

Silicon Labs EFM32

EFR32MG12P432F1024

40MHz

1MB

256KB

VNG VBLUNO51

Nordic nRF51

NRF51822

16MHz

128KB

32KB

WIZwiki-W7500

WIZNet W7500

WIZNET7500

48MHz

128KB

48KB

WIZwiki-W7500ECO

WIZNet W7500

WIZNET7500ECO

48MHz

128KB

48KB

WIZwiki-W7500P

WIZNet W7500

WIZNET7500P

48MHz

128KB

48KB

sakura.io Evaluation Board

ST STM32

STM32F411RET6

100MHz

1MB

128KB

u-blox C027

NXP LPC

LPC1768

96MHz

512KB

64KB

u-blox C030-R410M IoT

ST STM32

STM32F437VG

180MHz

1MB

256KB

u-blox EVK-NINA-B1

Nordic nRF52

NRF52832

64MHz

512KB

64KB

y5 nRF51822 mbug

Nordic nRF51

NRF51822

16MHz

256KB

16KB

External Debug Tools

Boards listed below are compatible with PIO Unified Debugger but DEPEND ON external debug probe. They ARE NOT READY for debugging. Please click on board name for the further details.

Name

Platform

MCU

Frequency

Flash

RAM

BluePill F103C8

ST STM32

STM32F103C8T6

72MHz

64KB

20KB

CQ Publishing TG-LPC11U35-501

NXP LPC

LPC11U35

48MHz

64KB

10KB

DipCortex M3

NXP LPC

LPC1347

72MHz

64KB

12KB

EA LPC11U35 QuickStart Board

NXP LPC

LPC11U35

48MHz

64KB

10KB

Espotel LoRa Module

ST STM32

STM32F411RET6

100MHz

512KB

128KB

Freescale Kinetis FRDM-KL82Z

Freescale Kinetis

MKL82Z128VLK7

96MHz

128KB

96KB

Freescale Kinetis FRDM-KW24D512

Freescale Kinetis

MKW24D512

50MHz

512KB

64KB

Hexiwear

Freescale Kinetis

MK64FN1M0VDC12

120MHz

1MB

256KB

MAX32620FTHR

Maxim 32

MAX32620FTHR

96MHz

2MB

256KB

MTS Dragonfly

ST STM32

STM32F411RET6

100MHz

512KB

128KB

Maxim Health Sensor Platform

Maxim 32

MAX32620

96MHz

2MB

256KB

Maxim Wireless Sensor Node Demonstrator

Maxim 32

MAX32610

24MHz

256KB

32KB

MultiTech mDot

ST STM32

STM32F411RET6

100MHz

512KB

128KB

MultiTech mDot F411

ST STM32

STM32F411RET6

100MHz

512KB

128KB

MultiTech xDot

ST STM32

STM32L151CCU6

32MHz

256KB

32KB

NAMote72

ST STM32

STM32L152RC

32MHz

256KB

32KB

NGX Technologies BlueBoard-LPC11U24

NXP LPC

LPC11U24

48MHz

32KB

8KB

NXP LPC11C24

NXP LPC

LPC11C24

48MHz

32KB

8KB

NXP LPC11U34

NXP LPC

LPC11U34

48MHz

40KB

8KB

NXP LPC11U37

NXP LPC

LPC11U37

48MHz

128KB

10KB

NXP LPCXpresso1549

NXP LPC

LPC1549

72MHz

256KB

36KB

SDT52832B

Nordic nRF52

NRF52832

64MHz

512KB

64KB

STM32F103C8 (20k RAM. 64k Flash)

ST STM32

STM32F103C8T6

72MHz

64KB

20KB

STM32F103RB (20k RAM. 128k Flash)

ST STM32

STM32F103RBT6

72MHz

128KB

20KB

Solder Splash Labs DipCortex M0

NXP LPC

LPC11U24

50MHz

32KB

8KB

Teensy 3.1 / 3.2

Teensy

MK20DX256

72MHz

256KB

64KB

u-blox C030-N211 IoT Starter Kit

ST STM32

STM32F437VG

180MHz

1MB

256KB

u-blox C030-U201 IoT Starter Kit

ST STM32

STM32F437VG

180MHz

1MB

256KB

u-blox EVK-ODIN-W2

ST STM32

STM32F439ZIY6

168MHz

2MB

256KB

u-blox ODIN-W2

ST STM32

STM32F439ZIY6

168MHz

2MB

256KB

y5 LPC11U35 mbug

NXP LPC

LPC11U35

48MHz

64KB

10KB

Examples

Platforms

Name

Description

Atmel SAM

Atmel | SMART offers Flash- based ARM products based on the ARM Cortex-M0+, Cortex-M3 and Cortex-M4 architectures, ranging from 8KB to 2MB of Flash including a rich peripheral and feature mix.

Freescale Kinetis

Freescale Kinetis Microcontrollers is family of multiple hardware- and software-compatible ARM Cortex-M0+, Cortex-M4 and Cortex-M7-based MCU series. Kinetis MCUs offer exceptional low-power performance, scalability and feature integration.

Maxim 32

Maxim’s microcontrollers provide low-power, efficient, and secure solutions for challenging embedded applications. Maxim’s processors embed cutting-edge technologies to secure data and intellectual property, proven analog circuitry for real-world applications, and battery-conserving low power operation.

Nordic nRF51

The Nordic nRF51 Series is a family of highly flexible, multi-protocol, system-on-chip (SoC) devices for ultra-low power wireless applications. nRF51 Series devices support a range of protocol stacks including Bluetooth Smart (previously called Bluetooth low energy), ANT and proprietary 2.4GHz protocols such as Gazell.

Nordic nRF52

The nRF52 Series are built for speed to carry out increasingly complex tasks in the shortest possible time and return to sleep, conserving precious battery power. They have a Cortex-M4F processor and are the most capable Bluetooth Smart SoCs on the market.

NXP LPC

The NXP LPC is a family of 32-bit microcontroller integrated circuits by NXP Semiconductors. The LPC chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals.

RISC-V GAP

GreenWaves GAP8 IoT application processor enables the cost-effective development, deployment and autonomous operation of intelligent sensing devices that capture, analyze, classify and act on the fusion of rich data sources such as images, sounds or vibrations.

Silicon Labs EFM32

Silicon Labs EFM32 Gecko 32-bit microcontroller (MCU) family includes devices that offer flash memory configurations up to 256 kB, 32 kB of RAM and CPU speeds up to 48 MHz. Based on the powerful ARM Cortex-M core, the Gecko family features innovative low energy techniques, short wake-up time from energy saving modes and a wide selection of peripherals, making it ideal for battery operated applications and other systems requiring high performance and low-energy consumption.

ST STM32

The STM32 family of 32-bit Flash MCUs based on the ARM Cortex-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32-bit product range that combines very high performance, real-time capabilities, digital signal processing, and low-power, low-voltage operation, while maintaining full integration and ease of development.

Teensy

Teensy is a complete USB-based microcontroller development system, in a very small footprint, capable of implementing many types of projects. All programming is done via the USB port. No special programmer is needed, only a standard USB cable and a PC or Macintosh with a USB port.

WIZNet W7500

The IOP (Internet Offload Processor) W7500 is the one-chip solution which integrates an ARM Cortex-M0, 128KB Flash and hardwired TCP/IP core for various embedded application platform especially requiring Internet of things

Boards

Note

96Boards

Name

Platform

Debug

MCU

Frequency

Flash

RAM

96Boards B96B-F446VE

ST STM32

On-board

STM32F446VET6

168MHz

512KB

128KB

AppNearMe

Name

Platform

Debug

MCU

Frequency

Flash

RAM

MicroNFCBoard

NXP LPC

No

LPC11U34

48MHz

48KB

10KB

Atmel

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Atmel ATSAMR21-XPRO

Atmel SAM

On-board

SAMR21G18A

48MHz

256KB

32KB

Atmel ATSAMW25-XPRO

Atmel SAM

On-board

SAMD21G18A

48MHz

256KB

32KB

Atmel SAMD21-XPRO

Atmel SAM

On-board

SAMD21J18A

48MHz

256KB

32KB

Atmel SAML21-XPRO-B

Atmel SAM

On-board

SAML21J18B

48MHz

256KB

32KB

Avnet Silica

Name

Platform

Debug

MCU

Frequency

Flash

RAM

ST Sensor Node

ST STM32

On-board

STM32L476JG

80MHz

1MB

128KB

BBC

Name

Platform

Debug

MCU

Frequency

Flash

RAM

BBC micro:bit

Nordic nRF51

On-board

NRF51822

16MHz

256KB

16KB

CQ Publishing

Name

Platform

Debug

MCU

Frequency

Flash

RAM

CQ Publishing TG-LPC11U35-501

NXP LPC

External

LPC11U35

48MHz

64KB

10KB

Delta

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Delta DFBM-NQ620

Nordic nRF52

On-board

NRF52832

64MHz

512KB

64KB

Delta DFCM-NNN40

Nordic nRF51

On-board

NRF51822

32MHz

256KB

32KB

Delta DFCM-NNN50

Nordic nRF51

On-board

NRF51822

32MHz

256KB

16KB

Elektor Labs

Name

Platform

Debug

MCU

Frequency

Flash

RAM

CoCo-ri-Co!

NXP LPC

On-board

LPC812

30MHz

16KB

4KB

Embedded Artists

Name

Platform

Debug

MCU

Frequency

Flash

RAM

EA LPC11U35 QuickStart Board

NXP LPC

External

LPC11U35

48MHz

64KB

10KB

Embedded Artists LPC4088 Display Module

NXP LPC

On-board

LPC4088

120MHz

512KB

96KB

Embedded Artists LPC4088 QuickStart Board

NXP LPC

On-board

LPC4088

120MHz

512KB

96KB

Espotel

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Espotel LoRa Module

ST STM32

External

STM32F411RET6

100MHz

512KB

128KB

Freescale

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Ethernet IoT Starter Kit

Freescale Kinetis

On-board

MK64FN1M0VLL12

120MHz

1MB

256KB

Freescale Kinetis FRDM-K20D50M

Freescale Kinetis

On-board

MK20DX128VLH5

48MHz

128KB

16KB

Freescale Kinetis FRDM-K22F

Freescale Kinetis

On-board

MK22FN512VLH12

120MHz

512KB

128KB

Freescale Kinetis FRDM-K64F

Freescale Kinetis

On-board

MK64FN1M0VLL12

120MHz

1MB

256KB

Freescale Kinetis FRDM-K66F

Freescale Kinetis

On-board

MK66FN2M0VMD18

180MHz

2MB

256KB

Freescale Kinetis FRDM-K82F

Freescale Kinetis

On-board

MK82FN256VLL15

150MHz

256KB

256KB

Freescale Kinetis FRDM-KL05Z

Freescale Kinetis

On-board

MKL05Z32VFM4

48MHz

32KB

4KB

Freescale Kinetis FRDM-KL25Z

Freescale Kinetis

On-board

MKL25Z128VLK4

48MHz

128KB

16KB

Freescale Kinetis FRDM-KL27Z

Freescale Kinetis

On-board

MKL27Z64VLH4

48MHz

64KB

16KB

Freescale Kinetis FRDM-KL43Z

Freescale Kinetis

On-board

MKL43Z256VLH4

48MHz

256KB

32KB

Freescale Kinetis FRDM-KL46Z

Freescale Kinetis

On-board

MKL46Z256VLL4

48MHz

256KB

32KB

Freescale Kinetis FRDM-KL82Z

Freescale Kinetis

External

MKL82Z128VLK7

96MHz

128KB

96KB

Freescale Kinetis FRDM-KW24D512

Freescale Kinetis

External

MKW24D512

50MHz

512KB

64KB

Freescale Kinetis FRDM-KW41Z

Freescale Kinetis

On-board

MKW41Z512VHT4

48MHz

512KB

128KB

GHI Electronics

Name

Platform

Debug

MCU

Frequency

Flash

RAM

mBuino

NXP LPC

No

LPC11U24

50MHz

32KB

10KB

Generic

Name

Platform

Debug

MCU

Frequency

Flash

RAM

BluePill F103C8

ST STM32

External

STM32F103C8T6

72MHz

64KB

20KB

STM32F103C8 (20k RAM. 64k Flash)

ST STM32

External

STM32F103C8T6

72MHz

64KB

20KB

STM32F103RB (20k RAM. 128k Flash)

ST STM32

External

STM32F103RBT6

72MHz

128KB

20KB

GreenWaves Technologies

Name

Platform

Debug

MCU

Frequency

Flash

RAM

GAPuino GAP8

RISC-V GAP

On-board

GAP8

250MHz

64MB

8MB

JKSoft

Name

Platform

Debug

MCU

Frequency

Flash

RAM

JKSoft Wallbot BLE

Nordic nRF51

On-board

NRF51822

16MHz

128KB

16KB

Maxim

Name

Platform

Debug

MCU

Frequency

Flash

RAM

MAX32620FTHR

Maxim 32

External

MAX32620FTHR

96MHz

2MB

256KB

MAX32625MBED

Maxim 32

No

MAX32625

96MHz

512KB

160KB

MAX32625NEXPAQ

Maxim 32

No

MAX32625

96MHz

512KB

160KB

MAX32625PICO

Maxim 32

No

MAX32625

96MHz

512KB

160KB

Maxim ARM mbed Enabled Development Platform for MAX32600

Maxim 32

On-board

MAX32600

24MHz

256KB

32KB

Maxim Health Sensor Platform

Maxim 32

External

MAX32620

96MHz

2MB

256KB

Maxim MAX32630FTHR Application Platform

Maxim 32

No

MAX32630

96MHz

2MB

512KB

Maxim Wireless Sensor Node Demonstrator

Maxim 32

External

MAX32610

24MHz

256KB

32KB

Micromint

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Bambino-210E

NXP LPC

On-board

LPC4330

204MHz

8MB

264KB

MikroElektronika

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Hexiwear

Freescale Kinetis

External

MK64FN1M0VDC12

120MHz

1MB

256KB

MultiTech

Name

Platform

Debug

MCU

Frequency

Flash

RAM

MTS Dragonfly

ST STM32

External

STM32F411RET6

100MHz

512KB

128KB

MultiTech mDot

ST STM32

External

STM32F411RET6

100MHz

512KB

128KB

MultiTech mDot F411

ST STM32

External

STM32F411RET6

100MHz

512KB

128KB

MultiTech xDot

ST STM32

External

STM32L151CCU6

32MHz

256KB

32KB

NGX Technologies

Name

Platform

Debug

MCU

Frequency

Flash

RAM

NGX Technologies BlueBoard-LPC11U24

NXP LPC

External

LPC11U24

48MHz

32KB

8KB

NXP

Name

Platform

Debug

MCU

Frequency

Flash

RAM

ARM mbed LPC11U24 (+CAN)

NXP LPC

On-board

LPC11U24

48MHz

32KB

8KB

LPCXpresso11U68

NXP LPC

On-board

LPC11U68

50MHz

256KB

36KB

LPCXpresso824-MAX

NXP LPC

On-board

LPC824

30MHz

32KB

8KB

NXP LPC11C24

NXP LPC

External

LPC11C24

48MHz

32KB

8KB

NXP LPC11U34

NXP LPC

External

LPC11U34

48MHz

40KB

8KB

NXP LPC11U37

NXP LPC

External

LPC11U37

48MHz

128KB

10KB

NXP LPC800-MAX

NXP LPC

On-board

LPC812

30MHz

16KB

4KB

NXP LPCXpresso1549

NXP LPC

External

LPC1549

72MHz

256KB

36KB

NXP LPCXpresso54114

NXP LPC

On-board

LPC54114J256BD64

100MHz

256KB

192KB

NXP LPCXpresso54608

NXP LPC

On-board

LPC54608ET512

180MHz

512KB

200KB

NXP mbed LPC11U24

NXP LPC

On-board

LPC11U24

48MHz

32KB

8KB

NXP mbed LPC1768

NXP LPC

On-board

LPC1768

96MHz

512KB

64KB

Nordic

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Nordic nRF51 Dongle (PCA10031)

Nordic nRF51

On-board

NRF51822

32MHz

256KB

32KB

Nordic nRF51822-mKIT

Nordic nRF51

On-board

NRF51822

16MHz

128KB

16KB

Nordic nRF51X22 Development Kit(PCA1000X)

Nordic nRF51

On-board

NRF51822

32MHz

256KB

32KB

Nordic nRF52-DK

Nordic nRF52

On-board

NRF52832

64MHz

512KB

64KB

Nordic nRF52840-DK

Nordic nRF52

On-board

NRF52840

64MHz

1MB

256KB

Outrageous Circuits

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Outrageous Circuits mBuino

NXP LPC

No

LPC11U24

48MHz

32KB

8KB

RedBearLab

Name

Platform

Debug

MCU

Frequency

Flash

RAM

RedBearLab BLE Nano 1.5

Nordic nRF51

On-board

NRF51822

16MHz

256KB

32KB

RedBearLab BLE Nano 2

Nordic nRF52

On-board

NRF52832

64MHz

512KB

64KB

RedBearLab nRF51822

Nordic nRF51

On-board

NRF51822

16MHz

256KB

16KB

RushUp

Name

Platform

Debug

MCU

Frequency

Flash

RAM

RushUp Cloud-JAM

ST STM32

On-board

STM32F401RET6

84MHz

512KB

96KB

RushUp Cloud-JAM L4

ST STM32

On-board

STM32L476RGT6

80MHz

1MB

128KB

ST

Name

Platform

Debug

MCU

Frequency

Flash

RAM

ST 32F3348DISCOVERY

ST STM32

On-board

STM32F334C8T6

72MHz

64KB

12KB

ST 32F401CDISCOVERY

ST STM32

On-board

STM32F401VCT6

84MHz

256KB

64KB

ST 32F413HDISCOVERY

ST STM32

On-board

STM32F413ZHT6

100MHz

512KB

128KB

ST 32F429IDISCOVERY

ST STM32

On-board

STM32F429ZIT6

180MHz

2MB

256KB

ST 32F469IDISCOVERY

ST STM32

On-board

STM32F469NIH6

180MHz

1MB

384KB

ST 32F746GDISCOVERY

ST STM32

On-board

STM32F746NGH6

216MHz

1MB

320KB

ST 32F769IDISCOVERY

ST STM32

On-board

STM32F769NIH6

216MHz

1MB

512KB

ST 32L0538DISCOVERY

ST STM32

On-board

STM32L053C8T6

32MHz

64KB

8KB

ST 32L476GDISCOVERY

ST STM32

On-board

STM32L476VGT6

80MHz

1MB

128KB

ST 32L496GDISCOVERY

ST STM32

On-board

STM32L496AGI6

80MHz

1MB

320KB

ST DISCO-L072CZ-LRWAN1

ST STM32

On-board

STM32L072CZ

32MHz

192KB

20KB

ST DISCO-L475VG-IOT01A

ST STM32

On-board

STM32L475VGT6

80MHz

1MB

128KB

ST Discovery F072RB

ST STM32

On-board

STM32F072RBT6

48MHz

128KB

16KB

ST Nucleo F030R8

ST STM32

On-board

STM32F030R8T6

48MHz

64KB

8KB

ST Nucleo F031K6

ST STM32

On-board

STM32F031K6T6

48MHz

32KB

4KB

ST Nucleo F042K6

ST STM32

On-board

STM32F042K6T6

48MHz

32KB

6KB

ST Nucleo F070RB

ST STM32

On-board

STM32F070RBT6

48MHz

128KB

16KB

ST Nucleo F072RB

ST STM32

On-board

STM32F072RBT6

48MHz

128KB

16KB

ST Nucleo F091RC

ST STM32

On-board

STM32F091RCT6

48MHz

256KB

32KB

ST Nucleo F103RB

ST STM32

On-board

STM32F103RBT6

72MHz

128KB

20KB

ST Nucleo F207ZG

ST STM32

On-board

STM32F207ZGT6

120MHz

1MB

128KB

ST Nucleo F302R8

ST STM32

On-board

STM32F302R8T6

72MHz

64KB

16KB

ST Nucleo F303K8

ST STM32

On-board

STM32F303K8T6

72MHz

64KB

12KB

ST Nucleo F303RE

ST STM32

On-board

STM32F303RET6

72MHz

512KB

64KB

ST Nucleo F303ZE

ST STM32

On-board

STM32F303ZET6

72MHz

512KB

64KB

ST Nucleo F334R8

ST STM32

On-board

STM32F334R8T6

72MHz

64KB

16KB

ST Nucleo F401RE

ST STM32

On-board

STM32F401RET6

84MHz

512KB

96KB

ST Nucleo F410RB

ST STM32

On-board

STM32F410RBT6

100MHz

128KB

32KB

ST Nucleo F411RE

ST STM32

On-board

STM32F411RET6

100MHz

512KB

128KB

ST Nucleo F412ZG

ST STM32

On-board

STM32F412ZGT6

100MHz

1MB

256KB

ST Nucleo F413ZH

ST STM32

On-board

STM32F413ZHT6

100MHz

512KB

128KB

ST Nucleo F429ZI

ST STM32

On-board

STM32F429ZIT6

180MHz

2MB

256KB

ST Nucleo F439ZI

ST STM32

On-board

STM32F439ZIT6

180MHz

2MB

256KB

ST Nucleo F446RE

ST STM32

On-board

STM32F446RET6

180MHz

512KB

128KB

ST Nucleo F446ZE

ST STM32

On-board

STM32F446ZET6

180MHz

512KB

128KB

ST Nucleo F746ZG

ST STM32

On-board

STM32F746ZGT6

216MHz

1MB

320KB

ST Nucleo F756ZG

ST STM32

On-board

STM32F756ZG

216MHz

1MB

320KB

ST Nucleo F767ZI

ST STM32

On-board

STM32F767ZIT6

216MHz

2MB

512KB

ST Nucleo H743ZI

ST STM32

On-board

STM32H743ZIT6

400MHz

2MB

512KB

ST Nucleo L031K6

ST STM32

On-board

STM32L031K6T6

32MHz

32KB

8KB

ST Nucleo L053R8

ST STM32

On-board

STM32L053R8T6

32MHz

64KB

8KB

ST Nucleo L073RZ

ST STM32

On-board

STM32L073RZ

32MHz

192KB

20KB

ST Nucleo L152RE

ST STM32

On-board

STM32L152RET6

32MHz

512KB

80KB

ST Nucleo L432KC

ST STM32

On-board

STM32L432KCU6

80MHz

256KB

64KB

ST Nucleo L433RC-P

ST STM32

On-board

STM32L433RC

80MHz

256KB

64KB

ST Nucleo L476RG

ST STM32

On-board

STM32L476RGT6

80MHz

1MB

128KB

ST Nucleo L486RG

ST STM32

On-board

STM32L486RGT6

80MHz

1MB

128KB

ST Nucleo L496ZG

ST STM32

On-board

STM32L496ZGT6

80MHz

1MB

128KB

ST Nucleo L496ZG-P

ST STM32

On-board

STM32L496ZGT6P

80MHz

1MB

320KB

ST Nucleo L4R5ZI

ST STM32

On-board

STM32L4R5ZIT6

120MHz

2MB

640KB

ST STM32F0308DISCOVERY

ST STM32

On-board

STM32F030R8T6

48MHz

64KB

8KB

ST STM32F0DISCOVERY

ST STM32

On-board

STM32F051R8T6

48MHz

64KB

8KB

ST STM32F3DISCOVERY

ST STM32

On-board

STM32F303VCT6

72MHz

256KB

48KB

ST STM32F4DISCOVERY

ST STM32

On-board

STM32F407VGT6

168MHz

1MB

128KB

ST STM32VLDISCOVERY

ST STM32

On-board

STM32F100RBT6

24MHz

128KB

8KB

SeeedStudio

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Seeed Arch BLE

Nordic nRF51

On-board

NRF51822

16MHz

128KB

16KB

Seeed Arch GPRS V2

NXP LPC

No

LPC11U37

48MHz

128KB

10KB

Seeed Arch Link

Nordic nRF51

On-board

NRF51822

16MHz

256KB

16KB

Seeed Arch Max

ST STM32

On-board

STM32F407VET6

168MHz

512KB

192KB

Seeed Arch Pro

NXP LPC

On-board

LPC1768

96MHz

512KB

64KB

Seeed Tiny BLE

Nordic nRF51

On-board

NRF51822

16MHz

256KB

16KB

Seeed Wio 3G

ST STM32

On-board

STM32F439VI

180MHz

2MB

256KB

Seeed Xadow M0

NXP LPC

No

LPC11U35

48MHz

64KB

10KB

Semtech

Name

Platform

Debug

MCU

Frequency

Flash

RAM

NAMote72

ST STM32

External

STM32L152RC

32MHz

256KB

32KB

Sigma Delta Technologies

Name

Platform

Debug

MCU

Frequency

Flash

RAM

SDT32620B

Maxim 32

No

MAX32620IWG

96MHz

2MB

256KB

SDT32625B

Maxim 32

No

MAX32625ITK

96MHz

512KB

160KB

SDT52832B

Nordic nRF52

External

NRF52832

64MHz

512KB

64KB

Silicon Labs

Name

Platform

Debug

MCU

Frequency

Flash

RAM

EFM32GG-STK3700 Giant Gecko

Silicon Labs EFM32

On-board

EFM32GG990F1024

48MHz

1MB

128KB

EFM32LG-STK3600 Leopard Gecko

Silicon Labs EFM32

On-board

EFM32LG990F256

48MHz

256KB

32KB

EFM32WG-STK3800 Wonder Gecko

Silicon Labs EFM32

On-board

EFM32WG990F256

48MHz

256KB

32KB

EFM32ZG-STK3200 Zero Gecko

Silicon Labs EFM32

On-board

EFM32ZG222F32

24MHz

32KB

4KB

SLSTK3400A USB-enabled Happy Gecko

Silicon Labs EFM32

On-board

EFM32HG322F64

25MHz

64KB

8KB

SLSTK3401A Pearl Gecko PG1

Silicon Labs EFM32

On-board

EFM32PG1B200F256GM48

40MHz

256KB

32KB

Thunderboard Sense 2 Sensor-to-Cloud Advanced IoT

Silicon Labs EFM32

On-board

EFR32MG12P432F1024

40MHz

1MB

256KB

Solder Splash Labs

Name

Platform

Debug

MCU

Frequency

Flash

RAM

DipCortex M3

NXP LPC

External

LPC1347

72MHz

64KB

12KB

Solder Splash Labs DipCortex M0

NXP LPC

External

LPC11U24

50MHz

32KB

8KB

Switch Science

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Switch Science mbed HRM1017

Nordic nRF51

On-board

NRF51822

16MHz

256KB

16KB

Switch Science mbed LPC1114FN28

NXP LPC

On-board

LPC1114FN28

48MHz

32KB

4KB

Switch Science mbed LPC824

NXP LPC

On-board

LPC824

30MHz

32KB

8KB

Switch Science mbed TY51822r3

Nordic nRF51

On-board

NRF51822

32MHz

256KB

32KB

Teensy

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Teensy 3.1 / 3.2

Teensy

External

MK20DX256

72MHz

256KB

64KB

VNG

Name

Platform

Debug

MCU

Frequency

Flash

RAM

VNG VBLUNO51

Nordic nRF51

On-board

NRF51822

16MHz

128KB

32KB

WIZNet

Name

Platform

Debug

MCU

Frequency

Flash

RAM

WIZwiki-W7500

WIZNet W7500

On-board

WIZNET7500

48MHz

128KB

48KB

WIZwiki-W7500ECO

WIZNet W7500

On-board

WIZNET7500ECO

48MHz

128KB

48KB

WIZwiki-W7500P

WIZNet W7500

On-board

WIZNET7500P

48MHz

128KB

48KB

rhomb.io

Name

Platform

Debug

MCU

Frequency

Flash

RAM

L476DMW1K

ST STM32

On-board

STM32L476VGT6

80MHz

1MB

128KB

sakura.io

Name

Platform

Debug

MCU

Frequency

Flash

RAM

sakura.io Evaluation Board

ST STM32

On-board

STM32F411RET6

100MHz

1MB

128KB

u-blox

Name

Platform

Debug

MCU

Frequency

Flash

RAM

Mbed Connect Cloud

ST STM32

On-board

STM32F439ZIY6

168MHz

2MB

256KB

u-blox C027

NXP LPC

On-board

LPC1768

96MHz

512KB

64KB

u-blox C030-N211 IoT Starter Kit

ST STM32

External

STM32F437VG

180MHz

1MB

256KB

u-blox C030-R410M IoT

ST STM32

On-board

STM32F437VG

180MHz

1MB

256KB

u-blox C030-U201 IoT Starter Kit

ST STM32

External

STM32F437VG

180MHz

1MB

256KB

u-blox EVK-NINA-B1

Nordic nRF52

On-board

NRF52832

64MHz

512KB

64KB

u-blox EVK-ODIN-W2

ST STM32

External

STM32F439ZIY6

168MHz

2MB

256KB

u-blox ODIN-W2

ST STM32

External

STM32F439ZIY6

168MHz

2MB

256KB

y5 design

Name

Platform

Debug

MCU

Frequency

Flash

RAM

y5 LPC11U35 mbug

NXP LPC

External

LPC11U35

48MHz

64KB

10KB

y5 nRF51822 mbug

Nordic nRF51

On-board

NRF51822

16MHz

256KB

16KB