DS18B20 with Raspberry Pi Pico 2

Wiring for the DS18B20 waterproof temperature probe on the Raspberry Pi Pico 2 (RP2350, 3.3 V logic), chosen with the same pin rules BoardPilot uses: default buses first, and no pins that are used for flash, USB, the debugger or booting.

Wiring

DS18B20 pinRoleRaspberry Pi Pico 2 pinNotes
VDDPower3V3(OUT)Red wire
DQOne-wire dataGP15Yellow (sometimes white) wire. Needs a 4.7 kΩ pull-up to 3.3 V
GNDGroundGNDBlack wire

Check before you power it on

Test code (Arduino)

// Library: OneWire, DallasTemperature
#include <OneWire.h>
#include <DallasTemperature.h>

OneWire bus(15);  // needs a 4.7 kΩ pull-up from DQ to VDD
DallasTemperature sensors(&bus);

void setup() {
  Serial.begin(115200);
  sensors.begin();
  Serial.print("Sensors found: ");
  Serial.println(sensors.getDeviceCount());
}

void loop() {
  sensors.requestTemperatures();
  Serial.println(sensors.getTempCByIndex(0));
  delay(1000);
}

Arduino board: rp2040:rp2040:rpipico2. If the board is not found, hold the BOOTSEL button while plugging in the USB cable.

Questions

Which Raspberry Pi Pico 2 pins do I use for the DS18B20?

VDD → 3V3(OUT), DQ → GP15, GND → GND.

Does the DS18B20 work with the Raspberry Pi Pico 2 at 3.3 V?

Yes: the DS18B20 runs at 3.3-5 V and the Raspberry Pi Pico 2 uses 3.3 V signals, so no level shifting is needed.

BoardPilot checks this wiring in 3D as you build it, and finds crossed or missing wires on the real board.

Download BoardPilot

Full Raspberry Pi Pico 2 pinout · DS18B20 waterproof temperature probe: all pins and data

The DS18B20 on other boards

Other parts on the Raspberry Pi Pico 2