Meteo P4

Техническое руководство пользователя

Платформа: ESP32-P4 + ESP32-C6
Прошивка: p4 22.31.0641
Дисплей: JC1060P470C 1024×600 MIPI-DSI
SDK: ESP-IDF 6.0.1 / LVGL v9

Обзор устройства

Meteo P4 — многофункциональная метеостанция на базе ESP32-P4. Устройство отображает данные внутренних и внешних датчиков, GNSS-координаты, авиационный прогноз погоды, часы с синхронизацией по спутникам и NTP, а также воспроизводит аудио с SD-карты и интернет-радио.

Общий вид устройства

Технические характеристики

ПараметрЗначение
Основной процессорESP32-P4, 2 ядра, до 360 МГц
Wi-Fi / BluetoothESP32-C6 (отдельный чип, ESP-Hosted через SDIO)
Flash-память16 МБ (DIO, 40 МГц)
PSRAM32 МБ (HEX, 200 МГц)
ДисплейJC1060P470C, 1024×600 пкс, MIPI-DSI, 2 data lanes
Сенсорный экранGT911 (I2C)
Аудио кодекES8311 (I2C + I2S)
SD-картаSDMMC 4-bit, FAT32 с LFN
GNSSUART, 38400/9600/57600/115200 бод (автоопределение)
RS485 (внешние датчики)Modbus RTU, 9600 бод, half-duplex
Внутренние датчикиI2C шина: SHT41, BME280/BMP280, SCD41, SGP41, INA226

Схема подключений

Разъёмы и элементы платы JC-ESP32P4-M3

На рисунке ниже обозначены все разъёмы и элементы управления платы (вид сзади).

Вид платы сзади с обозначениями
№ОбозначениеНазначение в Meteo P4
1BOOT buttonКнопка входа в режим прошивки (удерживать при сбросе)
2Reset buttonПерезапуск устройства
3MX 1.25 2P — SpeakerПодключение динамика (аудио выход ES8311)
4TF card slotMicro SD карта (FAT32) — логи датчиков, аудиофайлы
5MX 1.25 2P — Li-BatteryЛитиевый аккумулятор (3.7 В, контроль заряда через INA226)
6Battery buttonКнопка включения питания от батареи
7Full-speed Type-CUSB Full-Speed — загрузка прошивки (esptool), Serial/JTAG отладка
8MX 1.25 4P — UART1GNSS модуль (TX/RX/3.3V/GND). GPIO37=TX, GPIO38=RX
9High-speed Type-CUSB High-Speed (ESP32-P4 native USB)
10MX 1.25 4P — UARTДополнительный UART (резерв / отладка)
11MX 1.25 4P — RS-485RS-485 шина (A+/B−/3.3V/GND) — уличный SHT30 и анемометр
12SH 1.0 4P — I2CI2C шина (SDA/SCL/3.3V/GND) — датчики SHT41, BME280, SCD41, SGP41, INA226
13100 Mbps Ethernet PortПроводная сеть (Ethernet 100Base-T)
14RTC Battery HolderБатарейка CR2032 — часы реального времени (RTC)
1530P 0.5-FPC MIPIШлейф дисплея JC1060P470C (1024×600, MIPI-DSI) — не отключать
16JC-ESP32P4-M3Основной модуль: ESP32-P4 + ESP32-C6 Wi-Fi, 32 МБ PSRAM, 16 МБ Flash
176P 0.5-FPC TouchШлейф тачскрина GT911 (I2C) — не отключать
182×13 2.54 mm Pin HeaderРасширительный разъём (GPIO, питание, SPI и др.)

Функциональная схема подключений

  ┌─────────────────────────────────────────────────────────────────┐
  │                    ПЛАТА JC-ESP32P4-M3                          │
  │                                                                 │
  │  №12 SH1.0 I2C ─── SDA/SCL ──── SHT41   (0x44/0x45) T°/RH%   │
  │                            ──── BME280  (0x76)      P/T°/RH%  │
  │                            ──── SCD41   (0x62)      CO₂        │
  │                            ──── SGP41   (0x59)      VOC/NOx    │
  │                            ──── INA226  (0x40)      V/I/P      │
  │                                                                 │
  │  №8  MX1.25 UART1 ─── TX/RX ──── GNSS модуль (38400 бод)      │
  │  №11 MX1.25 RS485 ─── A+/B− ──── MAX485 ──┬── SHT30  (0x01)  │
  │                                            └── Анемометр (0x03)│
  │  №3  MX1.25 2P    ─────────────── Динамик (ES8311 аудио)       │
  │  №5  MX1.25 2P    ─────────────── Аккумулятор Li-Ion 3.7 В     │
  │  №4  TF slot      ─────────────── SD карта (FAT32)             │
  │  №13 Ethernet     ─────────────── Сеть 100 Мбит/с              │
  │  №7  Type-C FS    ─────────────── ПК (прошивка / отладка)      │
  │  №15 FPC 30P      ─────────────── Дисплей 1024×600 MIPI-DSI    │
  │  №17 FPC 6P       ─────────────── Тачскрин GT911               │
  │  №14 CR2032       ─────────────── RTC (часы при отключении)     │
  └─────────────────────────────────────────────────────────────────┘
