A new page element runs Conway's Game of Life in an area (the whole display
by default), one per page. Start: random dots, one pattern, or the icons
whose names start with a text in turn or in random order. Edges: wrap
around, dead, or a hidden margin where gliders fly out of view (leftovers
that stay put in the margin are cleared, so a glider gun runs cleanly).
It restarts when the board is still or repeats within 16 generations
and/or after a number of generations, after a hold time (an empty board
at once).
logic/life holds the board and timing (tested), display/life_player runs
the board of the shown page, ticked before each frame; frames are paced
like scrolling text. The element reuses existing fields, so the page
format stays the same. The Icons tab has a library of 17 LifeWiki
patterns (checked with a simulation), and the built-in page "Game of
Life" shuffles through the life_ icons. About 12 KB flash, 8 KB RAM.
Version 2.17.0, tested on the display over OTA.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Rules: "also over a page chosen by hand" (on by default); off, a rule
waits until the manual pick ends. Schedule store version 3, version 2
records are read with the option on.
- The Clock page is stored at boot from the built-in one and can be
edited; Reset (deleting it) brings back the original.
- Home Assistant attributes were never found: ArduinoJson 7.4 takes a
char array key as a literal of its full array length.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The hardcoded clock is now the built-in dynamic page "Clock". A dynamic page
has a background bitmap per time of day and up to 8 elements (clock, date,
Home Assistant value, text), each with position, alignment, font and overlay.
Pages are drawn on the ESP32, also for the web previews.
- Pages tab in the web UI: page editor with drag and drop, font upload
(TTF/OTF converted in the browser to the FDF1 dot font format)
- Built-in fonts Small, Normal, Large and Full height (generated by
tools/make_builtin_fonts.py), built-in bitmaps Pikachu and Pikachu yawning
- Home Assistant values over the REST API (URL and token in the HA tab)
- Settings version 4: evening settings removed (now time slots of the Clock
page), old records are converted
- HA Mode dropdown lists the dynamic pages and bitmaps
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>