IoT-температура и влажность на Pico W (DHT22)
Следи за температурой и влажностью в комнате вживую на телефоне откуда угодно. Этот проект — пошаговое руководство к IoT-шаблону «Температура и влажность» в приложении, собранному на Raspberry Pi Pico W и DHT22. Открой Мастерская › Устройства › Добавить устройство, выбери плату Pico W и шаблон «Температура и влажность»; Ohmi подготовит код с твоим собственным ключом устройства. Код на этой странице — пример: ключ и данные Wi-Fi в нём заглушки.

Управляй этим устройством из приложения
Подключи ESP32 или Raspberry Pi Pico W к Wi-Fi — и включай, выключай и смотри показания в реальном времени с телефона. Код готовит Ohmi, тебе остаётся ввести данные Wi-Fi и загрузить его.
Шаблон в приложении: Температура и влажность
- Где это в приложении?Добавь новое устройство на вкладке «Утилиты» или в разделе «Мастерская › Устройства» и выбери этот шаблон.
- Библиотека ArduinoОткрой менеджер библиотек в Arduino IDE, найди BlueGraysIoT и установи её.
В бесплатном плане — 1 устройство, 1 график и история за 24 часа. С Premium — больше устройств и графиков и более длинная история.
Схема

Исходный код
1// ─────────────────────────────────────────
2// BlueGrays · bluegrays.com
3// IoT-температура и влажность на Pico W (DHT22)
4// ─────────────────────────────────────────
5// IoT-шаблон "Температура и влажность" из приложения BlueGrays: DHT22
6// каждые 2 секунды отправляет в приложение температуру и влажность в
7// комнате, а значения складываются в график. Настоящий код Ohmi готовит в
8// приложении с твоим собственным ключом устройства (Мастерская ›
9// Устройства › Добавить устройство); код здесь — пример, ключ устройства и
10// данные Wi-Fi — заглушки. Пакет платы: Raspberry Pi Pico (Earle
11// Philhower). Library Manager: BlueGraysIoT (с зависимостями). Плата
12// подключается только к сетям Wi-Fi 2.4 GHz.
13//
14// Пины:
15// GP16 -> DHT22 OUT (данные)
16// 3V3, GND -> DHT22 VCC, GND
17// ESP32: DHT22 OUT GPIO4
18
19/*
20 * Температура и влажность · BlueGrays IoT
21 * BlueGrays · bluegrays.com
22 * Не делись этим кодом: в нём ключ твоего устройства и пароль Wi-Fi.
23 */
24
25#include <BlueGraysIoT.h>
26#include <DHT.h>
27
28const char *DEVICE_KEY = "YOUR_DEVICE_KEY";
29const char *WIFI_NAME = "YOUR_WIFI_NAME";
30const char *WIFI_PASSWORD = "YOUR_WIFI_PASSWORD";
31
32BlueGraysIoT bg(DEVICE_KEY);
33
34DHT dht(16, DHT22);
35unsigned long lastReadMs = 0;
36
37void setup() {
38 Serial.begin(115200);
39 dht.begin();
40 bg.setDeadband("sicaklik", 0.1);
41 bg.setDeadband("nem", 1.0);
42 bg.setDebug(Serial);
43 bg.setLanguage(BG_LANG_EN);
44 bg.begin(WIFI_NAME, WIFI_PASSWORD);
45}
46
47void loop() {
48 bg.loop(); // избегай здесь долгих вызовов delay()
49 if (millis() - lastReadMs >= 2000) {
50 lastReadMs = millis();
51 bg.send("sicaklik", dht.readTemperature());
52 bg.send("nem", dht.readHumidity());
53 }
54}
55Частые вопросы
Можно ли загрузить код с этой страницы прямо на плату?
Можно, но подключения не будет: ключ устройства и данные Wi-Fi в нём — заглушки. В приложении открой Мастерская › Устройства › Добавить устройство, выбери плату Pico W и шаблон «Температура и влажность»; Ohmi подготовит код с твоим ключом, именем сети и паролем. Скопируй этот код и загрузи его. Полный код позже можно посмотреть в разделе Устройство › Код и ключ.
Как загрузить код на Pico W? Это MicroPython?
Этот проект работает на Arduino C++, а не на MicroPython. В Arduino IDE установи из менеджера плат пакет «pico» (Raspberry Pi Pico/RP2040, Earle Philhower) и выбери Raspberry Pi Pico W в меню Инструменты (Tools) › Плата (Board). Если это первая загрузка на плату или порт не появляется, удерживай кнопку BOOTSEL, подключая USB-кабель; Arduino IDE увидит плату как диск и загрузит на неё код. Установи BlueGraysIoT со всеми зависимостями из менеджера библиотек.
Работает ли это с ESP32?
Да. При добавлении устройства выбери плату ESP32; код остаётся тем же, меняется только пин датчика: OUT датчика DHT22 идёт к GPIO4, VCC — к 3V3, а GND — к GND. В Arduino IDE установи пакет «esp32» из менеджера плат. Схема и фото на этой странице сделаны с Pico W.
Какую историю видно на графике?
Значения хранятся на сервере и отображаются в приложении как текущее значение и график. Насколько далеко назад можно смотреть, зависит от твоего плана; премиум хранит историю гораздо дольше. Плата читает каждые 2 секунды, но отправляет только когда температура меняется на 0,1 °C или влажность на 1 пункт, поэтому график остаётся чистым, а плата не нагружает сервер зря.