Шлейфы дисплея и тачскрина (№15, №17) подключены с завода. Не отсоединяйте их без необходимости — разъёмы FPC хрупкие.
Прошивка через USB: используйте разъём №7 (Full-speed Type-C). При прошивке удерживайте кнопку BOOT (№1), затем нажмите Reset (№2), после чего отпустите BOOT.

Назначение GPIO

GPIOНазначениеИнтерфейс
7I2C SDA — все внутренние датчики, тач GT911, аудио ES8311I2C
8I2C SCLI2C
9I2S DOUT (аудио выход на ES8311)I2S
10I2S WS (Word Select)I2S
11PA Enable — включение усилителя мощностиGPIO
12I2S BCLK / SCLK (Bit Clock)I2S
13I2S MCLK (Master Clock на ES8311)I2S
20GNSS PPS — импульс секунды (прерывание по обоим фронтам, GPIO_INTR_ANYEDGE)GPIO INT
23Подсветка дисплея (LEDC PWM)LEDC
26RS485 TX (MAX485 вход D)UART3
27RS485 RX (MAX485 выход R)UART3
37GNSS TX (данные от GNSS модуля)UART1
38GNSS RX (команды к GNSS модулю)UART1
39SD D0SDMMC
40SD D1SDMMC
41SD D2SDMMC
42SD D3SDMMC
43SD CLKSDMMC
44SD CMDSDMMC
48I2S DIN (аудио вход с микрофона)I2S
53Измерение напряжения батареи (ADC2 CH4, делитель 100 кОм / 140 кОм)ADC
54Сброс ESP32-C6 (Wi-Fi сопроцессор, active-high)GPIO

Датчики I2C (внутренние)

Все внутренние датчики подключены к одной шине I2C (GPIO7/8, 400 кГц). Опрос каждые 2 секунды.

ДатчикАдресИзмеряетЕдиницы
SHT410x44 или 0x45 (автоопределение)Температура воздуха внутри, влажность°C, %
BME280 (chip_id=0x60)0x76Атм. давление, температура, влажностьгПа, °C, %
BMP280 (chip_id=0x58)0x76Атм. давление, температурагПа, °C
SCD410x62Концентрация CO₂ppm
SGP410x59VOC-индекс, NOx-индекс1–500
INA2260x40Напряжение шины, ток, мощность (батарея)В, мА, мВт
Автоопределение датчика давления: устройство автоматически определяет наличие BMP280 или BME280 по chip_id при старте. Используется первый обнаруженный на адресе 0x76.

Датчики RS485 (внешние)

Внешние датчики подключаются через шину RS485 (Modbus RTU, 9600 бод, half-duplex). Используется MAX485 или аналог. Полярность шины: A(+) / B(−).

  Meteo P4               MAX485                 RS485 шина
  ──────────             ──────────             ──────────────
  GPIO26 TX ──────────── D (вход)
  GPIO27 RX ──────────── R (выход)               A (+) ────── SHT30 уличный (addr 0x01)
                         A ─────────────────────             ────── Анемометр   (addr 0x03)
                         B ─────────────────────
                         DE/RE ── аппаратное управление       B (−) ────── ...
УстройствоModbus адресОпросИзмеряет
SHT30 RS485 (уличный)0x015 секундТемпература и влажность снаружи
Анемометр0x031 секундаСкорость ветра (м/с), EMA-фильтрация α=0.35

Распиновка разъёма RS485 (№11, MX 1.25 4P)

Разъём RS485 — распиновка
Контакт на платеЦвет проводаНазначение
GND■ ЗелёныйЗемля (общий)
B■ ЖёлтыйRS485 B (−)
A■ ЧёрныйRS485 A (+)
5V■ РозовыйПитание датчика 5В
Длина кабеля RS485: в комплекте кабель 5 м. Максимально допустимая длина при скорости 9600 бод — до 100 м. При длине более 50 м рекомендуется добавить терминирующий резистор 120 Ом между A и B на дальнем конце шины.
Уличный датчик SHT30 RS485

