#pragma once #include // The web UI: one page, the browser does the image work (conversion, editor, font // conversion). Dynamic pages are drawn by the ESP32 (/api/pages/preview), so the preview // is exactly what the display shows. API: see web/web_ui.h. Bitmaps are 84 x 19, as 418 // hex digits in drawBitmap format. static const char WEB_PAGE[] PROGMEM = R"rawliteral( FlipDot Display

FlipDot Display

connecting...

What to show during the day

Stopwatch 0:00

The schedule (Settings) decides when the display is on. The page can also be chosen with the Home Assistant "Mode" dropdown.

Left on the display when it switches off

Drawn at night and when the Home Assistant Power switch turns the display off; the dots keep it without power. Also in Home Assistant: "Off image".

Dynamic pages

A background per time of day, with a clock, the date, Home Assistant values or text on top. Built-in pages can't be changed: Copy makes a copy you can change.

Fonts

Add a font

Converted in the browser to dots. Pixel fonts look best at their own size. Height: the dots of one line (19 at most); Baseline: the row the letters stand on; Size: the font size it is drawn with. Only plain characters (no accents).

Bitmaps

Draw / upload

Click or drag to draw; starting on a yellow dot erases. Images: dark parts become yellow dots (use Invert for the opposite).

Schedule

Without WiFi

The backgrounds per time of day (like the yawning Pikachu) are set per page in the Pages tab.

Hardware

Dots that don't flip: a longer gap gives the power supply time to recover between pulses, a second pulse catches dots that missed the first one. Full redraws (after power on, every 2 minutes) use one pulse per dot.

Test patterns

Shown in live mode, with the current flip settings (save them first). Cycle flips every dot back and forth every few seconds: look for dots that stay behind.

Home Assistant (MQTT)

Changing these restarts the ESP32. Entities: Power switch, Mode and Off image dropdowns, IP and Firmware sensors, Recovery button.

Values on dynamic pages (REST API)

A long-lived access token: in Home Assistant, your profile, Security tab. Only http (use the IP address, .local names don't work). The values of the shown page are read every minute.

System

Firmware updates: pio run -e esp32 -t upload

Backup

Import

Export: one JSON file with the settings and your bitmaps, dynamic pages and fonts (not the built-in ones). Single pages and bitmaps have their own Export button (a page includes the bitmaps and fonts it uses). Import: choose what to add. Items are added next to yours: a name that is taken gets a number, or type another name; only an existing name you type yourself replaces that item. Settings are only changed for the parts you tick. Without a password or token in the file, the current ones stay. Importing the MQTT settings restarts the ESP32.

)rawliteral";