#373PrincipianteIoT

Pico W Temperatura y Humedad IoT (DHT22)

Mira en directo en el móvil la temperatura y la humedad de tu habitación. Este proyecto es la guía paso a paso de la plantilla IoT Temperatura y humedad de la app, montada con una Raspberry Pi Pico W y un DHT22. Ve a Taller › Dispositivos › Añadir dispositivo, elige Pico W como placa y Temperatura y humedad como plantilla; Ohmi prepara el código con tu propia clave de dispositivo. El código de esta página es un ejemplo: la clave y los datos del Wi-Fi son de relleno.

0.0(0)
Pico W Temperatura y Humedad IoT (DHT22)
Si te preguntas en vacaciones si tu casa se está helando, si el cuarto del bebé se calienta demasiado o cuándo sube la humedad del baño, este proyecto es para ti. La pequeña placa envía al móvil cada pocos segundos la temperatura y la humedad que lee del sensor; los valores se acumulan en un gráfico y ves todo el día de un vistazo. La app prepara el código por ti; tú conectas tres cables y lo subes. Sin soldar y sin corriente de casa: el comienzo más seguro para tu primer sensor IoT.
IoT · control remotoTu primer dispositivo es gratis

Controla este dispositivo desde la app

Conecta tu ESP32 o Raspberry Pi Pico W al wifi, enciéndelo y apágalo desde el móvil y mira las lecturas en directo. Ohmi prepara el código; tú solo pones los datos de tu wifi y lo subes.

Plantilla en la app: Temperatura y humedad

  • ¿Dónde está en la app?Añade un dispositivo nuevo desde la pestaña Herramientas o en Taller › Dispositivos y elige esta plantilla.
  • Librería de ArduinoAbre el Gestor de librerías en el Arduino IDE, busca BlueGraysIoT e instálala.
Descarga la app gratis

El plan gratis incluye 1 dispositivo, 1 gráfica y 24 horas de historial. Con Premium tienes más dispositivos, más gráficas y un historial más largo.

Diagrama del circuito

Pico W Temperatura y Humedad IoT (DHT22) - Circuit

Código fuente

C++ (Arduino IDE)
1// ─────────────────────────────────────────
2//   BlueGrays · bluegrays.com
3//   Pico W Temperatura y Humedad IoT (DHT22)
4// ─────────────────────────────────────────
5// La plantilla IoT "Temperatura y humedad" de la app BlueGrays: el DHT22
6// envía la temperatura y la humedad de la habitación a la app cada 2
7// segundos y los valores se van acumulando en un gráfico. Ohmi prepara el
8// código real en la app con tu propia clave de dispositivo (Taller ›
9// Dispositivos › Añadir dispositivo); el código de aquí es un ejemplo, la
10// clave del dispositivo y los datos del Wi-Fi son de relleno. Paquete de
11// placa: Raspberry Pi Pico (Earle Philhower). Gestor de bibliotecas:
12// BlueGraysIoT (con sus dependencias). La placa solo se conecta a redes
13// Wi-Fi de 2,4 GHz.
14//
15// Pines:
16//   GP16 -> DHT22 OUT (datos)
17//   3V3, GND -> DHT22 VCC, GND
18//   ESP32: DHT22 OUT GPIO4
19
20/*
21 * Temperatura y humedad · BlueGrays IoT
22 * BlueGrays · bluegrays.com
23 * No compartas este código: contiene la clave de tu dispositivo y la contraseña del Wi-Fi.
24 */
25
26#include <BlueGraysIoT.h>
27#include <DHT.h>
28
29const char *DEVICE_KEY = "TU_CLAVE_DE_DISPOSITIVO";
30const char *WIFI_NAME = "TU_RED_WIFI";
31const char *WIFI_PASSWORD = "TU_CONTRASENA_WIFI";
32
33BlueGraysIoT bg(DEVICE_KEY);
34
35DHT dht(16, DHT22);
36unsigned long lastReadMs = 0;
37
38void setup() {
39  Serial.begin(115200);
40  dht.begin();
41  bg.setDeadband("sicaklik", 0.1);
42  bg.setDeadband("nem", 1.0);
43  bg.setDebug(Serial);
44  bg.setLanguage(BG_LANG_EN);
45  bg.begin(WIFI_NAME, WIFI_PASSWORD);
46}
47
48void loop() {
49  bg.loop();  // evita aquí los delay() largos
50  if (millis() - lastReadMs >= 2000) {
51    lastReadMs = millis();
52    bg.send("sicaklik", dht.readTemperature());
53    bg.send("nem", dht.readHumidity());
54  }
55}
56

Preguntas frecuentes

¿Puedo subir el código de esta página directamente a la placa?

Puedes, pero no se conectará: la clave del dispositivo y los datos del Wi-Fi que lleva son de relleno. En la app ve a Taller › Dispositivos › Añadir dispositivo, elige Pico W como placa y la plantilla Temperatura y humedad; Ohmi prepara el código con tu clave, el nombre de tu red y tu contraseña. Copia ese código y súbelo. Más tarde puedes ver el código completo en Dispositivo › Código y clave.

¿Cómo lo subo a la Pico W? ¿Es MicroPython?

Este proyecto funciona con Arduino C++, no con MicroPython. En Arduino IDE instala el paquete "pico" (Raspberry Pi Pico/RP2040, Earle Philhower) desde el Gestor de placas y elige Raspberry Pi Pico W en Herramientas › Placa. Si es la primera subida o no aparece ningún puerto, mantén pulsado el botón BOOTSEL al conectar el cable USB; Arduino IDE ve la placa como una unidad y sube el código. Instala BlueGraysIoT con sus dependencias desde el Gestor de bibliotecas.

¿Funciona también con un ESP32?

Sí. Al añadir el dispositivo elige ESP32 como placa; el código es el mismo y solo cambia el pin del sensor: el OUT del DHT22 va a GPIO4, VCC a 3V3 y GND a GND. En Arduino IDE instala el paquete "esp32" desde el Gestor de placas. El circuito y la foto de esta página se hicieron con una Pico W.

¿Cuánto historial veo en el gráfico?

Los valores se guardan en el servidor y aparecen en la app como valor en directo y gráfico. Hasta dónde puedes mirar atrás depende de tu plan; premium guarda un historial mucho más largo. La placa lee cada 2 segundos, pero solo envía cuando la temperatura cambia 0,1 °C o la humedad 1 punto; así el gráfico queda limpio y la placa no ocupa el servidor sin motivo.