Уличный датчик T°/RH% SHT30 (RS485, Modbus addr 0x01)

Анемометр RS485

Анемометр 3-чашечный (RS485, Modbus addr 0x03)

Питание и батарея

Измерение батареи

Напряжение батареи измеряется через резистивный делитель на GPIO53 (ADC2, канал 4). Данные отображаются в плитке Батарея на экране Настроек.

Параметр INA226Значение
Шунтовый резистор0.100 Ом
LSB тока0.1 мА
Порог окончания зарядаТок ≤ 20 мА И напряжение ≥ 4.10 В
Питание дисплея: MIPI DPHY питается от внутреннего LDO VO3 (2500 мВ). Не подавайте питание на MIPI-разъём извне.

Переключение экранов осуществляется свайпами (горизонтальный жест) и тапами по элементам управления. Анимация перехода: 220 мс.

Карта переходов (свайпы)

Текущий экранСвайп влево →Свайп вправо ←
ГлавныйДетали (Датчики)GNSS
Детали (Датчики)ПлеерГлавный
GNSSГлавный—
Графики—Детали (Датчики)
Плеер—Детали (Датчики)
Локальный прогноз—Настройки
Часовой прогноз (5 дней)—Главный
Сценарии / Будильник—Главный
Wi-Fi (сети)—Главный
Wi-Fi (ввод пароля)—Wi-Fi (сети)
Настройки—Главный
Сервис—Настройки
Диагностика—Настройки
О системе—Настройки
LED-индикация—Настройки
Сервер (MQTT)—Настройки

Переходы по нажатию

Главный экран

Главный экран

Верхняя строка (шапка)

Левая колонка — погода и датчики

  • Иконка погоды + «Погодные данные»
  • Температура снаружи (крупно, °C)
  • Ощущается + скорость ветра
  • Город + источник (GNSS)
  • УЛИЦА T° (RS485) / ДОМА T° (локальный)
  • ВЛАЖН. УЛИЦА % (RS485) / ВЛАЖН. ДОМА % (локальный)

Центр — часы и проветривание

  • Время ЧЧ:ММ:СС (сплит-флап стиль, крупные цифры)
  • Дата: ДД.ММ.ГГГГ
  • День недели
  • Иконки синхронизации: 🏠 GNSS / 📶 NTP
  • Карточка ПРОВЕТРИВАНИЕ: статус + метрики CO₂/VOC/Давл.
  • ВОСХОД / ЗАКАТ (время)

Правая колонка — прогноз и луна

  • Заголовок ПРОГНОЗ НА 5 ДНЕЙ + кнопка ▶
  • 5 строк: день нед. + иконка + направление и скорость ветра + МАКС/МИН °C
  • Фаза луны (иконка + название фазы)
  • Даты: Полнолуние / Новолуние

Прогноз на 5 дней

В нижней части экрана — 5 строк с прогнозом. Каждая строка содержит:

Нажатие на строку открывает Прогноз на несколько дней с детализацией.

Кнопка «Авиа-прогноз» открывает авиационный экран.

Давление и тренд

Давление отображается в мм рт. ст. Тренды:

ТекстПорог
Быстро растёт+3 гПа за 3 часа
Растёт+0.5 гПа за 3 часа
Стабильнов пределах ±0.5 гПа
Падает−0.5 гПа за 3 часа
Быстро падает−3 гПа за 3 часа

Карточка вентиляции

На основании CO₂, VOC, влажности устройство выдаёт рекомендацию по вентиляции помещения.

Фаза луны

Отображается текущая фаза, дата ближайшего полнолуния и новолуния, а также восход и закат солнца.

Детальные данные (Датчики)

Экран Датчики

Доступ: свайп влево с Главного экрана. Заголовок: ДАТЧИКИ. Кнопки в правом верхнем углу: ВОЗДУХ / ВЛАЖН. / Главный.

Верхний ряд — плитки датчиков

ПлиткаИсточникЕдиницаОценка качества
CO₂SCD41ppmНорма / Повышен / Высокий / Критично
VOCSGP41индекс 1–500норма / умеренный / высокий
NOxSGP41индекс 1–500чисто / повышен
ВЛАЖНОСТЬSHT41 / BME280%норма / сухо / влажно
УЛИЦАRS485 SHT30°Cисточник: RS485
ДОМSHT41 / BME280°Cисточник: Локальный датчик

