# Adafruit Chainable DS18B20 Extender Breakout

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/130/347/medium800/adafruit_products_5971-04.jpg?1717420422)

One of the perks of working at Adafruit is you get to request hardware - and you'll probably get fast turnaround! One of our [adafruit.io](http://adafruit.io/) developers requested "an easy way to chain DS18B20 sensors for testing with [adafruit.io's Wippersnapper service](https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper)" at 11:54am one Monday morning, and after a few back-and-forth's we came up with the **Adafruit Chainable DS18B20 Extender Breakout**. Bit of a mouth-full, but we're better engineers than marketers doncha-know.

![](https://cdn-learn.adafruit.com/assets/assets/000/130/348/medium800/adafruit_products_5971-02.jpg?1717420470)

While there is absolutely nothing stopping you from just wiring up DS18B20's directly to your microcontroller, these extender breakouts will make things just a lil bit easier. You can use [JST 3-pin cables](https://www.adafruit.com/product/4336) to chain the extenders, the soldered-on screw terminal blocks mean you can easily connect [DS18B20's in TO-92](https://www.adafruit.com/product/374) or [cable style](https://www.adafruit.com/product/381) with just a screwdriver.

![](https://cdn-learn.adafruit.com/assets/assets/000/130/349/medium800/adafruit_products_5971-01.jpg?1717420519)

Each extender has a 4.7K signal pullup on board that can be disabled by cutting a trace, and a buffered signal LED that will let you know when there's data transmission on the 1-Wire line. When the red LED blinks, you know that data is going over the 1-wire line.

![](https://cdn-learn.adafruit.com/assets/assets/000/130/350/medium800/adafruit_products_5971-00.jpg?1717420576)

 **Please Note:** This board _doesn't_ come with a [DS18B20 sensor](https://www.adafruit.com/search?q=ds18b20) itself; it's just an adapter-helper. You supply the sensor + a JST PH-compatible 3-pin cable.

# Adafruit Chainable DS18B20 Extender Breakout

## Pinouts

![](https://cdn-learn.adafruit.com/assets/assets/000/130/354/medium800/adafruit_products_double.jpg?1717423081)

Warning: This board doesn't come with a DS18B20 sensor itself; it's just an adapter-helper. You supply the sensor and a JST PH-compatible 3-pin cable.

## DS18B20 Terminal Block

At the top edge of the board is a 1x3 terminal block. This block lets you connect a DS18B20 sensor to the breakout board.

- **V+** - the power connection for the DS18B20
- **Signal** - the signal connection for the DS18B20 1-wire line
- **GND** - the ground connection for the DS18B20

## STEMMA JST PH Ports

On either side of the breakout is a [STEMMA JST PH](https://learn.adafruit.com/introducing-adafruit-stemma-qt) port. These two ports allow for chaining multiple breakouts together&nbsp;for use with [3-pin STEMMA JST PH cables](https://www.adafruit.com/category/619). It has connections for:

- **GND** &nbsp;- common ground for power and data. It is the black wire on the JST PH cable.
- **Vin** - power input for the breakout. It is the red wire on the JST PH cable.&nbsp;To power the board, give it the same power as the logic level of your microcontroller - e.g. for a 5V microcontroller like Arduino, use 5V.
- **Sig** - signal output from the DS18B20 to your microcontroller. It is the white wire on the JST PH cable.

## Pullup Jumper

On the front of the board, in the center, is a jumper labeled PU. This is the Pullup Jumper for the breakout that is connected to the 4.7K signal pullup on board. You can cut the trace on this jumper to disconnect the signal pullup.

## Signal LED and Jumper

- **Signal LED** - in the bottom left corner on the front of the board is the signal LED, labeled **Sig**. It is the red LED. It will blink when there is data transmission on the 1-Wire line.
- **LED jumper** - on the back of the board is a jumper for the signal LED. It is labeled **SIG** on the board silk. If you want to disable the signal LED, cut the trace on this jumper.

## Power LED and Jumper

- **Power LED** - in the bottom right corner on the front of the board is the power LED, labeled **ON**. It is the green LED.
- **LED jumper** - on the back of the board is a jumper for the power LED. It is labeled **ON** &nbsp;on the board silk. If you want to disable the power LED, cut the trace on this jumper.

# Adafruit Chainable DS18B20 Extender Breakout

## CircuitPython

It's easy to use the **Chainable DS18B20 Extender Breakout** with CircuitPython and the [Adafruit\_CircuitPython\_DS18X20](https://github.com/adafruit/Adafruit_CircuitPython_DS18X20) module. This module allows you to easily write Python code for reading the DS18B20 1-wire sensor.

You'll need a DS18B20 sensor to use this example with the breakout:

### DS18B20 Digital temperature sensor + extras

[DS18B20 Digital temperature sensor + extras](https://www.adafruit.com/product/374)
These 1-wire digital temperature sensors are fairly precise (±0.5°C over much of the range) and can give up to 12 bits of precision from the onboard digital-to-analog converter. They work great with any microcontroller using a single digital pin, and you can even connect multiple...

In Stock
[Buy Now](https://www.adafruit.com/product/374)
[Related Guides to the Product](https://learn.adafruit.com/products/374/guides)
![DS18B20 Digital temperature sensor next to a US quarter and above a resister. ](https://cdn-shop.adafruit.com/640x480/374-01.jpg)

### Waterproof 1-Wire DS18B20 Digital temperature sensor

[Waterproof 1-Wire DS18B20 Digital temperature sensor](https://www.adafruit.com/product/381)
This is a pre-wired and waterproofed (with heat shrink) version of a 1 Wire DS18B20 sensor. Handy for when you need to measure something far away, or in wet conditions. While the sensor is good up to 125°C the cable is jacketed in PVC so we suggest keeping it under 100°C. Because they...

In Stock
[Buy Now](https://www.adafruit.com/product/381)
[Related Guides to the Product](https://learn.adafruit.com/products/381/guides)
![Angled Shot of the Waterproof 1-Wire DS18B20 Digital temperature sensor.](https://cdn-shop.adafruit.com/640x480/381-01.jpg)

## CircuitPython Microcontroller Wiring

First wire up the DS18B20 sensor to the breakout exactly as follows. Then, connect the breakout to your microcontroller with a JST PH cable. The following is the breakout wired to a Feather RP2040 with a JST PH cable.

- **Breakout GND** to **DS18B20 ground (blue wire)**
- **Breakout Signal** to **DS18B20 1-wire output (yellow wire)**
- **Breakout V+** to **DS18B20 VIN (red wire)**
- **Board 3V** to **breakout JST PH** **VIN (red wire)**  
- **Board GND** to **breakout**** &nbsp;JST PH GND (black wire)**  
- **Board pin 5** to **breakout** &nbsp; **JST PH** **Signal (white wire)**

![adafruit_products_cp_ds18b20_bb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/370/medium640/adafruit_products_cp_ds18b20_bb.jpg?1717443888)

## CircuitPython Usage

To use with CircuitPython, you need to first install the **Adafruit\_CircuitPython\_DS18X20** 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\_onewire/**
- **adafruit\_ds18x20.mpy**

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

## Example Code

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!

https://github.com/adafruit/Adafruit_CircuitPython_DS18X20/blob/main/examples/ds18x20_simpletest.py

In the code, the 1-wire bus is instantiated on pin 5. A scan is performed for the sensor and once it is found, the loop begins. In the loop, the temperature reading is printed to the serial console every second.

![](https://cdn-learn.adafruit.com/assets/assets/000/130/355/medium800/adafruit_products_cpSerial.png?1717429090)

## Multiple Sensors

What makes this breakout special though is right in its name: you can chain multiple DS18B20 sensors together! To do this, you'll wire up multiple breakouts with DS18B20 sensors to your microcontroller. Then, you'll scan for each sensors' ROM address. After updating the code with their addresses, you can read multiple sensors at once.

Each breakout will be wired to a DS18B20 sensor with its terminal block:

- **Breakout GND** to **DS18B20 ground (blue wire)**
- **Breakout Signal** to **DS18B20 1-wire output (yellow wire)**
- **Breakout V+** to **DS18B20 VIN (red wire)**

The breakouts will be daisy chained together via their JST PH cables. The final breakout in the chain will be connected to the Feather:

- **Board 3V** to **breakout JST PH** **VIN (red wire)**  
- **Board GND** to **breakout**** &nbsp;JST PH GND (black wire)**  
- **Board pin 5** to **breakout** &nbsp; **JST PH** **Signal (white wire)**

![adafruit_products_cp_ds18b20multi_bb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/371/medium640/adafruit_products_cp_ds18b20multi_bb.jpg?1717443915)

You can determine the ROM address for each sensor using this code snippet:

```python
import board
from adafruit_onewire.bus import OneWireBus, OneWireAddress

ow_bus = OneWireBus(board.D5)
for device in ow_bus.scan():
	print(device.rom)
```

The ROM addresses will print to the serial console:

![](https://cdn-learn.adafruit.com/assets/assets/000/130/356/medium800/adafruit_products_romAddr.png?1717429178)

Warning: You need to update the code with the ROM addresses for your sensors!

After noting the ROM addresses, you can update the multiple DS18B20 example code with your sensors' addresses. 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!

https://github.com/adafruit/Adafruit_CircuitPython_DS18X20/blob/main/examples/ds18x20_multi.py

![](https://cdn-learn.adafruit.com/assets/assets/000/130/357/medium800/adafruit_products_cpSerialMult.png?1717429308)

# Adafruit Chainable DS18B20 Extender Breakout

## Python Docs

# Adafruit Chainable DS18B20 Extender Breakout

## Arduino

Using the Chainable DS18B20 Extender Breakout with Arduino involves wiring up the breakout to your Arduino-compatible microcontroller with a DS18B20 sensor, installing the [Dallas Temperature Control Library](https://github.com/milesburton/Arduino-Temperature-Control-Library) library, and running the provided example code.

### DS18B20 Digital temperature sensor + extras

[DS18B20 Digital temperature sensor + extras](https://www.adafruit.com/product/374)
These 1-wire digital temperature sensors are fairly precise (±0.5°C over much of the range) and can give up to 12 bits of precision from the onboard digital-to-analog converter. They work great with any microcontroller using a single digital pin, and you can even connect multiple...

In Stock
[Buy Now](https://www.adafruit.com/product/374)
[Related Guides to the Product](https://learn.adafruit.com/products/374/guides)
![DS18B20 Digital temperature sensor next to a US quarter and above a resister. ](https://cdn-shop.adafruit.com/640x480/374-01.jpg)

### Waterproof 1-Wire DS18B20 Digital temperature sensor

[Waterproof 1-Wire DS18B20 Digital temperature sensor](https://www.adafruit.com/product/381)
This is a pre-wired and waterproofed (with heat shrink) version of a 1 Wire DS18B20 sensor. Handy for when you need to measure something far away, or in wet conditions. While the sensor is good up to 125°C the cable is jacketed in PVC so we suggest keeping it under 100°C. Because they...

In Stock
[Buy Now](https://www.adafruit.com/product/381)
[Related Guides to the Product](https://learn.adafruit.com/products/381/guides)
![Angled Shot of the Waterproof 1-Wire DS18B20 Digital temperature sensor.](https://cdn-shop.adafruit.com/640x480/381-01.jpg)

## 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 with a DS18B20 sensor:

- **Breakout GND** to **DS18B20 ground (blue wire)**
- **Breakout Signal** to **DS18B20 1-wire output (yellow wire)**
- **Breakout V+** to **DS18B20 VIN (red wire)**
- **Board 3V** to **breakout JST PH** **VIN (red wire)**  
- **Board GND** to **breakout**** &nbsp;JST PH GND (black wire)**  
- **Board pin 2** &nbsp;to **breakout** &nbsp; **JST PH** **Signal (white wire)**

![adafruit_products_metro_ds18b20_bb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/365/medium640/adafruit_products_metro_ds18b20_bb.jpg?1717433926)

## Library Installation

You can install the [Dallas Temperature Control Library](https://github.com/milesburton/Arduino-Temperature-Control-Library) library for Arduino using the Library Manager in the Arduino IDE.

![](https://cdn-learn.adafruit.com/assets/assets/000/130/358/medium800/adafruit_products_Arduino_Open_Library_Manager.png?1717430362)

Click the **Manage Libraries ...** menu item, search for **DS18B20** , and select the **DallasTemperature** library:

![](https://cdn-learn.adafruit.com/assets/assets/000/130/359/medium800/adafruit_products_arduinoLib.png?1717430400)

If asked about dependencies, click "Install all".

![](https://cdn-learn.adafruit.com/assets/assets/000/130/360/medium800/adafruit_products_depends.png?1717430457)

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

Warning: If the dependencies are already installed, you must make sure you update them through the Arduino Library Manager before loading the example!

## Example Code

Open the **Simple example** in the DallasTemperature library by going to **File - Examples - DallasTemperature - Simple**.

![](https://cdn-learn.adafruit.com/assets/assets/000/130/361/medium800/adafruit_products_exampleSimple.png?1717430830)

Upload the sketch to your board and open up the Serial Monitor ( **Tools -\> Serial Monitor** ) at 115200 baud. You'll see the temperature reading from your attached DS18B20 sensor print to the Serial Monitor.

![](https://cdn-learn.adafruit.com/assets/assets/000/130/362/medium800/adafruit_products_arduinoSerial.png?1717430874)

## Multiple Sensors

What makes this breakout special though is right in its name: you can chain multiple DS18B20 sensors together! To do this, you'll wire up multiple breakouts with DS18B20 sensors to your microcontroller and then upload the Multiple example from the [Arduino Library for Maxim Temperature Integrated Circuits](https://github.com/milesburton/Arduino-Temperature-Control-Library)&nbsp;library.

Each breakout will be wired to a DS18B20 sensor with its terminal block:

- **Breakout GND** to **DS18B20 ground (blue wire)**
- **Breakout Signal** to **DS18B20 1-wire output (yellow wire)**
- **Breakout V+** to **DS18B20 VIN (red wire)**

The breakouts will be daisy chained together via their JST PH cables. The final breakout in the chain will be connected to the microcontroller:

- **Board 3V** to **breakout JST PH** **VIN (red wire)**  
- **Board GND** to **breakout**** &nbsp;JST PH GND (black wire)**  
- **Board pin 2** &nbsp;to **breakout** &nbsp; **JST PH** **Signal (white wire)**

![adafruit_products_metro_ds18b20multi_bb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/366/medium640/adafruit_products_metro_ds18b20multi_bb.jpg?1717433947)

Open the **Multiple example** in the DallasTemperature library by going to **File - Examples - DallasTemperature - Multiple**.

![](https://cdn-learn.adafruit.com/assets/assets/000/130/363/medium800/adafruit_products_exampleMultiple.png?1717431043)

Upload the sketch to your board and open up the Serial Monitor ( **Tools -\> Serial Monitor** ) at 115200 baud. You'll see the temperature readings from your attached DS18B20 sensors print to the Serial Monitor.

![](https://cdn-learn.adafruit.com/assets/assets/000/130/364/medium800/adafruit_products_arduinoSerialMult.png?1717431075)

# Adafruit Chainable DS18B20 Extender Breakout

## Arduino Docs

# Adafruit Chainable DS18B20 Extender Breakout

## Downloads

## Files

- [DS18B20 Datasheet](https://cdn-learn.adafruit.com/assets/assets/000/130/351/original/DS18B20.pdf?1717421378)
- [EagleCAD PCB Files on GitHub](https://github.com/adafruit/Adafruit-Chainable-DS18B20-Extender-Breakout-PCB)
- [Fritzing object in the Adafruit Fritzing Library](https://github.com/adafruit/Fritzing-Library/blob/master/parts/Adafruit%20Chainable%20DS18B20%20Extender%20Breakout.fzpz)

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

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


## Primary Products

### Adafruit Chainable DS18B20 Extender Breakout - STEMMA JST PH 2mm

[Adafruit Chainable DS18B20 Extender Breakout - STEMMA JST PH 2mm](https://www.adafruit.com/product/5971)
One of the perks of working at adafruit is you get to request hardware - and you'll probably get fast turnaround! One of our [adafruit.io](http://adafruit.io) developers requested "an easy way to chain DS18B20 sensors for testing with <a...></a...>

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

## Featured Products

### DS18B20 Digital temperature sensor + extras

[DS18B20 Digital temperature sensor + extras](https://www.adafruit.com/product/374)
These 1-wire digital temperature sensors are fairly precise (±0.5°C over much of the range) and can give up to 12 bits of precision from the onboard digital-to-analog converter. They work great with any microcontroller using a single digital pin, and you can even connect multiple...

In Stock
[Buy Now](https://www.adafruit.com/product/374)
[Related Guides to the Product](https://learn.adafruit.com/products/374/guides)
### Waterproof 1-Wire DS18B20 Digital temperature sensor

[Waterproof 1-Wire DS18B20 Digital temperature sensor](https://www.adafruit.com/product/381)
This is a pre-wired and waterproofed (with heat shrink) version of a 1 Wire DS18B20 sensor. Handy for when you need to measure something far away, or in wet conditions. While the sensor is good up to 125°C the cable is jacketed in PVC so we suggest keeping it under 100°C. Because they...

In Stock
[Buy Now](https://www.adafruit.com/product/381)
[Related Guides to the Product](https://learn.adafruit.com/products/381/guides)
### High Temp Waterproof DS18B20 Digital temperature sensor + extras

[High Temp Waterproof DS18B20 Digital temperature sensor + extras](https://www.adafruit.com/product/642)
This is a pre-wired and waterproofed version of the DS18B20 sensor made with a PTFE wire cable. Handy for when you need to measure something far away, or in wet conditions. This sensor is a little more expensive than [the other waterproof version...](http://www.adafruit.com/products/381)

In Stock
[Buy Now](https://www.adafruit.com/product/642)
[Related Guides to the Product](https://learn.adafruit.com/products/642/guides)
### STEMMA JST PH 2mm 3-Pin to Male Header Cable - 200mm

[STEMMA JST PH 2mm 3-Pin to Male Header Cable - 200mm](https://www.adafruit.com/product/3893)
This cable will let you turn a JST PH 3-pin cable port into 3 individual wires with high-quality 0.1" male header plugs on the end. We're carrying these to match up with our Hallowing, for extending and connecting sensors or LEDs - and the wires are even color coded!

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

In Stock
[Buy Now](https://www.adafruit.com/product/3893)
[Related Guides to the Product](https://learn.adafruit.com/products/3893/guides)
### STEMMA JST PH 2mm 3-Pin to Female Socket Cable - 200mm

[STEMMA JST PH 2mm 3-Pin to Female Socket Cable - 200mm](https://www.adafruit.com/product/3894)
This cable will let you turn a JST PH 3-pin cable port into 3 individual wires with high-quality 0.1" female header sockets on the end. We're carrying these to match up with our Hallowing, for extending and connecting sensors or LEDs - and the wires are even color coded!

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

Out of Stock
[Buy Now](https://www.adafruit.com/product/3894)
[Related Guides to the Product](https://learn.adafruit.com/products/3894/guides)
### JST PH 2mm 3-pin Plug to Color Coded Alligator Clips Cable

[JST PH 2mm 3-pin Plug to Color Coded Alligator Clips Cable](https://www.adafruit.com/product/4030)
This cable will let you turn a JST PH 3-pin cable port into 3 individual wires with grippy mini alligator clips. We're carrying these to match up with any of our boards or breakouts with 3-pin 'STEMMA' connectors on them such as the&nbsp;<a...></a...>

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

## Related Guides

- [Sound Reactive LED Top Hat](https://learn.adafruit.com/sound-reactive-led-top-hat.md)
- [Adafruit Trinkey QT2040](https://learn.adafruit.com/adafruit-trinkey-qt2040.md)
- [ Adafruit DRV8833 DC/Stepper Motor Driver Breakout Board](https://learn.adafruit.com/adafruit-drv8833-dc-stepper-motor-driver-breakout-board.md)
- [Adafruit STEMMA & STEMMA QT](https://learn.adafruit.com/introducing-adafruit-stemma-qt.md)
- [Adafruit PCF8591 Basic 4 x ADC + DAC Breakout](https://learn.adafruit.com/adafruit-pcf8591-adc-dac.md)
- [PyPortal Winamp MP3 Player](https://learn.adafruit.com/pyportal-winamp-mp3-player.md)
- [Adafruit VCNL4200 Long Distance IR Proximity and Light Sensor](https://learn.adafruit.com/adafruit-vcnl4200-long-distance-ir-proximity-and-light-sensor.md)
- [Halloween Scream Box](https://learn.adafruit.com/halloween-scream-box.md)
- [UART Communication Between Two CircuitPython Boards](https://learn.adafruit.com/uart-communication-between-two-circuitpython-boards.md)
- [Adafruit STCC4 and SHT41 CO2, Temperature & Humidity Sensor](https://learn.adafruit.com/adafruit-stcc4-and-sht41-co2-temperature-humidity-sensor.md)
- [I Vote(d) Pin](https://learn.adafruit.com/i-vote-d-pin.md)
- [Pico W YBox3](https://learn.adafruit.com/pico-w-ybox3.md)
- [Adafruit STEMMA Piezo Driver Amp](https://learn.adafruit.com/adafruit-stemma-piezo-driver-amp.md)
- [Adafruit DS2484 I2C to 1-Wire Bus Adapter Breakout](https://learn.adafruit.com/adafruit-ds2484-i2c-to-1-wire-bus-adapter-breakout.md)
- [Adafruit Pixel Shifter](https://learn.adafruit.com/adafruit-pixel-shifter.md)
