# Leverless Controller

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/144/189/medium800/gaming_lvrls-1917.jpg?1779300361)

https://youtu.be/vJaKmj5k3Sw

So called "leverless" controllers are popular among fighting game enthusiasts for their speed and accuracy compared to traditional lever-style joysticks. You can build your own with the Adafruit QT Py RP2040 and GP2040-CE firmware.

Mini arcade buttons are mounted to a 3D printed case (or BYOB(ox)) to make for a playable, ergonomic design. And by wiring the buttons to the QT Py Terminal Block BFF using quick-connect cables, you can keep the build manageable and nearly solder-free -- the only soldering required is the QT Py header pins.

Since the GP2040-CE firmware can be configured from a web browser, this project is essentially code free -- just drag and drop the UF2 and you're ready to play.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/182/medium800/gaming_IMG_1912B_2k.jpg?1779235651)

## Parts
### Adafruit QT Py RP2040

[Adafruit QT Py RP2040](https://www.adafruit.com/product/4900)
What a cutie pie! Or is it... a QT Py?&nbsp;This diminutive dev board comes with one of our new favorite chip, the RP2040. It's been made famous in the new [Raspberry Pi Pico](https://www.adafruit.com/pico) _and_ our [Feather...](http://www.adafruit.com/product/4884)

Out of Stock
[Buy Now](https://www.adafruit.com/product/4900)
[Related Guides to the Product](https://learn.adafruit.com/products/4900/guides)
![Video of hand holding a QT Py PCB in their hand. An LED glows rainbow colors.](https://cdn-shop.adafruit.com/product-videos/640x480/4900-06.jpg)

### Adafruit Terminal Block BFF Add-On for QT Py and Xiao

[Adafruit Terminal Block BFF Add-On for QT Py and Xiao](https://www.adafruit.com/product/6495)
Our QT Py boards are a great way to make very small microcontroller projects that pack a ton of power - and now we have a way for you to make wiring up sensors and batteries&nbsp;to [QT Py boards](https://www.adafruit.com/category/595) even easier! The&nbsp; **Adafruit Terminal...**

In Stock
[Buy Now](https://www.adafruit.com/product/6495)
[Related Guides to the Product](https://learn.adafruit.com/products/6495/guides)
![angled shot of terminal block add-on board.](https://cdn-shop.adafruit.com/640x480/6495-00.jpg)

### Mini LED Arcade Button - 24mm Translucent Red

[Mini LED Arcade Button - 24mm Translucent Red](https://www.adafruit.com/product/3430)
A button is a button, and a switch is a switch, but these translucent arcade buttons are in a class of their own. Particularly because they have **LEDs built right in!** That's right, you'll be button-mashing amidst a wash of beautiful light with these lil'...

In Stock
[Buy Now](https://www.adafruit.com/product/3430)
[Related Guides to the Product](https://learn.adafruit.com/products/3430/guides)
![Video of 24mm mini translucent red LED arcade button flashing on and off.](https://cdn-shop.adafruit.com/product-videos/640x480/3430-03.jpg)

### Snap-action 5-Wire Block Connector (12-24 AWG) - Pack of 3

[Snap-action 5-Wire Block Connector (12-24 AWG) - Pack of 3](https://www.adafruit.com/product/874)
These are like the fancy electronics equivalent of the wire nuts electricians use to bind wires together. They are a lot easier to use as well! Each block connector has a metal block inside and five levers that snap open and close to bind stranded/solid-core wire. No screwdrivers required!...

In Stock
[Buy Now](https://www.adafruit.com/product/874)
[Related Guides to the Product](https://learn.adafruit.com/products/874/guides)
![Snap-action 4-Wire Block Connector with four wires installed](https://cdn-shop.adafruit.com/640x480/874-03.jpg)

### Part: Arcade Button Quick-Connect Wire Pairs - 0.11"
quantity: 2
10 pack
[Arcade Button Quick-Connect Wire Pairs - 0.11"](https://www.adafruit.com/product/1152)

### Snap-action 3-Wire Block Connector (12-24 AWG) - Pack of 3

[Snap-action 3-Wire Block Connector (12-24 AWG) - Pack of 3](https://www.adafruit.com/product/866)
These are like the fancy electronics equivalent of the wire nuts electricians use to bind wires together. They are a lot easier to use as well! Each block connector has a metal block inside and three levers that snap open and close to bind stranded/solid-core wire. No screwdrivers required!...

Out of Stock
[Buy Now](https://www.adafruit.com/product/866)
[Related Guides to the Product](https://learn.adafruit.com/products/866/guides)
![Snap-action 3-Wire Block Connector with two wires installed](https://cdn-shop.adafruit.com/640x480/866-08.jpg)

### Part: Black Nylon Machine Screw and Stand-off Set
quantity: 1
M2.5 Thread
[Black Nylon Machine Screw and Stand-off Set](https://www.adafruit.com/product/3299)

### Blue USB Type C to USB A Cable with 540 Degree Rotating End

[Blue USB Type C to USB A Cable with 540 Degree Rotating End](https://www.adafruit.com/product/6279)
Some days we're feeling extra fancy here at the 'fruit warehouse, and we have a big soft spot for colorful&nbsp;cables that make our projects look like Transformers. Like, peep [this fully reversible pink/purple Blinka-inspired cable](https://www.adafruit.com/product/4111)....

In Stock
[Buy Now](https://www.adafruit.com/product/6279)
[Related Guides to the Product](https://learn.adafruit.com/products/6279/guides)
![Angled shot of blue, coiled, USB-A-to-USB-C swivel head cable.](https://cdn-shop.adafruit.com/640x480/6279-07.jpg)

# Leverless Controller

## 3D Print the Case

![](https://cdn-learn.adafruit.com/assets/assets/000/144/190/medium800/gaming_lvrls-2018.jpg?1779300390)

3MF files for 3D printing are oriented and ready to print on FDM machines using PLA filament. Original design source files may be downloaded using the links below.

[Leverless STEP file zip](https://cdn-learn.adafruit.com/assets/assets/000/144/168/original/leverless.step.zip?1779166808)
[leverless STL files zip](https://cdn-learn.adafruit.com/assets/assets/000/144/169/original/leverless_stls.zip?1779166902)
[Leverless 3MF](https://cdn-learn.adafruit.com/assets/assets/000/144/170/original/leverless.3mf?1779166929)
### Slice with settings for PLA material

The parts were sliced using BambuStudio using the slice settings below.

- PLA filament 220c extruder
- 0.2 layer height
- 15% grid infill
- 200mm/s print speed

![](https://cdn-learn.adafruit.com/assets/assets/000/144/171/medium640/gaming_lprint.jpg?1779167037)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/191/medium800/gaming_lvrls-2020.jpg?1779300405)

# Leverless Controller

## Circuit Diagram

![](https://cdn-learn.adafruit.com/assets/assets/000/144/172/medium800/gaming_leverless_fritz5.jpg?1779167313)

The wiring is straightforward since you'll be using one GPIO pin on the QT Py per button. The diagram above shows the wires connected to the QT Py for clarity, but you'll be using the Terminal Block BFF for the real thing.

# Leverless Controller

## Software

## Install Firmware and Customize Settings

[GP2040-CE](https://gp2040-ce.info/#/installation)&nbsp;is an open source gamepad firmware that's compatible with RetroPie, Mac/PC/Linux, PlayStation 3/4/5, Nintendo Switch/Switch 2, Xbox 360/One/Series, mini consoles, and others. It runs on a number of microcontrollers which use Raspberry Pi RP2040/RP2305 chips, such as The QT Py, Pico,&nbsp;[KB2040 Kee Boar](https://www.adafruit.com/product/5302), and more.

First you'll flash the QT Py RP2040 with the drag-and-drop .uf2 file and then customize settings within a web editor.

## Download Firmware

There isn't an official build for the QT Py RP2040 yes, but you can use [this pre-release version](https://github.com/jedgarpark/GP2040-CE/releases) by clicking the **GP2040-CE\_0.7.12\_AdafruitQTPyRP2040.uf2&nbsp;** file.

This will save a file named&nbsp; **GP2040-CE\_0.7.12\_AdafruitQTPyRP2040.uf2** to your download location.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/173/medium640/gaming_build.jpg?1779167661)

## Firmware Installation

[This page](https://gp2040-ce.info/installation)&nbsp;gives detailed instructions on installation, but the basic steps are:

- Plug the QT Py RP2040 into your computer with a known good data and power USB cable
- While holding the&nbsp;`BOOTSEL`&nbsp;button down, press and release the&nbsp;`RESET`&nbsp;button this puts the board into&nbsp; **BOOTSEL** /USB drive mode
- A new removable drive named&nbsp;`RPI-RP2`&nbsp;will appear on your computer
- Drag-and-drop the **GP2040-CE\_0.7.12\_AdafruitQTPyRP2040.uf2** &nbsp;(or later) firmware&nbsp; **.uf2&nbsp;** file onto the&nbsp;`RPI-RP2`&nbsp;drive and wait for it to copy the file and reboot itself

![](https://cdn-learn.adafruit.com/assets/assets/000/144/174/medium640/gaming_gp2040logo.png?1779167887)

## Pin Mapping

The default pin mapping in GP2040-CE for the QT Py RP2040 is shown here.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/175/medium640/gaming_qtpy-rp2040-pins.jpg?1779167962)

## Button Test

This is a great time to test the controller to make sure basic button presses are working.

Plug the QT Py RP2040 into your computer with a known good USB-C data and power&nbsp;[cable](https://www.adafruit.com/product/3879). Head to this&nbsp;[gamepad tester](https://hardwaretester.com/gamepad)&nbsp;in your browser to see the button presses.

You can now use a jumper wire to short any mapped GPIO pin to ground -- those button presses will register on the controller tester.&nbsp;

![](https://cdn-learn.adafruit.com/assets/assets/000/144/176/medium640/gaming_tester.jpg?1779168131)

# Leverless Controller

## Build the Controller

![](https://cdn-learn.adafruit.com/assets/assets/000/144/230/medium800/gaming_lvrls-1924.jpg?1779302289)

## Solder the QT Py Headers

Solder the male header pins on to the QT Py RP2040 as shown here.

You can optionally use [short headers](https://www.adafruit.com/product/3002) for a slightly lower profile, but the default pins included with the QT Py work just fine.

See the guide [How To Solder Headers](https://learn.adafruit.com/how-to-solder-headers) for how-to and tips.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/192/medium640/gaming_lvrls-2013.jpg?1779300441)

## Mount the Terminal Block BFF to the Case

Mount the Terminal Block BFF with the larger battery JST connector facing up as shown. Screw the M2.5 x 10mm screws in from the top into standoffs or nuts on the inside of the case.

Use a small slotted screwdriver to open all of the terminal positions by unscrewing them counter clockwise in prep for wiring later.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/193/medium640/gaming_lvrls-2009.jpg?1779300508)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/195/medium640/gaming_lvrls-2011.jpg?1779300557)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/196/medium640/gaming_lvrls-2007.jpg?1779300586)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/197/medium640/gaming_lvrls-2005.jpg?1779300596)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/198/medium640/gaming_lvrls-2004.jpg?1779300691)

## Add QT Py

Press the QT Py into the terminal block BFF with the USB port facing up as shown.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/200/medium640/gaming_lvrls-2001.jpg?1779300731)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/201/medium640/gaming_lvrls-1998.jpg?1779300749)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/202/medium800/gaming_lvrls-1995.jpg?1779300764)

## Arcade Buttons

Insert an arcade button into to the case from the top and then screw on the retaining nut.

Repeat this for the remaining buttons.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/203/medium640/gaming_lvrls-1993.jpg?1779301411)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/204/medium640/gaming_lvrls-1992.jpg?1779301422)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/205/medium640/gaming_lvrls-1988.jpg?1779301448)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/206/medium640/gaming_lvrls-1983.jpg?1779301462)

## Cable Prep

Prepare the cables by first cutting off the white plastic JST connectors (be sure to keep the terminal connector ends intact), thereby separating each pair into two individual cables.

Then, strip about 4mm of insulation from the bare end of each cable.

Twist the wire strands so they don't fray and potentially short against neighboring pins when inserted into the terminal block later.

Repeat these steps for all remaining wires for a total of 22 (that's two wires per button).

![](https://cdn-learn.adafruit.com/assets/assets/000/144/207/medium640/gaming_lvrls-1975.jpg?1779301507)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/231/medium800/gaming_leverless_fritz5.jpg?1779302362)

## Connect Button GPIO

Following the diagram carefully, wire one terminal of each button to it's associated pin on the QT Py via the Terminal Block BFF.

First, press the cable's crimp connector onto one of the button's two switch terminals (these are the two at the top of the switch, not the one's at the bottom with the arrows and +/- signs, those are for the LEDs, which we won't be using).

Then, run that wire through the case and to the terminal block pin for that button. Screw the terminal screw down tight.

Repeat for remaining 10 buttons.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/208/medium640/gaming_lvrls-1977.jpg?1779301579)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/209/medium640/gaming_lvrls-1976.jpg?1779301595)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/210/medium640/gaming_lvrls-1979.jpg?1779301613)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/211/medium640/gaming_lvrls-1982.jpg?1779301633)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/212/medium640/gaming_lvrls-1981.jpg?1779301641)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/213/medium640/gaming_lvrls-1980.jpg?1779301649)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/216/medium800/gaming_lvrls-1956.jpg?1779301810)

## Ground Run

Cut a 20cm length of 22AWG stranded wire ([this spool set](https://www.adafruit.com/product/3111) is handy to have around), then strip about 4mm of insulation from each end.

Feed this wire through the case and into the GND position on the QT Py/BFF. Screw it in place.

Then, inside the case, connect the other end of this wire to any position on the 3-wire block connector.

Chain together all of the block connectors using 6cm lengths of stranded wire with 4mm of insulation stripped from each end.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/217/medium640/gaming_lvrls-1952.jpg?1779301874)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/218/medium640/gaming_lvrls-1948.jpg?1779301908)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/219/medium640/gaming_lvrls-1944.jpg?1779301936)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/220/medium640/gaming_lvrls-1943.jpg?1779302026)

## Cover Lots of Ground Fast

Now you can press the remaining 11 crimp connector cables onto the second switch position of each arcade button (again, avoiding the lower two LED legs).

For each button's ground wire, connect the free end to any open position on a block connector.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/221/medium640/gaming_lvrls-1954.jpg?1779302032)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/222/medium640/gaming_lvrls-1942.jpg?1779302045)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/223/medium640/gaming_lvrls-1940.jpg?1779302057)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/224/medium640/gaming_lvrls-1935.jpg?1779302068)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/229/medium800/gaming_lvrls-1934.jpg?1779302255)

## Case Closed

Press fit the bottom onto the case as shown.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/225/medium640/gaming_lvrls-1933.jpg?1779302195)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/226/medium640/gaming_lvrls-1930.jpg?1779302221)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/227/medium640/gaming_lvrls-1932.jpg?1779302231)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/228/medium640/gaming_lvrls-1929.jpg?1779302242)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/232/medium800/gaming_lvrls-1922.jpg?1779302389)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/233/medium800/gaming_lvrls-1921.jpg?1779302407)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/235/medium800/gaming_lvrls-1920.jpg?1779302438)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/234/medium800/gaming_lvrls-1919.jpg?1779302417)

# Leverless Controller

## Configure and Use the Controller

## Web Configurator

Press and hold the START (S2) button (the one wired to QT Py RP2040 pin&nbsp;**SCK (GP06)** ) and then press and release the&nbsp; **RESET** &nbsp;button. This puts the QT Py into configuration mode. After a moment, you can release the START button.

This causes the QT Py's GP2040-CE firmware to launch a web server you can access from your computer's web browser by visiting [http://192.168.7.1](http://192.168.7.1/)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/243/medium800/gaming_cfg1.jpg?1779308505)

## GPIO Pin Mapping

Click Configuration \> GPIO Pin Mapping to make any changes to the button configuration.

If you do make changes, press Save to commit them on the QT Py's flash memory.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/244/medium640/gaming_cfg2.jpg?1779308598)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/245/medium640/gaming_cfg3.jpg?1779308690)

## Hotkeys

Click Settings \> Hotkey Settings. Here you'll see the default `Fn + S2 = S1` Button that I included in the QT Py RP2040 configuration. This is what allows the **BOOT** button (on QT Py) modifier + the **Start** button to act as the **Select** button.

If you want you can add as many other hotkey combos as you like. For example, here I've added `Fn + Up = Home Button` in order to press the Home/PS/Xbox button.

&nbsp;

Remember to hit Save when done.

![](https://cdn-learn.adafruit.com/assets/assets/000/144/246/medium640/gaming_hotkeys.jpg?1779308790)

![](https://cdn-learn.adafruit.com/assets/assets/000/144/248/medium640/gaming_home.jpg?1779309086)

## Input Modes

You can use the leverless controller on a variety of consoles and systems. By default it will present itself as an **XInput controller / Xbox 360** controller.

Click Settings \> Boot Input Modes to see the assigned input modes that you can pick during startup. Simply hold down the assigned button while plugging in -- e.g., hold B1 while plugging in to **Nintendo**  **Switch** , B2 for **Xinput** , B3 for **PlayStation 3** , or B4 for **PlayStation 4**.&nbsp;

![](https://cdn-learn.adafruit.com/assets/assets/000/144/249/medium640/gaming_inputmodes.jpg?1779309256)

## Reboot

When you're done changing settings, press the Reboot button in the upper right corner. You'll see a popup that lets you choose the mode into which you reboot: USB BOOTSEL, Web-config (the same mode you're already in) or Controller so you can play!

![](https://cdn-learn.adafruit.com/assets/assets/000/144/250/medium640/gaming_reboot.jpg?1779309635)

## Fight!

Now, plug your leverless controller into your computer or console and serve up a whooping!

Remember, if you need to use the Select button press **Fn** (BOOT on the QT PY) + **START**.

https://youtu.be/vJaKmj5k3Sw


## Featured Products

### Adafruit QT Py RP2040

[Adafruit QT Py RP2040](https://www.adafruit.com/product/4900)
What a cutie pie! Or is it... a QT Py?&nbsp;This diminutive dev board comes with one of our new favorite chip, the RP2040. It's been made famous in the new [Raspberry Pi Pico](https://www.adafruit.com/pico) _and_ our [Feather...](http://www.adafruit.com/product/4884)

Out of Stock
[Buy Now](https://www.adafruit.com/product/4900)
[Related Guides to the Product](https://learn.adafruit.com/products/4900/guides)
### Adafruit Terminal Block BFF Add-On for QT Py and Xiao

[Adafruit Terminal Block BFF Add-On for QT Py and Xiao](https://www.adafruit.com/product/6495)
Our QT Py boards are a great way to make very small microcontroller projects that pack a ton of power - and now we have a way for you to make wiring up sensors and batteries&nbsp;to [QT Py boards](https://www.adafruit.com/category/595) even easier! The&nbsp; **Adafruit Terminal...**

In Stock
[Buy Now](https://www.adafruit.com/product/6495)
[Related Guides to the Product](https://learn.adafruit.com/products/6495/guides)
### Mini LED Arcade Button - 24mm Translucent Red

[Mini LED Arcade Button - 24mm Translucent Red](https://www.adafruit.com/product/3430)
A button is a button, and a switch is a switch, but these translucent arcade buttons are in a class of their own. Particularly because they have **LEDs built right in!** That's right, you'll be button-mashing amidst a wash of beautiful light with these lil'...

In Stock
[Buy Now](https://www.adafruit.com/product/3430)
[Related Guides to the Product](https://learn.adafruit.com/products/3430/guides)
### Arcade Button Quick-Connect Wire Pairs - 0.11" (10 pack)

[Arcade Button Quick-Connect Wire Pairs - 0.11" (10 pack)](https://www.adafruit.com/product/1152)
Quick connector wire sets will make wiring up our arcade-style or metal buttons quicky-quick. Each wire comes as a 'pair' with two 0.11" quick-connects pre-crimped onto 20cm long wires. The wires are then terminated together in a JST 2.5mm/0.1" spaced 2-pin connector (we...

In Stock
[Buy Now](https://www.adafruit.com/product/1152)
[Related Guides to the Product](https://learn.adafruit.com/products/1152/guides)
### Black Nylon Machine Screw and Stand-off Set – M2.5 Thread

[Black Nylon Machine Screw and Stand-off Set – M2.5 Thread](https://www.adafruit.com/product/3299)
Totaling 380 pieces, this **M2.5 Screw Set** &nbsp;is a must-have for your workstation.&nbsp;You'll have enough screws, nuts, and hex standoffs to fuel your maker tendencies&nbsp;for days on end! M2.5 size screws fit almost all of the Adafruit breakout/dev board mounting holes...

In Stock
[Buy Now](https://www.adafruit.com/product/3299)
[Related Guides to the Product](https://learn.adafruit.com/products/3299/guides)
### Snap-action 5-Wire Block Connector (12-24 AWG) - Pack of 3

[Snap-action 5-Wire Block Connector (12-24 AWG) - Pack of 3](https://www.adafruit.com/product/874)
These are like the fancy electronics equivalent of the wire nuts electricians use to bind wires together. They are a lot easier to use as well! Each block connector has a metal block inside and five levers that snap open and close to bind stranded/solid-core wire. No screwdrivers required!...

In Stock
[Buy Now](https://www.adafruit.com/product/874)
[Related Guides to the Product](https://learn.adafruit.com/products/874/guides)
### Snap-action 3-Wire Block Connector (12-24 AWG) - Pack of 3

[Snap-action 3-Wire Block Connector (12-24 AWG) - Pack of 3](https://www.adafruit.com/product/866)
These are like the fancy electronics equivalent of the wire nuts electricians use to bind wires together. They are a lot easier to use as well! Each block connector has a metal block inside and three levers that snap open and close to bind stranded/solid-core wire. No screwdrivers required!...

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

## Related Guides

- [Adafruit QT Py RP2040](https://learn.adafruit.com/adafruit-qt-py-2040.md)
- [Adafruit Terminal Block BFF](https://learn.adafruit.com/adafruit-terminal-block-bff.md)
- [DIY Pico Mechanical Keyboard with Fritzing and CircuitPython](https://learn.adafruit.com/diy-pico-mechanical-keyboard-with-fritzing-circuitpython.md)
- [Mini LED Matrix Audio Visualizer](https://learn.adafruit.com/mini-led-matrix-audio-visualizer.md)
- [Pi SSD Media Server](https://learn.adafruit.com/pi-ssd-media-server.md)
- [Raspberry Pi Halloween Costume Detector](https://learn.adafruit.com/raspberry-pi-halloween-costume-detector.md)
- [AS5600 Super Smooth Rotary Encoder](https://learn.adafruit.com/as5600-smooth-rotary-encoder.md)
- [Mystery Box: Crypto Countdown Case](https://learn.adafruit.com/mystery-box-crypto-countdown-case.md)
- [Raspberry Pi Zero Stand](https://learn.adafruit.com/raspberry-pi-zero-stand.md)
- [3D Printed Frame for Adafruit IS31FL3741 LED Glasses](https://learn.adafruit.com/3d-printed-frame-for-led-glasses-is31fl3741.md)
- [NeoPixel Novelty Cufflinks with Scrolling Text](https://learn.adafruit.com/neopixel-novelty-cufflinks-with-scrolling-text.md)
- [Tandy 1000 Keyboard to USB with CircuitPython](https://learn.adafruit.com/tandy-1000-keyboard-to-usb-with-circuitpython.md)
- [Holiday Tree with Feather RP2040 Scorpio](https://learn.adafruit.com/holiday-tree-with-scorpio.md)
- [CircuitPython OctoPrint Controller and Monitor](https://learn.adafruit.com/circuitpython-octoprint-controller-and-monitor.md)
- [MIDI for Makers](https://learn.adafruit.com/midi-for-makers.md)
- [NFC Raspberry Pi Media Player](https://learn.adafruit.com/nfc-raspberry-pi-media-player.md)
- [CircuitPython OLED Watch Clock](https://learn.adafruit.com/circuitpython-oled-watch.md)