Карточка ПРОВЕТРИВАНИЕ

Комплексная рекомендация на основе CO₂, VOC, влажности и уличной температуры — гистерезисная, 6 уровней (по убыванию приоритета):

УровеньЗаголовокТриггерЦвет
1Проветрить сейчасCO₂ критический (≥ 1400 ppm с гистерезисом до 1350)Розовый
2Нужно проветритьVOC-индекс высокийОранжевый
3Желательно проветритьCO₂ warn (≥ 1000 ppm)Оранжевый
4Снизить влажностьВлажность в помещении выше порогаОранжевый / Циан
5Пока не нужноСухой воздух в помещенииЦиан
6Воздух в нормеВсе параметры в нормеЗелёный

Под заголовком — текстовая подсказка с конкретной рекомендацией по длительности проветривания (учитывает уличную температуру: коротко при морозе/жаре, дольше в норме).

Плитка ШУМ (под основным рядом)

Узкая горизонтальная полоса с заголовком ШУМ, шкалой (0–100) и значением дБ-индекса. Данные с микрофона ES8311 через компонент noise_meter.

Барограф (ДАВЛЕНИЕ | БАРОГРАФ 12 ЧАСОВ)

Крупное текущее давление в мм рт. ст. + тренд текстом («тенденция давления» / «Стабильно» / «Растёт» / «Падает» и т.д., см. таблицу трендов на Главном).
График: точки за 12 часов с отметками времени (−12ч / −10ч / −8ч / −6ч / −4ч / −2ч / сейчас). Справа: макс 12ч:, мин 12ч:, норма: (значение по умолчанию «750»).

Кнопки перехода

Экран GNSS

Экран GNSS

Доступ: свайп вправо с Главного экрана. Шапка экрана: чип METEO P4 (циан), затем сегмент даты/времени --.-- --:--, в центре — заголовок GNSS, далее чип DGPS: нет/готов, чип PPS: с двумя LED-сегментами (мигают каждую секунду), кнопка «Главный».

Верхняя полоса — СТАТУС GNSS

Плитки координат

ПлиткаСодержимое
ШИРОТАXX.XXXXXX° (десятичные градусы)
ДОЛГОТАXX.XXXXXX°
ТОЧНОСТЬ~ X.X м (HDOP X.X)
ВЫСОТАXX.X м (над уровнем моря)
СПУТНИКИN (количество в фиксе)

Нижние три блока

НАВИГАЦИЯ

Готова / Не готова
N спутн. HDOP X.X

ВРЕМЯ

Источник: GNSS/PPS / NTP / нет
«Системные часы идут от GNSS/PPS»

ЛОКАЦИЯ, СИСТЕМЫ И ВРЕМЯ

Локация: город (из геокодирования)
Системы: GPS / BeiDou / GLONASS / Galileo
Системное время + GNSS UTC

Шкала HDOP (отображается на экране GNSS)

HDOPОценкаЦвет
< 1.0ОтличноеЗелёный
< 2.0ХорошееГолубой
< 5.0УдовлетворительноеЖёлтый
≥ 5.0ПлохоеКрасный

Локальный прогноз

Доступ: плитка «Локальный прогноз» в Центре управления (Настройки). Реальный заголовок экрана: ЛОКАЛЬНЫЙ ПРОГНОЗ.

Экран локального прогноза
Все расчёты основаны на локальных датчиках. В шапке справа — метка времени последнего расчёта ДАТЧИКИ --:--. Возврат — свайп вправо (на Настройки).

Карточка A — ТЕКУЩИЕ / ОЦЕНКА

Подпись в UIОписание
TТемпература воздуха (°C)
Td точка росыТочка росы (°C) — температура начала конденсации
T-Td спредРазница T − Td: чем меньше, тем выше вероятность тумана/облачности
RH влажностьОтносительная влажность (%)
P0~Давление, приведённое к уровню моря (мм рт. ст.) — аналог QNH
Баро-высота~Барометрическая высота (м) — аналог PA
Плотн. высота~Плотностная высота (м) — аналог DA
T - стандарт~Отклонение от стандартной атмосферы ISA (°C)
Видимость~Горизонтальная видимость (м или км)
База облаков~Нижняя граница облаков (м AGL) — аналог НГО

Карточка B — ОПАСНОСТИ

Каждый вид опасности оценивается цветом:

УровеньЦветЗначение
NONEСерыйОпасности нет
LOWЗелёныйНизкий риск
MODERATEЖёлтыйУмеренный риск
HIGHОранжевыйВысокий риск
SEVEREКрасныйОпасные условия

