# CircuitPython Libraries on MicroPython using the Raspberry Pi Pico

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/102/285/medium800/raspberry_pi_Main_Image_2.jpg?1621522910)

Blinka is our CircuitPython compatibility layer. It was originally written as a compatibility layer to run on top of MicroPython to work on boards such as the PyBoard and allow libraries written for CircuitPython to work. This allowed more library re-use and fewer libraries that needed to be maintained.

Blinka was soon adapted to work on Linux-based Single Board Computers to allow those same libraries to work on boards such as the Linux-based Raspberry Pi computers (not to be confused with the Raspberry Pi Pico microcontrollers). It gained a lot of popularity there was expanded to run on many more boards. It wasn't used much on MicroPython at that point and there weren't many guides that showed how to run Blinka over MicroPython.

When we recently tried to run Blinka over MicroPython, there were a few things that needed to be fixed up to get it working. While we were at it, we decided to add support for the Raspberry Pi Pico when running MicroPython.

There's already another way to run Blinka on the Raspberry Pi Pico using the U2IF firmware, but the difference is that Blinka is running on the host computer and the Raspberry Pi Pico is acting as a passthrough. If you're interested in running it that way, be sure to check out our [CircuitPython Libraries on any Computer with Raspberry Pi Pico](https://learn.adafruit.com/circuitpython-libraries-on-any-computer-with-raspberry-pi-pico) guide.

Additionally, you can always run CircuitPython natively on Raspberry Pi Pico. However, if you would like to run Blinka on a Raspberry Pi Pico or any other supported board running MicroPython, then this is the guide for you.

## Parts
Featured
### Raspberry Pi Pico RP2040

[Raspberry Pi Pico RP2040](https://www.adafruit.com/product/4864)
The Raspberry Pi foundation changed single-board computing [when they released the Raspberry Pi computer](https://www.raspberrypi.org/archives/723), now they're ready to do the same for microcontrollers with the release of the brand new **Raspberry Pi Pico**. This...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4864)
[Related Guides to the Product](https://learn.adafruit.com/products/4864/guides)
![Angle shot of Raspberry Pi Pico RP2040](https://cdn-shop.adafruit.com/640x480/4864-00.jpg)

Featured
### Raspberry Pi Pico RP2040 with Loose Unsoldered Headers

[Raspberry Pi Pico RP2040 with Loose Unsoldered Headers](https://www.adafruit.com/product/4883)
The Raspberry Pi foundation changed single-board computing&nbsp;[when they released the Raspberry Pi computer](https://www.raspberrypi.org/archives/723), now they're ready to do the same for microcontrollers with the release of the brand new&nbsp; **Raspberry Pi...**

Out of Stock
[Buy Now](https://www.adafruit.com/product/4883)
[Related Guides to the Product](https://learn.adafruit.com/products/4883/guides)
![Top view of Raspberry Pi Pico with two 20-pin male headers.](https://cdn-shop.adafruit.com/640x480/4883-06.jpg)

Featured
### Adafruit BME280 I2C or SPI Temperature Humidity Pressure Sensor

[Adafruit BME280 I2C or SPI Temperature Humidity Pressure Sensor](https://www.adafruit.com/product/2652)
Bosch has stepped up their game with their new BME280 sensor, an environmental sensor with temperature, barometric pressure&nbsp;and&nbsp;humidity! This sensor is great for all sorts of indoor environmental sensing and can even be used in both I2C and SPI!

This precision sensor from...

In Stock
[Buy Now](https://www.adafruit.com/product/2652)
[Related Guides to the Product](https://learn.adafruit.com/products/2652/guides)
![small, rectangle-shaped, BME280 temperature humidity pressure sensor breakout board.](https://cdn-shop.adafruit.com/640x480/2652-04.jpg)

Featured
### STEMMA QT / Qwiic JST SH 4-pin to Premium Male Headers Cable

[STEMMA QT / Qwiic JST SH 4-pin to Premium Male Headers Cable](https://www.adafruit.com/product/4209)
This 4-wire cable is a little over 150mm / 6" long and fitted with JST-SH female 4-pin connectors on one end and premium Dupont male headers on the other. Compared with the chunkier JST-PH these are 1mm pitch instead of 2mm, but still have a nice latching feel, while being easy to insert...

In Stock
[Buy Now](https://www.adafruit.com/product/4209)
[Related Guides to the Product](https://learn.adafruit.com/products/4209/guides)
![Angled Shot of the STEMMA QT / Qwiic JST SH 4-pin to Premium Male Headers Cable.](https://cdn-shop.adafruit.com/640x480/4209-05.jpg)

# CircuitPython Libraries on MicroPython using the Raspberry Pi Pico

## Running CircuitPython Code without CircuitPython

There are two parts to the CircuitPython ecosystem:

- **CircuitPython firmware** , written in C and built to run on various microcontroller boards (not PCs). The firmware includes the CircuitPython interpreter, which reads and executes CircuitPython programs, and chip-specific code that controls the hardware peripherals on the microcontroller, including things like USB, I2C, SPI, GPIO pins, and all the rest of the hardware features the chip provides.
- **CircuitPython libraries,** written in Python to use the native (built into the firmware) modules provided by CircuitPython to control the microcontroller peripherals and interact with various breakout boards.

But suppose you'd like to use CircuitPython **libraries** on a board or computer that does not have a native CircuitPython **firmware** build. For example, on a PC running Windows or macOS. Can that be done? The answer is yes, via a separate piece of software called **Blinka**. Details about Blinka follow, however it is important to realize that the **CircuitPython firmware is never used**.

Info: 

# Adafruit Blinka: a CircuitPython Compatibility Library

Enter **Adafruit**  **Blinka**. Blinka is a software library that emulates the parts of CircuitPython that control hardware. Blinka provides non-CircuitPython implementations for `board`, `busio`, `digitalio`, and other native CircuitPython modules. You can then write Python code that looks like CircuitPython and uses CircuitPython libraries, without having CircuitPython underneath.

There are multiple ways to use Blinka:&nbsp;

- Linux based Single Board Computers, for example a Raspberry Pi
- Desktop Computers + specialized USB adapters
- Boards running MicroPython

More details on these options follow.

## Raspberry Pi and Other Single-Board Linux Computers

On a Raspberry Pi or other single-board Linux computer, you can use Blinka with the regular version of Python supplied with the Linux distribution. Blinka can control the hardware pins these boards provide.

## Desktop Computers&nbsp;

On Windows, macOS, or Linux desktop or laptop ("host") computers, you can use special USB adapter boards that that provide hardware pins you can control. These boards include [MCP221A](https://learn.adafruit.com/circuitpython-libraries-on-any-computer-with-mcp2221)&nbsp;and [FT232H](https://learn.adafruit.com/adafruit-ft232h-breakout) breakout boards, and [Raspberry Pi Pico boards running the **u2if** software](https://learn.adafruit.com/circuitpython-libraries-on-any-computer-with-raspberry-pi-pico). These boards connect via regular USB to your host computer, and let you do GPIO, I2C, SPI, and other hardware operations.

## MicroPython

You can also use Blinka with MicroPython, on [MicroPython-supported boards](https://learn.adafruit.com/circuitpython-libraries-on-micropython-using-the-raspberry-pi-pico). Blinka will allow you to import and use CircuitPython libraries in your MicroPython program, so you don't have to rewrite libraries into native MicroPython code. Fun fact - this is actually the original use case for Blinka.

# Installing Blinka

Installing Blinka on your particular platform is covered elsewhere in this guide. The process is different for each platform. Follow the guide section specific to your platform and make sure Blinka is properly installed before attempting to install any libraries.

Info: 

# Installing CircuitPython Libraries

Once Blinka is installed the next step is to install the CircuitPython libraries of interest. How this is down is different for each platform. Here are the details.

## Linux Single-Board Computers

On Linux single-board computers, such as Raspberry Pi, you'll use the Python `pip3`&nbsp;program (sometimes named just `pip`) to install a library. The library will be downloaded from [pypi.org](https://pypi.org) automatically by `pip3`.

How to install a particular library using `pip3` is covered in the guide page for that library. For example, [here is the `pip3` installation information](https://learn.adafruit.com/adafruit-lis3dh-triple-axis-accelerometer-breakout/python-circuitpython#python-installation-of-lis3dh-library-2997958) for the library for the LIS3DH accelerometer.

The library name you give to `pip3` is usually of the form `adafruit-circuitpython-libraryname`. This is not the name you use with `import`. For example, the LIS3DH sensor library is known by several names:

- The GitHub library repository is [Adafruit\_CircuitPython\_LIS3DH](https://github.com/adafruit/Adafruit_CircuitPython_LIS3DH).
- When you import the library, you write `import adafruit_lis3dh`.
- The name you use with `pip3` is `adafruit-circuitpython-lis3dh`. This the name used on [pypi.org](https://pypi.org).

Libraries often depend on other libraries. When you install a library with `pip3`, it will automatically install other needed libraries.

## Desktop Computers using a USB Adapter

When you use a desktop computer with a USB adapter, like the MCP2221A, FT232H, or u2if firmware on an RP2040, you will also use pip3. However, **do _not_ install the library with `sudo pip3`** , as mentioned in some guides. Instead, just install with `pip3`.&nbsp;

## MicroPython

For MicroPython, you will not use `pip3`. Instead you can get the library from the CircuitPython bundles. See [this guide page](https://learn.adafruit.com/welcome-to-circuitpython/circuitpython-libraries) for more information about the bundles, and also see the [Libraries page on circuitPython.org](https://circuitpython.org/libraries).

# CircuitPython Libraries on MicroPython using the Raspberry Pi Pico

## Thonny Setup

The first step is to get Thonny Setup on your system. If you already have Thonny installed, then great! You can continue onto configuring Thonny.

## Download and Install Thonny

Thonny runs on a variety of systems including Windows, MacOS, and Linux. It is the easiest way to copy files over to MicroPython. Head over to [https://thonny.org/](https://thonny.org/) and download the latest version of Thonny. Once that's downloaded, run the installer and go through the steps.

## Configuring Thonny

To use Thonny with the Raspberry Pi Pico, you will need to configure a few things. Go ahead and pen up the application if it isn't already running.

You'll first want to go to **Tools**  **→**  **Options**. Additionally, you can get here by selecting the current interpreter in the corner and choosing **Configure Interpreter...**

![raspberry_pi_Tools-Options.png](https://cdn-learn.adafruit.com/assets/assets/000/102/213/medium640/raspberry_pi_Tools-Options.png?1621355641)

![raspberry_pi_Corner_Selector.png](https://cdn-learn.adafruit.com/assets/assets/000/102/217/medium640/raspberry_pi_Corner_Selector.png?1621356925)

On the options screen, go to the **Interpreter** tab.

From the first dropdown, make sure **MicroPython (Raspberry Pi Pico)** is selected.

![raspberry_pi_Select_MicroPython.png](https://cdn-learn.adafruit.com/assets/assets/000/102/216/medium640/raspberry_pi_Select_MicroPython.png?1621356108)

# CircuitPython Libraries on MicroPython using the Raspberry Pi Pico

## MicroPython Installation

If you already have your board in Bootloader Mode and you have **MicroPython (Raspberry Pi Pico)** selected, it will automatically come up with the installation screen. If it does not, follow the steps below to install.

On the Interpreter Tab screen, there is an **Install or Update Firmware** link. Go ahead and click it.

![raspberry_pi_Install_Firmware_Link.png](https://cdn-learn.adafruit.com/assets/assets/000/102/235/medium640/raspberry_pi_Install_Firmware_Link.png?1621360022)

This will take you to a Firmware Install Screen.

![raspberry_pi_Firmware_-_Install_Screen.png](https://cdn-learn.adafruit.com/assets/assets/000/102/236/medium640/raspberry_pi_Firmware_-_Install_Screen.png?1621360115)

While holding the **BOOTSEL button** , plug in your Pico. It should show up under the Target device fields.

**If the board is new out of the package, you do not need to hold BOOTSEL while plugging it in.**

![raspberry_pi_Firmware_-_Board_Detected.png](https://cdn-learn.adafruit.com/assets/assets/000/102/237/medium640/raspberry_pi_Firmware_-_Board_Detected.png?1621360273)

Click the **Install** button to begin installation. It will take a few seconds for it to copy the firmware onto the board.

![raspberry_pi_Firmware_-_Click_Install.png](https://cdn-learn.adafruit.com/assets/assets/000/102/238/medium640/raspberry_pi_Firmware_-_Click_Install.png?1621360374)

![raspberry_pi_Firmware_-_Copying.png](https://cdn-learn.adafruit.com/assets/assets/000/102/239/medium640/raspberry_pi_Firmware_-_Copying.png?1621360422)

When it has finished copying, click **Close**.

![raspberry_pi_Firmware_Finished.png](https://cdn-learn.adafruit.com/assets/assets/000/102/240/medium640/raspberry_pi_Firmware_Finished.png?1621360446)

## Selecting the Port
You can try having it detect the port automatically.

![raspberry_pi_Auto_Port_Select.png](https://cdn-learn.adafruit.com/assets/assets/000/102/218/medium640/raspberry_pi_Auto_Port_Select.png?1621357034)

If it comes up with a message that it couldn't find the device, try hitting the Stop/Restart button at the top a few times.

You can always select your port manually. Select the your port from the Dropdown menu. These will vary from system to system.

![raspberry_pi_Unable_to_Automatically_Find_Device.png](https://cdn-learn.adafruit.com/assets/assets/000/102/220/medium640/raspberry_pi_Unable_to_Automatically_Find_Device.png?1621357146)

![raspberry_pi_Manual_Port_Selection.png](https://cdn-learn.adafruit.com/assets/assets/000/102/221/medium640/raspberry_pi_Manual_Port_Selection.png?1621357185)

If it comes up with an error that the device is busy, try clicking on the **Stop/Restart Button** at the top.

![raspberry_pi_Stop-Restart.png](https://cdn-learn.adafruit.com/assets/assets/000/102/223/medium640/raspberry_pi_Stop-Restart.png?1621357339)

Once it connects successfully, the Shell window should show MicroPython running on the Raspberry Pi Pico.

![raspberry_pi_Stop-Restart.png](https://cdn-learn.adafruit.com/assets/assets/000/102/224/medium640/raspberry_pi_Stop-Restart.png?1621357432)

# CircuitPython Libraries on MicroPython using the Raspberry Pi Pico

## Installing Blinka and Libraries

Installing Blinka and CircuitPython libraries is very easy using Thonny. It has a built-in file transfer feature that makes copying the files very easy.

## Using the File Transfer Interface
First you'll want to show the file transfer pane. You can get there by clicking View **→** Files.

![raspberry_pi_View_-_Files.png](https://cdn-learn.adafruit.com/assets/assets/000/102/241/medium640/raspberry_pi_View_-_Files.png?1621363278)

A files pane should appear on the left side of the main window. You can resize the elements to make it easier to see. Your local files should be at the top while the files on your Raspberry Pi Pico are on the bottom.

![raspberry_pi_Files_Pane.png](https://cdn-learn.adafruit.com/assets/assets/000/102/243/medium640/raspberry_pi_Files_Pane.png?1621370593)

To upload, right-click on a folder or file, choose **Upload to** &nbsp;and it will upload to the current folder you are in on the Pico.

![raspberry_pi_Upload_Folder.png](https://cdn-learn.adafruit.com/assets/assets/000/102/244/medium640/raspberry_pi_Upload_Folder.png?1621370786)

## Install Blinka and PlatformDetect

Blinka and PlatformDetect are both required to run Blinka on MicroPython. Neither of them are included in the bundle, so you will need to download them from GitHub. You can download the latest releases from GitHub by following these links:

[Download the latest Blinka from GitHub](https://github.com/adafruit/Adafruit_Blinka/releases)
[Download the latest PlatformDetect from GitHub](https://github.com/adafruit/Adafruit_Python_PlatformDetect/releases)
Click the **Source code (zip)** link to download.

![raspberry_pi_Download.png](https://cdn-learn.adafruit.com/assets/assets/000/102/245/medium640/raspberry_pi_Download.png?1621376965)

Once you have downloaded the release files, go ahead and unzip them using your favorite zip utility software and place the files in a safe location such as your desktop.

Info: 

To install the PlatformDetect, use Thonny's Files pane to navigate to the location where you unzipped the files and upload the **adafruit\_platformdetect** folder to the Pico.&nbsp;

![raspberry_pi_platformdetect.png](https://cdn-learn.adafruit.com/assets/assets/000/102/248/medium640/raspberry_pi_platformdetect.png?1621377472)

To install the Blinka, navigate to the location where you unzipped the Blinka files and upload everything **inside of the src** folder to the Pico.

The easiest way to do that is to go inside of the src folder, highlight everything, right-click, and choose **Upload to**.

![raspberry_pi_blinka_upload.png](https://cdn-learn.adafruit.com/assets/assets/000/102/249/medium640/raspberry_pi_blinka_upload.png?1621377780)

Primary: If you want to free up some more room, many of the linux board and microcontroller files and folders can be removed under the **adafruit\_blinka** folder. The only ones used by the Pico are the **adafruit\_blinka/microcontroller/generic\_micropython** folder, the **adafruit\_blinka/microcontroller/rp2040** folder, and **adafruit\_blinka/board/raspberrypi/pico.py**.

After you finish copying all of the files, this is what your Raspberry Pi Pico should look like.

![raspberry_pi_Blinka_Files.png](https://cdn-learn.adafruit.com/assets/assets/000/102/270/medium640/raspberry_pi_Blinka_Files.png?1621446618)

Warning: 

## Install CircuitPython Libraries

First start by downloading the latest CircuitPython library bundle from circuitpython.org.

[Download the latest CircuitPython library bundle](https://circuitpython.org/libraries)
Download the&nbsp; **adafruit-circuitpython-bundle-py-\*.zip** &nbsp;bundle zip file, and unzip a folder of the same name. Inside you'll find a&nbsp; **lib** &nbsp;folder. The entire collection of libraries is too large to fit on the Raspberry Pi Pico. Instead, add each library as you need it, this will reduce the space usage but you'll need to put in a little more effort.

Like you did with Blinka and PlatformDetect, use Thonny's File Transfer system to navigate to the bundle folder. Select any library files or folders you want to transfer, and select **Upload to**.

# CircuitPython Libraries on MicroPython using the Raspberry Pi Pico

## BME280 Library Example

For this example, we're going to use the Adafruit BME280 sensor, which uses I2C since there are so many sensors that use I2C.

Warning: 

## Wiring
- Connect the&nbsp; **red wire** &nbsp;from the STEMMA QT connector on the BME280 to **pin 36** or **3.3V out** on the Pico.
- Connect the&nbsp; **black wire** &nbsp;from the STEMMA QT connector on the BME280 to **pin 38** or **Gnd** on the Pico.
- Connect the&nbsp; **blue wire** or SDA&nbsp;from the STEMMA QT connector on the BME280 to **pin 1** or **GP0** on the Pico.
- Connect the&nbsp; **yellow wire** or SCL from the STEMMA QT connector on the BME280 to **pin 2** or **GP1** on the Pico.

![raspberry_pi_Pico_BME280_bb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/102/254/medium640/raspberry_pi_Pico_BME280_bb.jpg?1621439213)

## Example Code

Go ahead and click **Download Project Bundle** to download the examples and dependent libraries. Unzip the bundle and upload the libraries as described on the **Install Blinka and Libraries** page.

https://github.com/adafruit/Adafruit_CircuitPython_BME280/blob/main/examples/bme280_simpletest_pico.py?type=py

Here's what the files on your Raspberry Pi Pico should look like with the libraries added in.

![raspberry_pi_bme280_MP.png](https://cdn-learn.adafruit.com/assets/assets/000/102/699/medium640/raspberry_pi_bme280_MP.png?1623101594)

Press the **green play button** to run the script from the editor.

![raspberry_pi_bme280_play.png](https://cdn-learn.adafruit.com/assets/assets/000/102/701/medium640/raspberry_pi_bme280_play.png?1623101670)

You can also copy the code onto the pico using Thonny, save it onto the Raspberry Pi Pico as **main.py** in the **root folder** if you would like it to run each time. You will need to press Control+D to perform a soft restart if you save it to the Pico.

It will show you the temperature and humidity information in the Shell pane.

![raspberry_pi_Example_Running.png](https://cdn-learn.adafruit.com/assets/assets/000/102/256/medium640/raspberry_pi_Example_Running.png?1621441012)


## Guide Products

### Raspberry Pi Pico RP2040

[Raspberry Pi Pico RP2040](https://www.adafruit.com/product/4864)
The Raspberry Pi foundation changed single-board computing [when they released the Raspberry Pi computer](https://www.raspberrypi.org/archives/723), now they're ready to do the same for microcontrollers with the release of the brand new **Raspberry Pi Pico**. This...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4864)
[Related Guides to the Product](https://learn.adafruit.com/products/4864/guides)
### Raspberry Pi Pico RP2040 with Loose Unsoldered Headers

[Raspberry Pi Pico RP2040 with Loose Unsoldered Headers](https://www.adafruit.com/product/4883)
The Raspberry Pi foundation changed single-board computing&nbsp;[when they released the Raspberry Pi computer](https://www.raspberrypi.org/archives/723), now they're ready to do the same for microcontrollers with the release of the brand new&nbsp; **Raspberry Pi...**

Out of Stock
[Buy Now](https://www.adafruit.com/product/4883)
[Related Guides to the Product](https://learn.adafruit.com/products/4883/guides)
### Adafruit BME280 I2C or SPI Temperature Humidity Pressure Sensor

[Adafruit BME280 I2C or SPI Temperature Humidity Pressure Sensor](https://www.adafruit.com/product/2652)
Bosch has stepped up their game with their new BME280 sensor, an environmental sensor with temperature, barometric pressure&nbsp;and&nbsp;humidity! This sensor is great for all sorts of indoor environmental sensing and can even be used in both I2C and SPI!

This precision sensor from...

In Stock
[Buy Now](https://www.adafruit.com/product/2652)
[Related Guides to the Product](https://learn.adafruit.com/products/2652/guides)
### STEMMA QT / Qwiic JST SH 4-pin to Premium Male Headers Cable

[STEMMA QT / Qwiic JST SH 4-pin to Premium Male Headers Cable](https://www.adafruit.com/product/4209)
This 4-wire cable is a little over 150mm / 6" long and fitted with JST-SH female 4-pin connectors on one end and premium Dupont male headers on the other. Compared with the chunkier JST-PH these are 1mm pitch instead of 2mm, but still have a nice latching feel, while being easy to insert...

In Stock
[Buy Now](https://www.adafruit.com/product/4209)
[Related Guides to the Product](https://learn.adafruit.com/products/4209/guides)

## Related Guides

- [CircuitPython Libraries on any Computer with Raspberry Pi Pico](https://learn.adafruit.com/circuitpython-libraries-on-any-computer-with-raspberry-pi-pico.md)
- [Adding a Single Board Computer to Blinka](https://learn.adafruit.com/adding-a-single-board-computer-to-blinka.md)
- [Adafruit STEMMA & STEMMA QT](https://learn.adafruit.com/introducing-adafruit-stemma-qt.md)
- [CYBERDECK Bonnet and HAT for Raspberry Pi 400](https://learn.adafruit.com/cyberdeck-bonnet-and-hat.md)
- [NeoPIO: Drive lots of LEDs with Raspberry Pi Pico](https://learn.adafruit.com/neopio-drive-lots-of-leds-with-raspberry-pi-pico.md)
- [Program RP2040 in Arduino](https://learn.adafruit.com/rp2040-arduino-with-the-earlephilhower-core.md)
- [Step Switch Party](https://learn.adafruit.com/step-switch-party.md)
- [RGB LED Matrix Cube with 25,000 LEDs](https://learn.adafruit.com/rgb-led-matrix-cube-for-pi.md)
- [CircuitPython Libraries on Linux and Raspberry Pi](https://learn.adafruit.com/circuitpython-on-raspberrypi-linux.md)
- [Multi-Sensor IoT Environmental Sensor Box With CircuitPython](https://learn.adafruit.com/remote-iot-environmental-sensor.md)
- [An Introduction to RP2040 PIO with CircuitPython](https://learn.adafruit.com/intro-to-rp2040-pio-with-circuitpython.md)
- [Piper Make With the Raspberry Pi Pico](https://learn.adafruit.com/piper-make-with-the-raspberry-pi-pico.md)
- [NeoPixel Mini VU Meter](https://learn.adafruit.com/neopixel-mini-vu-meter.md)
- [No-Code Offline Data Logger with WipperSnapper](https://learn.adafruit.com/no-code-offline-data-logging-with-wippersnapper.md)
- [CircuitPython Libraries on Linux and Orange Pi](https://learn.adafruit.com/circuitpython-on-orangepi-linux.md)
