Руководство по интеграции¶
Задача — совместимое железо (контроллер или мост), а не свой портал. Обзор траекторий: 01-your-product-in-idryer-cloud.md.
Сценарии интеграции¶
Контроллер (замена RP2040)¶
Обязательно: Hello/HelloAck, Telemetry, Status, Command/CommandAck, Heartbeat, Error
Опционально: Weights, Rfid, ConfigPush, Claiming, WebSocket
Телеметрия (сбор данных)¶
Минимум: Принимать Telemetry/Status/Weights, отвечать ACK, отправлять Heartbeat
Экран/UI¶
Обязательно: Hello/HelloAck, Telemetry, Status, Heartbeat
Для меню: ConfigPush + локальная копия menu_meta.h
Для управления: Command/CommandAck
Версионирование¶
UART протокол: версия 1 (в заголовке кадра)
Firmware: MAJOR<<16 | MINOR<<8 | PATCH в HelloPayload
MCU проверяет MAJOR версии. При несовпадении remote config блокируется, телеметрия работает.
Ограничения¶
- RFID OpenPrintTag не интегрировано (структуры есть, генерация фрагментов нет)
- ConfigPush из MQTT для
set/invoke: малый JSON ≤ 194 байт на фрагмент; фрагментация вCommandHandlerдля этих команд не реализована - Cloud layer только ESP32 (WiFi, HTTPClient, NVS)
- HTTPS:
ArduinoHttpClientиспользуетWiFiClientSecure+setCACert(ROOT_CA_LETSENCRYPT)(корень Let’s Encrypt изroot_ca.h), неsetInsecure - Один LINK на устройство
Command от LINK (профиль)¶
Если реализуете приём MessageKind::Command на MCU: при длине payload 64 байта это не CommandPayload, а ProfilePayload (профильная сушка). См. раздел ProfilePayload внутри Command (0x20) в 02-binary-format.md.