Оцениваемые в коде явления (8 строк): Туман / дымка, Гололёд / мороз, Гроза, Ветер / шквал, Осадки, Падение давления, Жара / humidex, Потепление / ночь. Под ними — отдельная строка Диапазон видимости~.

Карточка C — ЛОКАЛЬНЫЙ ПРОГНОЗ

Три горизонта: Сейчас / +1 час / +3 часа. Под колонками — компактные строки с числовыми значениями: для +1ч — T / Td / Вид., для +3ч — T / Вид. / Обл.

Карточка D — МОДЕЛЬ

Узкая полоса в нижней части: метка МОДЕЛЬ, сводный текст модели (например HH:MM | ожидание данных) и справа метка Точка: локально или географический ориентир.

Полноценного синтетического METAR и базы аэропортов в текущей сборке нет — раздел упрощён до «Точка: локально».

Карточка E — ТРЕНД ДАВЛЕНИЯ (12 ч)

Заголовок ТРЕНД ДАВЛЕНИЯ (12 ч). Числовые дельты: 1ч: -- гПа, 3ч: -- гПа. Текстовая интерпретация Ожидание… / тренд. Барограф за 12 часов с точкой каждые ~15 минут.

«Окон по периодам суток» (Ночь / Утро / День / Вечер с категорией, видимостью, НГО, ветром, риском) в текущей сборке нет.

Часовой прогноз (5 дней)

Доступ: нажатие кнопки ▶ в блоке «ПРОГНОЗ НА 5 ДНЕЙ» Главного экрана или клик по строке дня. Реальный заголовок экрана: ЧАСОВОЙ ПРОГНОЗ. Кнопка «Главный» в правом верхнем углу — возврат.

Экран локального прогноза

Верхний ряд — выбор дня

5 плиток с днями недели и датами. Активный день подсвечен синей рамкой. Каждая плитка: день недели, число, месяц, МИН/МАКС температура.

Нижняя панель — детали выбранного дня

Левый блок — сводка дня

  • Город (из GNSS геопозиции)
  • Иконка погоды
  • Максимальная температура (крупно)
  • День недели и дата
  • МИН / МАКС температура
  • Восход и Закат солнца
  • Краткое описание дня (текст)

Правый блок — почасовая таблица

8 колонок: 00:00 / 03:00 / 06:00 / 09:00 / 12:00 / 15:00 / 18:00 / 21:00

Строки таблицы:

  • Иконки погодных явлений по часам
  • Температура (°C)
  • Ощущается (°C)
  • Давление (мм рт. ст.)
  • Влажность (%)
  • Ветер (направление / м/с)
  • Осадки (%)

Графики

Доступ: кнопки «Графики воздуха» или «Графики влажности» на экране Деталей.

Экран Графики

Кнопки-фильтры (верхняя панель)

Графики (вкладка ВОЗДУХ)

ГрафикЦветПоказываетНад графиком
CO₂ЗелёныйКонцентрация CO₂ (ppm)мин / макс / сейчас
VOCФиолетовыйVOC-индекс (1–500)мин / макс / сейчас
ВЕТЕР м/сЖёлтыйСкорость ветра (RS485 анемометр)мин / макс / сейчас

Каждый график: линия с точками на отсчётах, вертикальные пунктирные тени, автомасштаб по оси Y. Данные хранятся в LP-SRAM (переживает перезагрузку), резервная копия — в SPIFFS и на SD-карте.

Медиаплеер

Доступ: свайп влево с экрана Датчики, или Настройки → плитка «Медиа».

Заголовок шапки: METEO P4  PLAYER (с двойным пробелом). Справа кнопка НАЗАД. Два режима источника — переключаются кнопками в верхней части левой панели.

Левая панель — статус

  • Кнопки источника: SD CARD / WI-FI (активная подсвечена)
  • «Art box» с иконкой источника (SD-карта или радио) и анимированные точки-частицы
  • Заголовок STATUS + цветной dot + значение: Stopped / Playing / Paused / Connecting / Loading / Error / Backend offline
  • Строка Wi-Fi: Wi-Fi offline или SSID/IP
  • Заголовок ОЧЕРЕДЬ + крупное -- / -- (текущий трек / всего)
  • Подзаголовок названия трека/папки (DOT-обрезка)

Таймер сна (ТАЙМЕР СНА)

  • Кнопки: 15 МИН, 30 МИН, 45 МИН, 1 ЧАС, X (отмена; ASCII-латинская X, не Unicode-крест)
  • Строка «Сон: выкл» → «Сон: MM:SS» (минуты:секунды обратного отсчёта)
  • Повтор: нет / трек / папка

