Melissa LeBlanc-Williams · Adafruit Learning System

So you have a new board, that you want to get working with Blinka, Adafruit's CircuitPython library compatibility layer for Single Board Computers, or SBCs. Adding a board to Blinka is a 2-part process with the first step being to add it to PlatformDetect so that Blinka knows what board it is working with.

In the PlatformDetect guide, the steps needed to get your chip and board correctly detected was addressed so that Blinka knew what it was working with. This guide goes over the second part to get your board functioning on Blinka.

This guide goes over everything that's left to get your board working with Blinka including:

  • Adding the Chip and Board files
  • Getting GPIO working
  • Getting I2C, SPI, and UART working

Along with some additional resources.

The way that Blinka works is it combines multiple techniques to access the parts of the board that it needs. It also depends on the type of board. With MicroPython, the native libraries are translated. For Linux GPIO, libraries such as RPi.GPIO or libgpiod are used. For I2C, the PureIO Python library is used, and for SPI, the spidev Python library is used.

When it comes to Blinka itself, there are two main components that need to be defined.

  • First there is the chip, the microprocessor definition.
  • Second, there is the board definition.

The chip defines which pins of the microprocessor are used by the GPIO library and the board definition defines which physical pin on the board maps to the pins defined by the chip file. There can be multiple boards that all use the same chip, but the specific implementation may be slightly different.

The overall layout of the way these files are accessed looks like this:

This guide picks up where the PlatformDetect guide left off and goes over what steps are needed to add a board, such as the Pine A64 as an example, to Blinka.

Parts

USB to TTL Serial Cable With Type A plug and 4 wire sockets

The cable is easiest way ever to connect to your microcontroller/Raspberry Pi/WiFi router serial console port. Inside the...

$9.95 each

In Stock

A coiled, black, FTDI cable with a USB-C connector.

Just about all electronics use a UART serial port with RX and TX pins for debugging, bootloading, programming, serial...

$19.95 each

In Stock

Single large LED lit up blue

Need some big indicators? We are big fans of these huge diffused blue LEDs. They are really bright so they can be seen in...

No Longer Stocked

Angled shot of 10 12mm square tactile switch buttons.

Medium-sized clicky momentary switches are standard input "buttons" on electronic projects. These work best in a...

$2.50 each

In Stock

small, rectangle-shaped, BME280 temperature humidity pressure sensor breakout board.

Bosch has stepped up their game with their new BME280 sensor, an environmental sensor with temperature, barometric...

$14.95 each

In Stock

Angled shot of black, square-shaped thermocouple breakout board with a green 2-pin terminal block.

Thermocouples are very sensitive, requiring a good amplifier with a cold-compensation reference. The MAX31855K does...

$14.95 each

In Stock

Angled shot of a Thermocouple Type-K Glass Braid Insulated wire.

Thermocouples are best used for measuring temperatures that can go above 100 °C. This is a bare wires bead-probe which...

$9.95 each

In Stock

Angled shot of GPS module breakout.

We carry a few different GPS modules here in the Adafruit shop, but none that satisfied our every desire - that's why we...

$29.95 each

In Stock

Page last edited March 13, 2026

Text editor powered by tinymce.

Read the original on learn.adafruit.com ↗