# Adafruit DS1841 I2C Logarithmic Resistor

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/092/739/medium800/adafruit_products_P4570Front_guide.png?1593723396)

Potentiometers are the perfect tool when you want to change your circuit by turning a knob. Turns out, there are times when you want to adjust your circuit without manually turning a knob, and the **DS1841 I2C Logarithmic Resistor from Maxim** can do just that. It's a programmable resistor, similar to an I2C potentiometer like the&nbsp;the [**DS3502 I2C Potentiometer**](https://www.adafruit.com/product/4286 "DS3502 I2C Potentiometer"), so why another?

The big difference between the two is how the resistance changes in relation to changes made to the wiper. The DS3502's resistance has a _linear_ relationship to the wiper's setting. Each time you change the wiper by a given amount, the resistance will change by the same amount. With the DS1841, the relationship between resistance and the wiper setting is **logarithmic**. This means that as the wiper setting changes, the amount of resistance will depend on where in the wiper's range the current setting is.

This graph shows the relationship between the wiper setting and the resulting resistance. At the start, the changes are relatively large, but as the values increase, the resulting change in resistance gets smaller and smaller.

![adafruit_products_a_log_curve.png](https://cdn-learn.adafruit.com/assets/assets/000/089/753/medium640/adafruit_products_a_log_curve.png?1585012392)

Log potentiometers are used in audio applications for things like volume control because they better match the response of human ear to sound.

The DS1841's resistance ranges from **22kOhms to 3.7 kOhms** and has **128 tap points**. Even more interestingly, the DS1841 can be configured to **adjust its resistance based on temperature** with hysteresis to keep things from jumping around.&nbsp;

Additionally the temperature compensation can be adjusted by using the **LUT** ( **L** ook **U** p **T** able) built into the DS1841. This table allows you to&nbsp; specify the wiper setting for each of 70 temperature increments between -39 and 100 degrees C, plus one each for above or below that range. You can even manually set the wiper to one of the entries in the LUT.

![](https://cdn-learn.adafruit.com/assets/assets/000/092/740/medium800/adafruit_products_P4570FrontHeader_guide.png?1593723438)

Working with the DS1841 is easy. We've&nbsp; put it on a breakout PCB with the required support circuitry and&nbsp;[SparkFun qwiic](https://www.sparkfun.com/qwiic)&nbsp;compatible&nbsp;[**STEMMA QT**](https://learn.adafruit.com/introducing-adafruit-stemma-qt)&nbsp;connectors to allow you to use it with other similarly equipped boards&nbsp; **without needing to solder.** This handy little helper can work with 3.3V or 5V micros, so it's ready to get to work with a range of development boards. To make things even easier&nbsp;we've gone and written Arduino and CircuitPython/Python 3 drivers to simplify interfacing with your new knob-replacing friend.

# Adafruit DS1841 I2C Logarithmic Resistor

## Pinouts

![](https://cdn-learn.adafruit.com/assets/assets/000/092/741/medium800/adafruit_products_P4570Front_pinouts.png?1593723471)

# Power Pins

The sensor on the breakout requires between a 2.7V and 5.5V, and can be easily used with most microcontrollers from an Arduino to a Feather or something else.

- **Vcc** &nbsp;- this is the power pin.&nbsp; To power the board, give it the same power as the logic level of your microcontroller - e.g. for a 5V micro like Arduino, use 5V
- **GND** - common ground for power and logic

# I2C Logic Pins

- **SCL** - I2C clock pin, connect to your microcontrollers I2C clock line. The logic level is the same as **Vcc** and it has a 10K pullup already on it.
- **SDA** - I2C data pin, connect to your microcontrollers I2C data line. The logic level is the same as **Vcc**. and it has a 10K pullup already on it.
- **[STEMMA QT](https://learn.adafruit.com/introducing-adafruit-stemma-qt)&nbsp;-** These connectors allow you to connectors to dev boards with&nbsp; **STEMMA QT** connectors or to other things with&nbsp;[various associated accessories](https://www.adafruit.com/?q=JST%20SH%204)

# Resistor Pins

- **RW&nbsp;** is the wiper of the potentiometer. As the wiper value is adjusted via I2C, the resistance between **RW** and **GND** changes&nbsp;
- **RH** is the High Terminal of the potentiometer, often connected to your high voltage source **.** The DS1841 has a fixed resistor between&nbsp; **RH&nbsp;** and&nbsp; **RW** which forms a voltage divider when&nbsp; **RH&nbsp;** is connected to&nbsp; **VCC** , with the voltage between **RW** and **GND** varying with the wiper setting

![](https://cdn-learn.adafruit.com/assets/assets/000/092/742/medium800/adafruit_products_P4570Back_pinouts.png?1593723495)

# Extra Pins

- **A0 and A1&nbsp;** - These are the address select pins which set the two least significant bits of the I2C address. The are pulled to GND with two resistors which sets the address to **0x28** by default.

## Adjusting the I2C Address

The default address is **0x28** and the address can be calculated by 'adding' the **A0/A1** &nbsp;to the base of **0x28.** You can change the values of one or both A0 and A1 by bridging the solder jumpers on the back of the board with solder. You can also set A0 or A1 by using a jumper wire to connect them to **Vcc.**

**A0** sets the lowest bit with a value of **1** , and&nbsp; **A1** sets the next highest bit that has a value of **2**. The final address is **0x28&nbsp;+ A1 + A0**.

- For example if only **A0** is tied to **Vcc** and **A1** is left connected to **GND** , the address is **0x28 + 0 + 1 = 0x29**  
- If only **A1** is tied to **Vcc** , the address is **0x28 + 2 + 0 = 0x2A&nbsp;** (A is 10 in hexadecimal)
- If both A0 and A1 are connected to **Vcc** , the address is **0x28 + 2 + 1 = 0x2B** (B is 11 in hexadecimal)

# Adafruit DS1841 I2C Logarithmic Resistor

## Arduino

# I2C Wiring

Wiring the DS1841 to communicate with your microcontroller is straight forward forward thanks to the I2C interface. For these examples we can use the Metro or Arduino to measure the voltage changes as the DS1841 adjusts its resistance. The instructions below reference a [Metro](https://www.adafruit.com/product/2488), but the same applies to an Arduino

### STEMMA QT Wiring
- &nbsp;Connect&nbsp;**board VIN (red wire)** to **Metro**** &nbsp; ****5V** &nbsp;if you are running a **5V** board Arduino (Uno, etc.).&nbsp;If your board is **3V,** connect to that instead.
- Connect **board** **GND (black wire)&nbsp;**to **Metro** &nbsp; **GND**
- Connect **board** **SCL (yellow wire)&nbsp;**to **Metro** &nbsp; **SCL**
- Connect **board** **SDA (blue wire)&nbsp;**to **Metro** &nbsp; **SDA**
- Connect **RH** to **Metro 5V**
- Connect **RW** to the **A0** pin on the **Metro** , to allow us to measure the voltage

![adafruit_products_c_arduino_wiring_qt.png](https://cdn-learn.adafruit.com/assets/assets/000/091/223/medium640/adafruit_products_c_arduino_wiring_qt.png?1589584773)

### Breadboard Wiring
- &nbsp;Connect&nbsp;**board VIN (red wire)** to **Metro**** &nbsp; ****5V** &nbsp;if you are running a **5V** board Arduino (Uno, etc.).&nbsp;If your board is **3V,** connect to that instead.
- Connect **board** **GND (black wire)&nbsp;**to **Metro** &nbsp; **GND**
- Connect **board** **SCL (yellow wire)&nbsp;**to **Metro** &nbsp; **SCL**
- Connect **board** **SDA (blue wire)&nbsp;**to **Metro** &nbsp; **SDA**
- Connect **RH** to **Metro 5V**
- Connect **RW** to the **A0** pin on the **Metro** , to allow us to measure the voltage

![adafruit_products_c_arduino_wiring_bb.png](https://cdn-learn.adafruit.com/assets/assets/000/091/224/medium640/adafruit_products_c_arduino_wiring_bb.png?1589585047)

# Library Installation

Once wired up, to start using the DS1841, you'll need to install the [Adafruit\_DS1841 library](https://github.com/adafruit/Adafruit_DS1841). The library is available through the Arduino library manager so we recommend taking that approach.

From the Arduino IDE, open up the Library Manager:

![](https://cdn-learn.adafruit.com/assets/assets/000/089/775/medium800/adafruit_products_ARDUINO_-_library_manager_menu.png?1585015914)

Click the&nbsp; **Manage Libraries ...** &nbsp;menu item, search for&nbsp; **Adafruit DS1841** ,&nbsp;and select the&nbsp; **Adafruit DS1841** &nbsp;library and click **Install** :

![](https://cdn-learn.adafruit.com/assets/assets/000/091/208/medium800/adafruit_products_d_arduino_libmgr_ss.png?1589574700)

Follow the same process to install the&nbsp; **Adafruit BusIO** library.

![](https://cdn-learn.adafruit.com/assets/assets/000/091/211/medium800/adafruit_products_aa_ARDUINO-_BusIO_Lib_Manager.png?1589574743)

# Load Example

Open up&nbsp; **File -\> Examples -\> Adafruit DS1841**  **-\> ds1841\_test** and upload to your Metro wired up to the DS1841 breakout as shown above. Once you upload the code, you will see the wiper settings and measured voltage being printed when you open the Serial Monitor ( **Tools-\>Serial Monitor** ) at 15200 baud, similar to this:

![](https://cdn-learn.adafruit.com/assets/assets/000/091/215/medium800/adafruit_products_c_arduino_demo_ss.png?1589582329)

# Example Code

The following code comes with the library and illustrates the basic function of using the variable resistance of the DS1841 to change the voltage measured at pin A0:

https://github.com/adafruit/Adafruit_DS1841/blob/master/examples/adafruit_ds1841_test/adafruit_ds1841_test.ino

# Adafruit DS1841 I2C Logarithmic Resistor

## Arduino Docs

# Adafruit DS1841 I2C Logarithmic Resistor

## Python & CircuitPython

# CircuitPython Microcontroller Wiring

Wiring the DS1841 to communicate with your microcontroller is straightforward thanks to the **I2C** interface. For these examples, we can use a Metro or a Feather to measure the voltage changes as the DS1841 adjusts its resistance. The instructions below reference a [Feather](https://www.adafruit.com/product/3857), but the same applies to a Metro.

### STEMMA QT Wiring
- Connect **board Vcc (long red wire)** to **Feather 3.3V** &nbsp;
- Connect **board** **GND (black wire)&nbsp;**to **Feather** &nbsp; **GND**
- Connect **board** **SCL (yellow wire)&nbsp;**to **Feather** &nbsp; **SCL**
- Connect **board** **SDA (blue wire)&nbsp;**to **Feather** &nbsp; **SDA**
- Connect **RH** to **Vcc (short red wire)**
- Connect **RW** to the **A0** pin on the **Feather** , to allow us to measure the voltage

![adafruit_products_d_cp_feather_wiring_qt.png](https://cdn-learn.adafruit.com/assets/assets/000/091/225/medium640/adafruit_products_d_cp_feather_wiring_qt.png?1589585226)

### Breadboard Wiring
- Connect **board Vcc (long red wire)** to **Feather 3.3V** &nbsp;
- Connect **board** **GND (black wire)&nbsp;**to **Feather** &nbsp; **GND**
- Connect **board** **SCL (yellow wire)&nbsp;**to **Feather** &nbsp; **SCL**
- Connect **board** **SDA (blue wire)&nbsp;**to **Feather** &nbsp; **SDA**
- Connect **RH** to **Vcc (short red wire)**
- Connect **RW** to the **A0** pin on the **Feather** , to allow us to measure the voltage

![adafruit_products_d_cp_feather_wiring_bb.png](https://cdn-learn.adafruit.com/assets/assets/000/091/226/medium640/adafruit_products_d_cp_feather_wiring_bb.png?1589585294)

# Python Computer Wiring

Since there's _dozens_ of Linux computers/boards you can use we will show wiring for [Raspberry Pi](https://www.adafruit.com/product/3055). 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).&nbsp;

Here's the Raspberry Pi wired with I2C:

Warning: 

If you are new to using a multimeter to measure voltage, check out [ladyada's guide to multimeters](https://learn.adafruit.com/multimeters) which has a [section on using your multimeter to measure voltage](https://learn.adafruit.com/multimeters/voltage#get-into-the-right-mode-4-7)

### STEMMA QT Wiring
- Connect **board Vcc (long red wire)** to **Pi 3.3V** &nbsp;
- Connect **board** **GND (black wire)&nbsp;**to **Pi** &nbsp; **GND**
- Connect **board** **SCL (yellow wire)&nbsp;**to **Pi** &nbsp; **SCL**
- Connect **board** **SDA (blue wire)&nbsp;**to **Pi** &nbsp; **SDA**
- **board Vcc** to board **RH (short red wire)**
- **Multimeter Positive Lead&nbsp;** to&nbsp; **sensor RW**
- **Multimeter Negative Lead&nbsp;** to **sensor GND**

![adafruit_products_d_rpi_wiring_qt.png](https://cdn-learn.adafruit.com/assets/assets/000/091/228/medium640/adafruit_products_d_rpi_wiring_qt.png?1589585562)

### Breadboard Wiring
- Connect **board Vcc (long red wire)** to **Pi 3.3V** &nbsp;
- Connect **board** **GND (black wire)&nbsp;**to **Pi** &nbsp; **GND**
- Connect **board** **SCL (yellow wire)&nbsp;**to **Pi** &nbsp; **SCL**
- Connect **board** **SDA (blue wire)&nbsp;**to **Pi** &nbsp; **SDA**
- **board Vcc** to board **RH (short red wire)**
- **Multimeter Positive Lead&nbsp;** to&nbsp; **sensor RW**
- **Multimeter Negative Lead&nbsp;** to **sensor GND**

![adafruit_products_d_rpi_wiring_bb.png](https://cdn-learn.adafruit.com/assets/assets/000/091/227/medium640/adafruit_products_d_rpi_wiring_bb.png?1589585517)

## CircuitPython Installation of DS1841 Library

You'll need to install the&nbsp;[Adafruit CircuitPython DS1841](https://github.com/adafruit/Adafruit_CircuitPython_DS1841) library on your CircuitPython board.

First make sure you are running the&nbsp;[latest version of Adafruit CircuitPython](https://learn.adafruit.com/welcome-to-circuitpython/installing-circuitpython)&nbsp;for your board.

Next you'll need to install the necessary libraries&nbsp;to use the hardware--carefully follow the steps to find and install these libraries from&nbsp;[Adafruit's CircuitPython library bundle](https://github.com/adafruit/Adafruit_CircuitPython_Bundle/releases).&nbsp; Our CircuitPython starter guide has [a great page on how to install the library bundle](https://learn.adafruit.com/welcome-to-circuitpython/circuitpython-libraries).

For non-express boards like the Trinket M0 or Gemma M0, you'll need to manually install the necessary libraries from the bundle:

- **adafruit\_ds1841.mpy**
- **adafruit\_bus\_device**
- **adafruit\_register**

Before continuing make sure your board's lib folder or root filesystem has the&nbsp; **adafruit\_ds1841.mpy,**  **adafruit\_bus\_device** , and&nbsp; **adafruit\_register** files and folders **&nbsp;** copied over.

Next&nbsp;[connect to the board's serial REPL&nbsp;](https://learn.adafruit.com/welcome-to-circuitpython/the-repl)so you are at the CircuitPython&nbsp; **\>\>\>** &nbsp;prompt.

## Python Installation of DS1841 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.&nbsp;[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:

- `sudo pip3 install adafruit-circuitpython-ds1841```

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
Info: 

To demonstrate the usage of the potentiometer we'll initialize it and set the wiper value to change the voltage on the&nbsp; **WH** pin. We will then use the&nbsp; **A0** pin to take an analog reading of the voltage on the&nbsp; **WH** pin.

Run the following code to import the necessary modules and initialize the I2C connection with the potentiometer:

```python
import board
import busio
from analogio import AnalogIn
import adafruit_ds1841
i2c = busio.I2C(board.SCL, board.SDA)
ds1841 = adafruit_ds1841.DS1841(i2c)
wiper_output = AnalogIn(board.A0)
```

![](https://cdn-learn.adafruit.com/assets/assets/000/091/216/medium800/adafruit_products_d_cp_repl_setup_ss.png?1589583185)

With the driver initialized, we can the set the wiper value using the **wiper** property. Then we can take an ADC reading to measure the voltage, and convert the raw ADC value to a human-readable value

```python
ds1841.wiper = 127
print("Wiper set to %d" % ds1841.wiper)
voltage = wiper_output.value
voltage *= 3.3
voltage /= 65535
print("Wiper voltage: %.2f V" % voltage)
```

![](https://cdn-learn.adafruit.com/assets/assets/000/091/219/medium800/adafruit_products_d_cp_repl_prop_1_ss.png?1589583504)

We can then set the **wiper** to a different value and see how it changes the measured wiper voltage

```python
ds1841.wiper = 0
print("Wiper set to %d" % ds1841.wiper)
voltage = wiper_output.value
voltage *= 3.3
voltage /= 65535
print("Wiper voltage: %.2f V" % voltage)
```

![](https://cdn-learn.adafruit.com/assets/assets/000/091/220/medium800/adafruit_products_d_cp_repl_prop_2_ss.png?1589583512)

## Full CircuitPython Example Code
https://github.com/adafruit/Adafruit_CircuitPython_DS1841/blob/main/examples/ds1841_simpletest.py

## Python Usage

Because the Raspberry Pi and many other similar devices do not include the hardware for measuring analog voltages, you will have to use a multimeter to measure the voltage on the&nbsp; **RW** pin.  
  
To start, similar to above we will import the needed modules and initialize the driver

```python
import board
import busio
import adafruit_ds1841

i2c = busio.I2C(board.SCL, board.SDA)
ds1841 = adafruit_ds1841.DS1841(i2c)
```

![](https://cdn-learn.adafruit.com/assets/assets/000/091/229/medium800/adafruit_products_d_cp_blinka_repl_setup_ss.png?1589588162)

Once the driver has been initialized, we can use it to set the value of the wiper

```python
ds1841.wiper = 127
```

![](https://cdn-learn.adafruit.com/assets/assets/000/091/230/medium800/adafruit_products_d_cp_blinka_repl_prop_1_ss.png?1589588180)

You can then use your multimeter or other voltage measuring device to check the voltage across&nbsp; **GND** and&nbsp; **RW.** It should be the same as shown in the CircuitPython example above, approximately **0.3V**

Next, change the wiper value again and measure the voltage on the&nbsp; **RW pin**

```python
ds1841.wiper = 0
```

![](https://cdn-learn.adafruit.com/assets/assets/000/091/231/medium800/adafruit_products_d_cp_blinka_repl_prop_2_ss.png?1589588386)

The voltage on the **RW&nbsp;** pin should be the same as shown in the CircuitPython example above, this time approximately **2.8V**

# Full Python Example Code
https://github.com/adafruit/Adafruit_CircuitPython_DS1841/blob/main/examples/ds1841_blinka_simpletest.py

# Adafruit DS1841 I2C Logarithmic Resistor

## Python Docs

# Adafruit DS1841 I2C Logarithmic Resistor

## Downloads

# Files

- [DS1841 Datasheet](https://datasheets.maximintegrated.com/en/ds/DS1841.pdf)
- [EagleCAD files on GitHub](https://www.github.com/adafruit/Adafruit-DS1841-PCB)
- [Fritzing object in Adafruit Fritzing Library](https://github.com/adafruit/Fritzing-Library/blob/master/parts/Adafruit%20DS1841.fzpz)

# Schematic
![](https://cdn-learn.adafruit.com/assets/assets/000/091/222/medium800/adafruit_products_x_downloads_schematic.png?1589583669)

# Fab Print
![](https://cdn-learn.adafruit.com/assets/assets/000/091/221/medium800/adafruit_products_x_downloads_fab.png?1589583659)


## Primary Products

### Adafruit DS1841 I2C Digital 10K Potentiometer Breakout

[Adafruit DS1841 I2C Digital 10K Potentiometer Breakout](https://www.adafruit.com/product/4570)
Potentiometers are the perfect tool when you want to change your circuit by turning a knob. Turns out, there are times when you want to adjust your circuit without manually turning a knob, and the **&nbsp;DS1841 I2C Logarithmic Resistor from Maxim** &nbsp;can do just that. It's...

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

## Featured Products

### 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)
### 4-pin JST PH to JST SH Cable - STEMMA to QT / Qwiic

[4-pin JST PH to JST SH Cable - STEMMA to QT / Qwiic](https://www.adafruit.com/product/4424)
Are you a maker in the midst of&nbsp;a [**STEMMA**](https://learn.adafruit.com/introducing-adafruit-stemma-qt/what-is-stemma) dilemma? This 200mm long 4-wire cable is a fantastic chimera-cable fitted with **STEMMA QT / Sparkfun Qwiic JST SH** on one end,...

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

## Related Guides

- [Adafruit LED Arcade Button 1x4 STEMMA QT](https://learn.adafruit.com/adafruit-led-arcade-button-qt.md)
- [UTi165 Thermal Fever Scanner Camera](https://learn.adafruit.com/uti165-thermal-fever-scanner-camera.md)
- [Adafruit LPS25 and LPS22 Barometric Pressure and Temperature Sensors](https://learn.adafruit.com/adafruit-lps25-pressure-sensor.md)
- [Adafruit INA23x DC Current Voltage Power Monitor](https://learn.adafruit.com/adafruit-ina237-dc-current-voltage-power-monitor.md)
- [TLC5947 and TLC59711 PWM LED Driver Breakouts](https://learn.adafruit.com/tlc5947-tlc59711-pwm-led-driver-breakout.md)
- [Adafruit ENS161 MOX Gas Sensor](https://learn.adafruit.com/adafruit-ens161-mox-gas-sensor.md)
- [Adafruit NeoKey 1x4 QT I2C Breakout](https://learn.adafruit.com/neokey-1x4-qt-i2c.md)
- [OpenAI Image Descriptors with MEMENTO](https://learn.adafruit.com/openai-image-descriptors-with-memento.md)
- [Adafruit I2C QT Rotary Encoder](https://learn.adafruit.com/adafruit-i2c-qt-rotary-encoder.md)
- [Adafruit Mini I2C STEMMA QT Gamepad with seesaw](https://learn.adafruit.com/gamepad-qt.md)
- [PyPortal Tides Viewer](https://learn.adafruit.com/pyportal-tides-viewer.md)
- [Bare E-Ink Displays Crash Course](https://learn.adafruit.com/bare-e-ink-displays-crash-course.md)
- [Adafruit Feather RP2350 with HSTX](https://learn.adafruit.com/adafruit-feather-rp2350.md)
- [Adafruit S-35710 Low-Power Wake Up Timer Breakout](https://learn.adafruit.com/adafruit-s-35710-low-power-wake-up-timer-breakout.md)
- [Booster Cable](https://learn.adafruit.com/booster-cable.md)