Режим WI-FI RADIO

Плеер — интернет-радио

В заголовке показывается количество станций: «Wi-Fi N станций». Правая панель:

Режим SD CARD

Плеер — SD карта

В шапке центрального лейбла (динамическая мета) — счётчик папок. Правая панель содержит карточку Meta:

Кнопки управления (общие для обоих режимов)

КнопкаДействие
<<Предыдущий трек / станция
PLAYВоспроизведение / пауза (большая оранжевая круглая кнопка)
>>Следующий трек / станция
STOPОстановить воспроизведение
REPПовтор (нет / трек / папка)
MIXРежим последовательности (по порядку / случайно)
- / +Громкость (ASCII-минус/плюс) — слайдер от 0 до 100
НАЗАДВернуться на предыдущий экран

Сценарии / Будильник

Доступ: чип СЦЕНАРИЙ в шапке Главного экрана. Заголовок шапки: METEO P4 | СЦЕНАРИИ, в центре имя текущего сценария, справа часы --:-- и кнопка НАЗАД.

Экран Сценарии

Структура экрана

Панель MEDIA

Панель ЯРКОСТЬ

Центр управления (Настройки)

Экран Настройки

Доступ: чип ⚙ в шапке Главного экрана или свайп влево с любого подэкрана настроек. Топбар: НАСТРОЙКИ.

Hero-блок: заголовок «Центр управления устройством»
Подсказка: «Плитки показывают текущий статус подсистем и ведут к связанным экранам.»

Плитки первого ряда (5 шт.)

ПлиткаЦветПодписьОткрывает
ИнтернетЦиан«Wi-Fi, сеть, API и время»Wi-Fi экран
МедиаСиний«Плеер, источники и воспроизведение»Плеер
СервисОранжевый«GNSS, датчики и шины»Экран Сервис
ДиагностикаЗелёный«Ошибки, reset и статус»Экран Диагностика
СерверЦиан (0x26C6DA)«MQTT-телеметрия»Экран MQTT

Плитки второго ряда (5 шт.)

ПлиткаЦветПодписьОткрывает
Локальный прогнозЖёлтый«Погода, риски и видимость»Локальный прогноз
БатареяБирюза (0x2FE6C8)«Питание, заряд и состояние»— (только статус)
LED-индикацияЦиан«Цвета статусов»LED-индикация
GNSSФиолетовый«Спутники, FIX и время»Экран GNSS
О системеСветло-голубой (0x8BC8FF)«Информация и лицензии»О системе
10 плиток (5×2), не 9. Плитка Сервер ведёт на отдельный экран MQTT (свайп вправо возвращает в Настройки). Плитка Локальный прогноз в коде называется именно так, а не «Авиа-прогноз».

Wi-Fi / Интернет

Экран Wi-Fi

Доступ: чип Wi-Fi в шапке Главного экрана, или плитка «Интернет» в Настройках. Заголовок экрана в шапке: ИНТЕРНЕТ / WI-FI. Слева — кнопка НАЗАД.

Левая карточка — «Доступные сети»

  • Заголовок карточки: Доступные сети
  • Список SSID, отсортированных по сигналу (количество строк определяется WIFI_UI_SCAN_ROWS)
  • Каждая строка: * — защищённая сеть, SSID (DOT-обрезка), RSSI (дБм), 4-сегментный бар сигнала
  • Цветовые пороги RSSI (4 уровня): ≥ -65 дБм (зелёный), ≥ -75 (циан), ≥ -85 (жёлтый), < -85 (красный)
  • Кнопка «Обновить» в верхнем правом углу — повторное сканирование

Правая карточка — «Подключение»

  • Заголовок карточки: Подключение
  • Строка 1: Wi-Fi: SSID | IP-адрес или Wi-Fi: выключен
  • Строка 2: RSSI: дБм (оценка) | channel: N
  • Строка 3: Auth: -- | PHY: -- | mode: STA
  • Двухстрочная подсказка: «Выберите сеть слева» + «Откроется экран пароля и клавиатуры»
  • Строка состояния: Готово к сканированию / Сканирование…
  • Кнопка «Выключить Wi-Fi» / «Включить Wi-Fi» (правый верхний угол карточки; меняет цвет и текст по состоянию)

Карточка «Скорость интернета»

Вложена в правую панель: заголовок Скорость интернета, кнопка «Тест сети» в верхнем углу, и стрелочный спидометр (LV scale, диапазон 0–30 Мбит/с, угол 225°) с тремя цветовыми зонами:

