Ingesta con Raspberry Pi Pico W

Envía lecturas DS18B20 desde una Pico W o Pico 2 W con CircuitPython, MicroPython o el core Arduino-Pico. La misma ingesta HTTPS de ProbeHarbor que el ESP32.

Vista superior de una placa microcontroladora Arduino Uno azul sobre fondo blanco
Las placas compatibles con Arduino ejecutan el sketch que consulta las sondas y publica JSON. Foto: Wikimedia Commons contributor. CC0

El ESP32 sigue siendo la placa por defecto del kit de congelación, pero no es el único microcontrolador con Wi‑Fi que puede hacer POST a ProbeHarbor. Una Raspberry Pi Pico W o Pico 2 W habla HTTPS desde el propio chip, usa el mismo esquema de cableado del DS18B20 que los sketches para ESP y se flashea sin Arduino IDE si prefieres la unidad CIRCUITPY de CircuitPython.

Esto es una sonda de temperatura. El claim puck es otro RP2040 (Waveshare RP2040-Zero) que demuestra presencia por USB. No mezcles esos firmwares.

Piezas

Piezas para una sonda de congelación con Pico W
Pieza Por qué Comprar
Pico W o Pico 2 W Wi‑Fi CYW43439 y TLS integrados. La Pico 2 W (RP2350) es la mejora directa y compatible. Adafruit Pico W · Pico 2 W
DS18B20 impermeable Sonda para tuberías o sótano ventilado; funciona bajo cero. Datos en GP4. Adafruit DS18B20 · Amazon
Resistencia de 4,7 kΩ Pull-up desde los datos del DS18B20 a 3,3 V. En una Pico, no alimentes la sonda con 5 V. 4,7k en Amazon

Cableado

  • DS18B20 VDD → Pico 3.3V (no VBUS / 5 V)
  • DS18B20 GND → GND
  • Datos del DS18B20 → GP4, con 4,7k entre datos y 3,3 V

GP4 es GPIO 4, el mismo número de pin que usan los sketches para ESP32. Tras el primer POST, ProbeHarbor importa temp1 automáticamente.

1. CircuitPython (recomendado)

  1. Abre Dashboard → Devices, crea un dispositivo push y descarga CircuitPython code.py (con la URL de ingesta ya rellenada).
  2. Mantén pulsado BOOTSEL, conecta el USB y copia el UF2 de CircuitPython para Pico W o Pico 2 W en la unidad RPI-RP2. La placa se vuelve a montar como CIRCUITPY.
  3. Instala las bibliotecas: circup install adafruit_requests adafruit_connection_manager adafruit_ds18x20 adafruit_onewire
  4. Define WIFI_SSID / WIFI_PASS y guarda como code.py.
  5. El monitor serie debería mostrar wifi ok y luego POST 200.

Ejemplo del repositorio: sketches/circuitpython/ds18b20_ingest.py.

2. MicroPython

Flashea un UF2 de MicroPython para Pico W y copia el MicroPython .py de Devices como main.py (Thonny / mpremote). El mismo archivo también funciona en el ESP32. El pin 4 es GP4.

3. Arduino IDE (núcleo de Earle Philhower)

Instala el paquete Raspberry Pi Pico/RP2040 de Earle Philhower, no el núcleo mbed RP2040 de Arduino. Selecciona Pico W o Pico 2 W, abre el .ino descargado, configura el Wi‑Fi y flashea. Bibliotecas: OneWire, DallasTemperature.

Lo que no vamos a añadir (por ahora)

Cualquier cosa que pueda hacer POST de JSON por HTTPS ya funciona sin un sketch oficial: una Raspberry Pi con Linux y requests, ESPHome o un puente MQTT→HTTP en la LAN. Estas familias necesitan hardware adicional o una pasarela, así que se quedan fuera del panel de flasheo de Devices:

  • Pico sin W / RP2040-Zero: sin Wi‑Fi. Usa Ethernet/ESP-01 más un relé TLS, o deja la Zero como claim puck.
  • nRF52 / nRF52840 (XIAO BLE, Feather nRF52840): Bluetooth o Thread, no HTTPS nativo por Wi‑Fi.
  • STM32 Nucleo-F767ZI ya tiene soporte oficial: Zephyr C + Ethernet integrado (relé TLS en la LAN, ni Arduino ni Python).
  • CH32V307V-EVT ya tiene soporte oficial: WCHNET C + Ethernet integrado (RISC-V QingKe, relé TLS en la LAN).
  • Arduino Nano 33 IoT / UNO R4 WiFi: siguen siendo Arduino; los ejemplos para ESP/Pico ya cubren Wi‑Fi con TLS si adaptas la biblioteca WiFi.

Relacionado

Los enlaces de compra de Amazon pueden incluir una etiqueta de afiliado (Associates). Los enlaces de Adafruit y otros vendedores son directos (Adafruit no tiene programa de afiliados). ProbeHarbor puede recibir una comisión por compras válidas en Amazon sin coste adicional para ti.

Preguntas frecuentes

¿Una Raspberry Pi Pico W puede enviar datos a ProbeHarbor?
Sí. Pico W y Pico 2 W hablan HTTPS en el propio chip. Descarga el code.py de CircuitPython (o el sketch de MicroPython / Arduino) desde Dashboard → Devices, conecta un DS18B20 a GP4 con una pull-up de 4.7k a 3.3V y busca POST 200 en el monitor serie. Guía: probeharbor.dev/about/pico-w-ingest.

¿Una Pico W es lo mismo que el claim puck?
No. El claim puck es un Waveshare RP2040-Zero por USB para la presencia en el espacio y los LED de estado. La Pico W es una sonda de temperatura con Wi‑Fi. No flashees el firmware claim-puck en una sonda de congelación ni al revés.

¿Compro una Pico W o un ESP32?
El ESP32 sigue siendo el kit de congelación predeterminado (DevKits más baratos, ESPHome, ejemplos OTA). Elige la Pico W si ya tienes una, prefieres arrastrar y soltar con CircuitPython o quieres RP2040/RP2350. Ambos envían el mismo JSON de ingesta.