# Adafruit I2C Quad Rotary Encoder Breakout

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/122/279/medium800thumb/adafruit_products_5752-06.jpg?1688566323)

Rotary encoders are soooo much fun! Twist 'em this way, then twist them that way. Unlike potentiometers, they go all the way around and often have little detents for tactile feedback. But, if you've ever tried to add encoders to your project you know that they're a real challenge to use: timers, interrupts, debouncing...

![](https://cdn-learn.adafruit.com/assets/assets/000/122/280/medium800/adafruit_products_5752-02.jpg?1688566358)

This Stemma QT breakout makes all that frustration go away - and allows you to read up to 4 encoders for big builds with lots of twisty interfaces. You can solder in any four 'standard' PEC11-pinout rotary encoders with or without a push-switch. The onboard microcontroller is programmed with our seesaw firmware and will track all pulses and pins for you and then save the incremental value for querying at any time over I2C. Plug it in with a Stemma QT cable for instant rotary goodness, with any kind of microcontroller from an Arduino UNO up to a Raspberry Pi.

[You can use our Arduino library to control and read data](https://github.com/adafruit/Adafruit_Seesaw) with any compatible microcontroller. [We also have CircuitPython/Python code](https://github.com/adafruit/Adafruit_CircuitPython_seesaw) for use with computers or single-board Linux boards.

![](https://cdn-learn.adafruit.com/assets/assets/000/122/281/medium800/adafruit_products_5752-04.jpg?1688566421)

It's also easy to add this breakout to a breadboard - with six 0.1"-spaced breakout pads. Power with 3 to 5V DC and then use 3 or 5V logic I2C data. The INT pin can be configured to pulse low whenever rotation or push-buttoning is detected so you do not have to spam-read the I2C port to detect motion.

![](https://cdn-learn.adafruit.com/assets/assets/000/122/282/medium800/adafruit_products_5752-03.jpg?1688566465)

If you happen to be using clear/translucent shaft encoders, there are reverse-mount NeoPixels on board, that can display any color you like, they are controlled over I2C for additional visual feedback or keep them off if you like. Note that for metal-shaft encoders, the LEDs are not visible. On the back, there's a green power LED as well as a red INT LED that, if the interrupt is configured, will blink when the interrupt fires.

Using the three onboard address jumpers, you can connect up to 8 of these encoders on a single I2C port. The first one will be at address 0x49, the last one at 0x50 when all three jumpers are cut open.

![](https://cdn-learn.adafruit.com/assets/assets/000/122/283/medium800/adafruit_products_5752-05.jpg?1688566498)

To get you going fast, we spun up a custom-made PCB with the seesaw chip and all supporting circuitry, in the[**STEMMA QT** form factor](https://www.adafruit.com/?q=stemma%20qt%20sensor "STEMMA QT form factor"), making them easy to interface with. The [STEMMA QT connectors](https://learn.adafruit.com/introducing-adafruit-stemma-qt/what-is-stemma-qt) on either side are compatible with the [SparkFun Qwiic](https://www.sparkfun.com/qwiic)&nbsp;I2C connectors. This allows you to make solderless connections between your development board and the rotary encoder or to chain them with a wide range of other sensors and accessories using a [**compatible cable**](https://www.adafruit.com/?q=stemma%20qt%20cable). [A QT Cable is not included, but we have a variety in the shop](https://www.adafruit.com/?q=stemma+qt+cable&sort=BestMatch).

![](https://cdn-learn.adafruit.com/assets/assets/000/122/284/medium800/adafruit_products_5752-01.jpg?1688566590)

 **This breakout does not come with any encoders soldered on** , so you can pick whatever encoder you like. [We sell a common 24-detent-with-switch encoder here and it works wonderfully.](https://www.adafruit.com/product/377) You can also use encoders without detents or with a different number of detents per rotation, of course! You'll need to solder the encoders and optional header onto the PCB to use with a solderless breadboard. but it's fairly easy and takes only a few minutes even for a beginner.

# Adafruit I2C Quad Rotary Encoder Breakout

## Pinouts

![](https://cdn-learn.adafruit.com/assets/assets/000/122/285/medium800/adafruit_products_dbl.jpg?1688566961)

The default I2C address is **0x49**.

## Power Pins

- **VIN** - This is the power pin. To power the board, give it the same power as the logic level of your microcontroller - e.g. for a 3V microcontroller like a Feather RP2040, use 3V, or for a 5V microcontroller like Arduino, use 5V.  
- **- (GND)** - This is common ground for power and logic.

## I2C Logic Pins

The default I2C address is **0x49**.

- **C** - I2C clock pin ( **SCL** ), connect to your microcontroller I2C clock line. There's a **10K pullup** on this pin.
- **D** - I2C data pin ( **SDA** ), connect to your microcontroller I2C data line. There's a **10K pullup** on this pin.
- [**STEMMA QT**](https://learn.adafruit.com/introducing-adafruit-stemma-qt) **-** These connectors allow you to connect to development boards with **STEMMA QT** / Qwiic connectors or to other things with [various associated accessories](https://www.adafruit.com/category/619).

## Address Jumpers

On the back of the board are **three address jumpers** , labeled **A0** , **A1** , and **A2** , above the breakout pads along the bottom of the board. These jumpers allow you to chain up to 8 of these boards on the same pair of I2C clock and data pins. To do so, you cut the jumpers "open" by separating the two pads.

If you happen to need more than 8, it's possible to set the I2C address with a special address-change command that is saved to the onboard non-volatile EEPROM memory.

The default I2C address is **0x49**. The other address options can be calculated by "adding" the **A0/A1/A2** to the base of **0x49**.

**A0** sets the lowest bit with a value of **1** , **A1** sets the next bit with a value of **2** and **A2** sets the next bit with a value of **4**. The final address is **0x49 + A2 + A1 + A0** which would be **0x50**.

 If only **A0** is cut, the address is **0x49 + 1 = 0x4A**

 If only **A1** is cut, the address is **0x49 + 2 = 0x4B**

 If only **A2** is cut, the address is **0x49 + 4 = 0x4D**

The table below shows all possible addresses, and whether the pin(s) should be **L** ow (left closed) or **H** igh (cut open).

![](https://cdn-learn.adafruit.com/assets/assets/000/122/287/medium800/adafruit_products_i2cTable.jpg?1688567686)

## Interrupt Pin and LED

- **INT** - This is the interrupt output pin. It can be configured to pulse low whenever rotation or push-buttoning is detected so you do not have to spam-read the I2C port to detect motion.
- **Interrupt LED** - On the back of the board to the left of the bottom row of breakout pins is the interrupt LED. It is the red LED and turns on whenever an interrupt is detected.

## UPDI Pin

The UPDI pin is not labeled on the board silk and is located next to the interrupt ( **INT** ) pin.

- **UPDI** - This is the single-pin **U** nified **P** rogram and **D** ebug **I** nterface. This pin is for external programming or on-chip-debugging for the ATtiny817 running the [seesaw firmware](https://github.com/adafruit/Adafruit_seesawPeripheral). We have a [page in the ATtiny Breakouts with seesaw Learn Guide](https://learn.adafruit.com/adafruit-attiny817-seesaw/advanced-reprogramming-with-updi) detailing how to reprogram these chips with your own firmware (at your own risk). We don't provide any support for custom builds of seesaw - we think this is cool and useful for the Maker community.

## Power LED

- **Power LED -** On the back of the board, below the STEMMA connector on the right, is the power LED, labeled **on**. It is the green LED.

## Rotary Encoder Pins

On the front of the board are outlines for four rotary encoders on the board silk. They are labeled **#0** to **#3**. This lets you know where you should place the rotary encoders for soldering. **This breakout does not come with any encoders soldered on.&nbsp;** [We sell a common 24-detent-with-switch encoder here and it works wonderfully.](https://www.adafruit.com/product/377)&nbsp;

### Rotary Encoder + Extras

[Rotary Encoder + Extras](https://www.adafruit.com/product/377)
This rotary encoder is the best of the best, it's a high-quality 24-pulse encoder, with detents and a nice feel. It is panel mountable for placement in a box, or you can plug it into a breadboard (just cut/bend the two mechanical side tabs.) We also include a nice soft-touch knob with an...

In Stock
[Buy Now](https://www.adafruit.com/product/377)
[Related Guides to the Product](https://learn.adafruit.com/products/377/guides)
![Rotary Encoder with rubbery knob](https://cdn-shop.adafruit.com/640x480/377-02.jpg)

![](https://cdn-learn.adafruit.com/assets/assets/000/122/288/medium800/adafruit_products_encPins.jpg?1688569815)

Each of the four encoder sections has pins for reading the encoder and a switch. The encoder pins are the three pins on the right side of the encoder outline. The encoder A pin is towards the bottom of the board and the encoder B pin is towards the top of the board. The center pin is ground.

The switch pins are the two pins on the left side of the encoder outline. The switch pin is towards the bottom of the board and the pin towards the top of the board is ground. The two larger oval pins are both connected to ground.

These are **the pin names in the seesaw firmware** for each rotary encoder:

- **Encoder #0**
  - Switch: pin **12**
  - Encoder A: pin **8**
  - Encoder B: pin **9**

- **Encoder #1**
  - Switch: pin **14**
  - Encoder A: pin **10**
  - Encoder B: pin **11**

- **Encoder #2**
  - Switch: pin **17**
  - Encoder A: pin **2**
  - Encoder B: pin **3**

- **Encoder #3**
  - Switch: pin **9**
  - Encoder A: pin **4**
  - Encoder B: pin **5**

# Adafruit I2C Quad Rotary Encoder Breakout

## CircuitPython & Python

It's easy to use the **I2C Quad Rotary Encoder breakout** with Python or CircuitPython, and the [Adafruit\_CircuitPython\_seesaw](https://github.com/adafruit/Adafruit_CircuitPython_seesaw) module. This module allows you to easily write Python code that reads each encoder position (relative to the starting position) and the four button presses on each encoder.

You can use this adapter with any CircuitPython microcontroller board or with a computer that has GPIO and Python [thanks to Adafruit\_Blinka, our CircuitPython-for-Python compatibility library](https://learn.adafruit.com/circuitpython-on-raspberrypi-linux).

## CircuitPython Microcontroller Wiring

First wire up an I2C adapter to your board exactly as follows. The following is the adapter wired to a Feather RP2040 using the STEMMA connector:

- **Board STEMMA 3V** to **breakout VIN (red wire)**
- **Board STEMMA GND** to **breakout**** &nbsp;GND (black wire)**
- **Board STEMMA SCL** to **breakout**** &nbsp;SCL (yellow wire)**
- **Board STEMMA SDA** to **breakout**** &nbsp;SDA (blue wire)**

![adafruit_products_featherStemma_bb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/122/298/medium640/adafruit_products_featherStemma_bb.jpg?1688578708)

The following is the adapter wired to a Feather RP2040 using a solderless breadboard:

- **Board 3V** to **breakout VIN (red wire)**
- **Board GND** to **breakout**** &nbsp;GND (black wire)**
- **Board SCL** to **breakout**** &nbsp;SCL (yellow wire)**
- **Board SDA** to **breakout**** &nbsp;SDA (blue wire)**

![adafruit_products_featherBB_bb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/122/299/medium640/adafruit_products_featherBB_bb.jpg?1688578749)

## Python Computer Wiring

Since there are _dozens_ of Linux computers/boards you can use, we will show wiring for Raspberry Pi. For other platforms, [please visit the guide for CircuitPython on Linux to see whether your platform is supported](https://learn.adafruit.com/circuitpython-on-raspberrypi-linux).

Here's the Raspberry Pi wired with I2C using the STEMMA connector:

- **Pi 3V** to **breakout**** &nbsp;VIN (red wire)**
- **Pi GND** to **breakout**** &nbsp;GND (black wire)**
- **Pi SCL** to **breakout**** &nbsp;SCL (yellow wire)**
- **Pi SDA** to **breakout**** &nbsp;SDA (blue wire)**

![adafruit_products_piStemma_bb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/122/300/medium640/adafruit_products_piStemma_bb.jpg?1688578769)

Here's the Raspberry Pi wired with I2C using a solderless breadboard:

- **Pi 3V** to **breakout**** &nbsp;VIN (red wire)**
- **Pi GND** to **breakout**** &nbsp;GND (black wire)**
- **Pi SCL** to **breakout**** &nbsp;SCL (yellow wire)**
- **Pi SDA** to **breakout**** &nbsp;SDA (blue wire)**

![adafruit_products_piBB_bb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/122/301/medium640/adafruit_products_piBB_bb.jpg?1688578784)

## Python Installation of seesaw Library

You'll need to install the **Adafruit\_Blinka** library that provides the CircuitPython support in Python. This may also require enabling I2C on your platform and verifying you are running Python 3. [Since each platform is a little different, and Linux changes often, please visit the CircuitPython on Linux guide to get your computer ready](https://learn.adafruit.com/circuitpython-on-raspberrypi-linux)!

Once that's done, from your command line run the following command:

- `pip3 install adafruit-circuitpython-seesaw`

If your default Python is version 3 you may need to run 'pip' instead. Just make sure you aren't trying to use CircuitPython on Python 2.x, it isn't supported!

## CircuitPython Usage

To use with CircuitPython, you need to first install the **Adafruit\_CircuitPython\_seesaw** library, and its dependencies, into the **lib** folder on your **CIRCUITPY** drive. Then you need to update **code.py** with the example script.

Thankfully, we can do this in one go. In the example below, click the **Download Project Bundle** button below to download the necessary libraries and the **code.py** file in a zip file. Extract the contents of the zip file, and copy the **entire**  **lib**  **folder** and the **code.py** file to your **CIRCUITPY** drive.

Your **CIRCUITPY/lib** folder should contain the following folders and file:

- **adafruit\_bus\_device/**
- **adafruit\_seesaw/**
- **adafruit\_pixelbuf.mpy**

![CIRCUITPY](https://adafruit.github.io/Adafruit_CircuitPython_Bundle/seesaw_seesaw_joy_featherwing.py.png )

## Python Usage

Once you have the library `pip3` installed on your computer, copy or download the following example to your computer, and run the following, replacing **code.py** with whatever you named the file:

`python3 code.py`

## Example Code

**If running CircuitPython:** Once everything is saved to the **CIRCUITPY** drive, [connect to the serial console](https://learn.adafruit.com/welcome-to-circuitpython/kattni-connecting-to-the-serial-console) to see the data printed out!

**If running Python:** The console output will appear wherever you are running Python.

https://github.com/adafruit/Adafruit_CircuitPython_seesaw/blob/main/examples/seesaw_quadrotary.py

In the example, each rotary encoder position is printed to the serial console as it changes. As the encoder position changes, the NeoPixel underneath advances through the rainbow. If you press a rotary encoder button, the NeoPixel underneath turns white.

![](https://cdn-learn.adafruit.com/assets/assets/000/122/289/medium800/adafruit_products_cpSerial.jpg?1688571934)

## I2C Clock Stretching

For boards that don't handle clock-stretching well, like Raspberry Pi, you may want to reduce the I2C clock speed to 50KHz by [following the directions in this guide.](https://learn.adafruit.com/raspberry-pi-i2c-clock-stretching-fixes/change-the-clock-speed)

Then, at the beginning of the example code, uncomment the **busio** I2C instantiation and comment out the `STEMMA_I2C()` instantiation.

```python
# For boards/chips that don't handle clock-stretching well, try running I2C at 50KHz
import busio
i2c = busio.I2C(board.SCL, board.SDA, frequency=50000)
# For using the built-in STEMMA QT connector on a microcontroller
# i2c = board.STEMMA_I2C()
seesaw = adafruit_seesaw.seesaw.Seesaw(i2c, 0x49)
```

For more information on I2C clock stretching and Raspberry Pi, check out this [Learn Guide](https://learn.adafruit.com/raspberry-pi-i2c-clock-stretching-fixes/overview).

[Raspberry Pi I2C Clock Stretching Fixes Learn Guide](https://learn.adafruit.com/raspberry-pi-i2c-clock-stretching-fixes)
# Adafruit I2C Quad Rotary Encoder Breakout

## Python Docs

# Adafruit I2C Quad Rotary Encoder Breakout

## Arduino

Using the I2C quad rotary encoder breakout with Arduino involves wiring up the breakout to your Arduino-compatible microcontroller, installing the [Adafruit\_Seesaw](https://github.com/adafruit/Adafruit_Seesaw) library and running the provided example code.

## Wiring

Wire as shown for a **5V** board like an Uno. If you are using a **3V** board, like an Adafruit Feather, wire the board's 3V pin to the breakout VIN.

Here is an Adafruit Metro wired up to the breakout using the STEMMA QT connector:

- **Board 5V** &nbsp;to&nbsp; **breakout&nbsp;**** VIN (red wire)**  
- **Board GND** &nbsp;to **breakout** &nbsp;**GND (black wire)**  
- **Board SCL** &nbsp;to **breakout** &nbsp;**SCL (yellow wire)**  
- **Board SDA** &nbsp;to **breakout** &nbsp;**SDA (blue wire)**

![adafruit_products_metroStemma_bb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/122/296/medium640/adafruit_products_metroStemma_bb.jpg?1688578663)

Here is an Adafruit Metro wired up using a solderless breadboard:

- **Board 5V** &nbsp;to&nbsp; **breakout&nbsp;**** VIN (red wire)**  
- **Board GND** &nbsp;to **breakout** &nbsp;**GND (black wire)**  
- **Board SCL** &nbsp;to **breakout** &nbsp;**SCL (yellow wire)**  
- **Board SDA** &nbsp;to **breakout** &nbsp;**SDA (blue wire)**

![adafruit_products_metroBB_bb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/122/297/medium640/adafruit_products_metroBB_bb.jpg?1688578685)

## Library Installation

You can install the **Adafruit\_Seesaw** library for Arduino using the Library Manager in the Arduino IDE.

![](https://cdn-learn.adafruit.com/assets/assets/000/122/290/medium800/adafruit_products_Arduino_Open_Library_Manager.png?1688572568)

Click the **Manage Libraries ...** menu item, search for **Adafruit\_Seesaw** , and select the **Adafruit seesaw**  **Library** library:

![](https://cdn-learn.adafruit.com/assets/assets/000/122/291/medium800/adafruit_products_seesawLib.png?1688572642)

If asked about dependencies, click "Install all".

![](https://cdn-learn.adafruit.com/assets/assets/000/122/292/medium800/adafruit_products_seesawDepends.png?1688572666)

If the "Dependencies" window does not come up, then you already have the dependencies installed.

Warning: 

## Example Code
https://github.com/adafruit/Adafruit_Seesaw/blob/master/examples/encoder/PID5752_QuadEncoder_demo/PID5752_QuadEncoder_demo.ino

Upload the sketch to your board&nbsp;and open up the Serial Monitor ( **Tools -\> Serial Monitor** ) at 115200 baud. You'll see the seesaw firmware recognized by the code. Then, when you turn any of the four encoders or press any of the buttons on the encoders it will print to the Serial Monitor. As you turn an encoder, the NeoPixel underneath the encoder will begin to advance through the color rainbow. You'll also see the interrupt LED light up with each encoder turn and button press.

![](https://cdn-learn.adafruit.com/assets/assets/000/122/308/medium800/adafruit_products_arduinoSerial.png?1688582227)

# Adafruit I2C Quad Rotary Encoder Breakout

## Arduino Docs

# Adafruit I2C Quad Rotary Encoder Breakout

## Downloads

## Files

- [ATtiny817 Datasheet](https://cdn-learn.adafruit.com/assets/assets/000/105/460/original/ATtiny417-814-816-817-DataSheet-DS40002288A.pdf?1634157151)
- [EagleCAD PCB Files on GitHub](https://github.com/adafruit/Adafruit-I2C-Quad-Rotary-Encoder-Breakout-PCB)
- [Fritzing object in the Adafruit Fritzing Library](https://github.com/adafruit/Fritzing-Library/blob/master/parts/Adafruit%20I2C%20Quad%20Rotary%20Encoder%20Breakout.fzpz)

## Schematic and Fab Print
![](https://cdn-learn.adafruit.com/assets/assets/000/122/222/medium800/adafruit_products_schem.png?1688153179)

![](https://cdn-learn.adafruit.com/assets/assets/000/122/223/medium800/adafruit_products_fab.png?1688153205 dimensions are in inches)


## Primary Products

### Adafruit I2C Quad Rotary Encoder Breakout with NeoPixel

[Adafruit I2C Quad Rotary Encoder Breakout with NeoPixel](https://www.adafruit.com/product/5752)
Rotary encoders are soooo much fun! Twist em this way, then twist them that way. Unlike potentiometers, they go all the way around and often have little detents for tactile feedback. But, if you've ever tried to add encoders to your project you know that they're a real challenge to...

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

## Featured Products

### Rotary Encoder + Extras

[Rotary Encoder + Extras](https://www.adafruit.com/product/377)
This rotary encoder is the best of the best, it's a high-quality 24-pulse encoder, with detents and a nice feel. It is panel mountable for placement in a box, or you can plug it into a breadboard (just cut/bend the two mechanical side tabs.) We also include a nice soft-touch knob with an...

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

[STEMMA QT / Qwiic JST SH 4-pin Cable - 100mm Long](https://www.adafruit.com/product/4210)
This 4-wire cable is a little over 100mm / 4" long and fitted with JST-SH female 4-pin connectors on both ends. 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 and remove.

<a...></a...>

Out of Stock
[Buy Now](https://www.adafruit.com/product/4210)
[Related Guides to the Product](https://learn.adafruit.com/products/4210/guides)
### STEMMA QT / Qwiic JST SH 4-Pin Cable - 50mm Long

[STEMMA QT / Qwiic JST SH 4-Pin Cable - 50mm Long](https://www.adafruit.com/product/4399)
This 4-wire cable is&nbsp;50mm / 1.9" long and fitted with JST SH female 4-pin connectors on both ends. 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 and remove.

<a...></a...>

Out of Stock
[Buy Now](https://www.adafruit.com/product/4399)
[Related Guides to the Product](https://learn.adafruit.com/products/4399/guides)
### STEMMA QT / Qwiic JST SH 4-pin Cable with Premium Female Sockets

[STEMMA QT / Qwiic JST SH 4-pin Cable with Premium Female Sockets](https://www.adafruit.com/product/4397)
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 female 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 and...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4397)
[Related Guides to the Product](https://learn.adafruit.com/products/4397/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...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4209)
[Related Guides to the Product](https://learn.adafruit.com/products/4209/guides)
### JST SH 4-pin Cable with Alligator Clips - STEMMA QT / Qwiic

[JST SH 4-pin Cable with Alligator Clips - STEMMA QT / Qwiic](https://www.adafruit.com/product/4398)
This cable will make it super easy to use our plug-and-play STEMMA QT boards with boards like Circuit Playground. On one end you get a Qwiic / STEMMA QT connector (technically known as a JST SH 4-pin plug)&nbsp; into 4 individual wires with grippy alligator clips. We're carrying these to...

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

## Related Guides

- [IBM PC Keyboard to USB HID with CircuitPython](https://learn.adafruit.com/ibm-pc-keyboard-to-usb-hid-with-circuitpython.md)
- [Star Trek Soundboard with NeoTrellis](https://learn.adafruit.com/star-trek-sound-board-with-neotrellism4.md)
- [Adafruit ESP32-S2 Feather](https://learn.adafruit.com/adafruit-esp32-s2-feather.md)
- [Adafruit 2.0" 320x240 Color IPS TFT Display](https://learn.adafruit.com/2-0-inch-320-x-240-color-ips-tft-display.md)
- [Adafruit VL6180X Time of Flight Micro-LIDAR Distance Sensor Breakout](https://learn.adafruit.com/adafruit-vl6180x-time-of-flight-micro-lidar-distance-sensor-breakout.md)
- [Adafruit Mini I2C STEMMA QT Gamepad with seesaw](https://learn.adafruit.com/gamepad-qt.md)
- [Adafruit EYESPI BFF](https://learn.adafruit.com/adafruit-eyespi-bff.md)
- [Combo Dial Safe with Circuit Playground Express](https://learn.adafruit.com/combo-dial-safe-with-circuit-playground-express.md)
- [MagTag Daily Weather Forecast Display](https://learn.adafruit.com/magtag-weather.md)
- [Adafruit 1-Wire GPIO Breakout - DS2413](https://learn.adafruit.com/adafruit-1-wire-gpio-breakout-ds2413.md)
- [EZ Make Oven](https://learn.adafruit.com/ez-make-oven.md)
- [Adafruit Neo Trinkey](https://learn.adafruit.com/adafruit-neo-trinkey.md)
- [Rotary Encoder in CircuitPython](https://learn.adafruit.com/rotary-encoder.md)
- [Adafruit NeoKey Trinkey](https://learn.adafruit.com/adafruit-neokey-trinkey.md)
- [Adafruit APDS9999 Proximity, Lux Light & Color Sensor](https://learn.adafruit.com/adafruit-apds9999-proximity-lux-light-color-sensor.md)