ЗонаЦветСкорость
Low speedКрасный0–10 Мбит/с
Normal speedСиний10–20 Мбит/с
High speedЗелёный20+ Мбит/с

Кнопка «Тест сети» запускает измерение. Результат отображается цифрой (Мбит/с) и положением стрелки.

Подключение к сети

  1. Нажмите на нужную сеть в списке слева
  2. Откроется экран ввода пароля с экранной клавиатурой
  3. Введите пароль (доступны строчные/прописные, цифры, спецсимволы)
  4. Нажмите OK — устройство попытается подключиться
  5. Статус подключения отображается в правой панели
При входе на экран Wi-Fi сканирование запускается автоматически. При уходе с экрана сканирование останавливается.

Экран Сервис

Доступ: Настройки → плитка «Сервис».

Подпись в нижней части экрана: «Экран обновляется автоматически. Живые и статические аппаратные данные платы.»

Экран Сервис

Экран состоит из 16 плиток, расположенных в четыре ряда по четыре. Каждая плитка имеет цветную рамку.

Ряд 1

ПлиткаСодержимое
ЖЕЛЕЗО MCU: ESP32-P4 rev.X, N ядер
Flash: 16 МБ | PSRAM: 27 МБ
Int RAM: XXX КБ | DMA: XXX КБ
ПРОШИВКА App: meteo_p4 N
FW: p4 22.31.ХХХХ
IDF: v6.0.1
Build: дата и время сборки
ПАМЯТЬ Heap: свободно/всего КБ, использовано
Int: свободно/всего КБ | DMA: XXX КБ
PSRAM: свободно/всего КБ
ПИТАНИЕ Vbat: XXX мВ | статус (покой/заряд/разряд)
Pin ADC: XXX мВ | raw: XXXX
Charge: X% | cal: on/off

Ряд 2

ПлиткаСодержимое
СЕТЬ Wi-Fi: SSID
IP: X.X.X.X
ETH: статус (готов, линк down / активен)
ДАТЧИКИ Погода: ok/err | coord: GNSS/нет
Улица T: ok/err | SHT30: ok/err
RS485 ветер: ok/err | GNSS: FIX/NO FIX | X.X м/с
АУДИО Volume: XX
Codec: 44100 Гц, 16 бит, 2 кан.
I2S: BCK GPIO | WS GPIO | DO GPIO | DI GPIO
SD / НАКОПИТЕЛИ SD: смонтирована / не найдена
Storage part: XXXX КБ
Pins: D0–D3 с номерами GPIO

Ряд 3

ПлиткаСодержимое
ДИСПЛЕЙ LCD: 1024×600 MIPI-DSI
Panel: JD9165 | Touch: GT911
Backlight: GPIOXX
C6 / GNSS C6: SDIO активно
UART ext: TX XX RX XX
GNSS: TX XX RX XX | PPS: есть/нет
ШИНЫ И ПИНЫ I2C: SDA X SCL X
RGB: WS2812 GPIOXX | BL GPIOXX
Сценарий: вкл/выкл | Яркость: XXX/X
UPTIME Uptime: N d ЧЧ:ММ:СС
Unix: XXXXXXXXXX
Part: factory | XXXX КБ

Ряд 4

ПлиткаСодержимое
INA226 / АКБ Bus V | Load V
I: X.X мА | P: X.X мВт | статус
MFR: 0xXXXX DIE: 0xXXXX
СИСТЕМА Tasks: N | Reset: причина | Heap min: XXXX КБ
HWM(B): L=XXXX S=XXXX G=XXXX
P=XXXX H=XXXX
OTA / РАЗДЕЛЫ Running: factory @ 0xXXXXX
Next OTA: нет (factory) / ota_0
State: N/A / Valid / Invalid
ВРЕМЯ / NTP Текущее системное время, источник синхронизации, статус NTP
Топбар экрана: СЕРВИС (не «Сервис»). Кнопка «Сброс логов SD» с диалогом подтверждения ДА / ОТМЕНА в коде находится на экране Графики (кнопка «СБРОС» в верхней панели), а не на Сервис-экране.

Диагностика

Доступ: Настройки → плитка «Диагностика». Топбар: ДИАГНОСТИКА.

Экран состоит из 8 плиток (2 колонки × 4 ряда) с live-данными и подсказками:

