Files
Flipdot-display/src/esp32/net/home_assistant.h
T

27 lines
1.5 KiB
C
Raw Normal View History

#pragma once
#include "logic/display_controller.h"
2026-10-13 01:52:34 +02:00
#include "logic/settings.h"
// Home Assistant integration over MQTT (with discovery):
// FlipDot Display Power switch: off = draw the off image and switch the display off
// FlipDot Display Mode select: the page shown during the day (a dynamic page, e.g.
// the built-in "Clock", or a bitmap)
// FlipDot Display Off image select: left on the dots when the display switches off
// ("Blank" or a bitmap)
// FlipDot Display IP sensor: the IP address
// FlipDot Display Firmware sensor: version and health, e.g. "2.1.0, ok, 0 crashes, ..."
// FlipDot Display Recovery button: restart into the recovery app (for 10 minutes)
// FlipDot Display Stopwatch switch: the stopwatch of the dynamic pages runs
// FlipDot Display Stopwatch reset button: back to 0
// FlipDot Display Shown page sensor: the page or bitmap on the display now
// FlipDot Display Back to schedule button: ends a manual pick (the Mode dropdown)
2026-10-13 01:52:34 +02:00
//
// The broker comes from the settings (web UI); an empty host means BROKER_ADDR, MQTT_USER
// and MQTT_PASSWORD from secrets.h. Changes need a restart.
void homeAssistantBegin(DisplayController &controller, const HomeAssistantSettings &settings);
void homeAssistantLoop();
2026-10-13 01:52:34 +02:00
bool homeAssistantConnected();
// Publish the firmware status (only sent when it changes, and again after a reconnect)
void homeAssistantSetFirmwareStatus(const char *status);