Добавлен локальный веб-интерфейс и распиновка в README

Плата поднимает страницу + JSON API (/api/state, /api/command) на порту 80
для наблюдения и управления актуаторами независимо от MQTT/Laravel.
Команда с веб-UI публикует тот же ack в devices/{id}/ack, что и MQTT-команда,
поэтому device shadow платформы не расходится с реальным состоянием.
Включается/выключается флагом ENABLE_WEB_UI в config.h.

В README добавлены ASCII-схема подключения DHT22/реле и раздел про сборку
через arduino-cli (включая обходной путь для проблемы с правами на
~/Documents/Arduino на macOS).
This commit is contained in:
2026-08-11 19:27:41 +05:00
parent a645737927
commit bb85c617a4
11 changed files with 288 additions and 4 deletions
+5
View File
@@ -12,3 +12,8 @@ void devicesBegin();
// применённым состоянием для последующей публикации в devices/{id}/ack.
// Возвращает false, если deviceId этой плате не принадлежит.
bool devicesApplyCommand(const String& deviceId, const String& action, double level, JsonDocument& outState);
// Заполняет out текущим состоянием всех актуаторов этой платы:
// {"light-1":{"power":"on"},"pump-1":{"power":"off"},"fan-1":{"power":"off"}}.
// Нужно веб-интерфейсу, чтобы показать состояние без ожидания следующей команды.
void devicesGetState(JsonObject& out);