ПлиткаЦвет
ПРИЧИНА ПОСЛЕДНЕЙ ПЕРЕЗАГРУЗКИКрасный
ПАМЯТЬ / FREERTOSЗелёный
ПИТАНИЕ / АКБЖёлтый
СЕТЬСиний
ДАТЧИКИ / GNSSФиолетовый
OTA / РАЗДЕЛЫЦиан
ОШИБКИ / ПРИЧИНЫОранжевый
ЧТО ПРОВЕРИТЬОранжевый

Футер-подсказка: «Диагностика показывает причину reset, live-состояние сети, датчиков и питания. Для PANIC/WDT сохраняйте UART-лог: UI видит итоговую причину, но не полный backtrace.»

О системе

Доступ: Настройки → плитка «О системе». Прокручиваемый текстовый отчёт со следующими секциями:

LED-индикация

Доступ: Настройки → плитка «LED-индикация».

Экран LED-индикация

Топбар: LED-ИНДИКАЦИЯ. Карточка-интро: «Нижняя строка статуса» / «Каждый индикатор показывает текущее состояние подсистемы. Цвет и режим свечения зависят от состояния.»

Экран описывает нижнюю строку статуса Главного экрана — 10 индикаторов, каждый показывает состояние одной подсистемы.

ИндикаторПодсистемаСостояния (слева — лучше, справа — хуже)
WIFI Состояние Wi-Fi ● подключён ● выкл./нет связи
ВРЕМЯ Интернет, NTP, API ● время синхр. ● сеть без времени ● ошибка API/NTP ● нет сети
GNSS Навигация и FIX ● FIX/PPS ● FIX ● без FIX ● нет данных
ПОГ. Текущая погода ● ясно ● облачно ● туман ● дождь ● снег   ● гроза
ПРОГ. Прогноз и риск ● спокойно ● облачно ● снег ● осадки/POP ● ветер   ● гроза
CO2 Уровень CO₂ ● < 800 ppm ● 800–999 ppm ● 1000–1399 ● ≥ 1400
IAQ Качество воздуха ● норма ● сухо ● проветрить ● плохой воздух ● критично
ДАВЛ. Тренд давления ● стабильно ● растёт ● быстрый рост ● падает ● резкое падение
ПЛЕЕР Плеер и сценарии ● неактивно ● сценарий ● радио   ● Spotify ● рассвет ● ошибка
РИСК Тревоги и аварии ● нет тревог ● ошибка API ● падение давл. ● заморозок ● авария / CO₂

Автоматические оповещения и пороги

Оповещение / индикаторУсловие в коде
Высокий CO₂ (LED CO2)Цветовые зоны: < 800 / 800-999 / 1000-1399 / ≥ 1400 ppm (см. LED-индикацию). Сигнальный порог в meteo_data: AIR_CRITICAL ≥ 1500 ppm.
Карточка «Проветрить сейчас»CO₂ ≥ 1400 ppm с гистерезисом до 1350 (см. экран Датчики, уровень 1).
Падение давленияΔp ≥ −3 гПа за 3 часа (тренд «Быстро падает», RGB-зона давления).
Риск заморозковВ коде synoptic: SYN_FROST_TEMP_C = 2.0 °C — учитывается уличная температура (RS485 SHT30); влияет на LED-зону РИСК.

MQTT-телеметрия (Сервер)

Доступ: плитка Сервер в Центре управления. Свайп вправо возвращает в Настройки. Компонент mqtt_telemetry публикует версию прошивки (mqtt_telemetry_set_firmware_version) и live-показания датчиков в брокер MQTT.

Хранение данных

ХранилищеЧто хранитсяПримечание
NVS (Flash)Настройки Wi-Fi, часовой пояс, калибровка SGP41, настройки аудиоПереживает перезагрузку и отключение питания
LP-SRAM (RTC)Барограф 48 точек, история графиков, история прогнозаПереживает esp_restart() и WDT-сброс. НЕ переживает холодное включение
SPIFFSРезервные копии графиков и истории прогнозаВосстанавливается после холодного старта
SD-карта (FAT32)CSV/JSON лог датчиков, аудиофайлыДо 4 одновременных потоков
При холодном старте (полное отключение питания) данные LP-SRAM теряются. Барограф и история графиков будут восстановлены из SPIFFS, если резервная копия актуальна.

Версия прошивки

Текущая версия прошивки отображается на экране Сервис в плитке ПРОШИВКА.

Формат версии: p4 ГГ.НН.ХХХХ

Счётчик изменений увеличивается при каждом изменении исходного кода или ресурсов прошивки.



Meteo P4 · Прошивка p4 22.31.0641 · ESP-IDF 6.0.1 · LVGL v9