This board has a number of features that open up world of possibilities. This page is a tour of the board.

Power and Data

The USB Type C connector is used for both communicating with the microcontroller on the board, and for powering the board. Connect a USB Type C cable to install CircuitPython and edit code, or to load an Arduino sketch.

You can also power the board off of a USB battery pack. This board does not charge batteries.

The battery holder on the back takes 2 x AAA alkaline or NiMH batteries. The batteries will power the board while it's not plugged into USB to make your project portable.

The ON/OFF switch turns the board on and off. When it's to the left, the board is off, and when it's to the right, it's on. You can also use it to conserve battery power while powering the board from batteries.

If you plug your board into USB and nothing happens, make sure the switch is in the ON position!


The brains of the BLM badge is the ATSAMD21E18 32-bit Cortex M0+ microcontroller. It has a 48 MHz 32 bit processor with 256KB Flash and 32 KB RAM.


There are six side-lit addressable RGB NeoPixel LEDs around the outer edge of the board. They are accessible in CircuitPython as board.NEOPIXEL, and in Arduino as PIN_NEOPIXEL.

  • There is a green LED next to the USB connector that indicates when the board is powered up.
  • There is a red LED at the top-center of the board that is user controllable. It is accessible in CircuitPython as board.D13, and in Arduino as 13.

Cap Touch and Sensors

There are four capacitive touch sensors on the board that you can use as capacitive touch inputs. These pads react to human touch! They are labeled on the back as CT1, CT2, CT3 and CT4. They are accessible in CircuitPython as board.CAP1, board.CAP2, board.CAP3 and board.CAP4. They are accessible in Arduino as 1, 2, 3, and 4.

These pads are also alligator/croc-clip friendly for attaching other components or breakouts using alligator clips.

They can also be used as digital or analog pins.

There is an ambient light sensor in the middle labeled Light, which points through to the front, as seen in the second image. The light sensor is an analog input, connected to board.LIGHT (CircuitPython) or A4 (Arduino) you can read it as any analog value ranging from 0 (dark) to 65535 (CircuitPython) or 1023 (in Arduino) when bright.

There is a microphone audio sensor labeled Mic. A MEMS microphone can be used to detect audio levels and even perform basic FFT functions. Instead of an analog microphone, that requires an external op-amp and level management, we've decided to go with a PDM microphone. This is a digital mic, and is a lot smaller and less expensive! You will have to use the CircuitPython/Arduino support libraries to read the audio volume, you cannot read it like an analog voltage.

Reset Button

There is a reset button in the middle of the board towards the top. This button lets you restart the board, or enter the bootloader (which is required to install CircuitPython).

STEMMA QT Connector

There is a STEMMA QT connector which allows you to connect a growing number of STEMMA QT breakouts and accessories to add more capabilities to your BLM badge with no soldering needed!

In CircuitPython, you can use the STEMMA connector with board.SCL and board.SDA, or board.STEMMA_I2C().

Lanyard Hole

No badge would be complete without a lanyard hole. You can connect a lanyard or clip to this hole at the top of your board to wear it or attach it to a backpack, etc.

This guide was first published on Mar 24, 2021. It was last updated on Feb 28, 2024.

This page (Guided Tour) was last updated on Feb 24, 2021.

Text editor powered by tinymce.