Calendar analog clock with ticks and numerals; tiles without background
Firmware 0.2.16: the analog clock uses index strokes with 12/3/6/9 numerals on large cards and shows a calendar block (weekday, big day, short month) beside the dial on single tiles; wide cards keep the digital time and date. New palette key 'none' hides only the card fill and border: geometry, padding and the pressed flash stay identical. Skeleton frames and the render self-test honour the transparency. App 0.2.15: 'Geen' in the background palette with a dashed mockup tile, min_firmware 0.2.16 for such layouts, demo layout with the bare calendar clock (--wide for the double-width clock). README and AGENTS note that every push is a release and bumps the add-on version. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
+2
-1
@@ -103,7 +103,8 @@ klikgedrag, een mini-slider, een grote waarde, een grafiek (sensoren), een
|
||||
weersvoorspelling (weer) of de breedte **Dubbelbreed**. De ingebouwde **Klok**
|
||||
staat bovenaan de kiezer; zon, kookwekkers en personen vind je via de filters. Kies bij
|
||||
**Pastel achtergrond** een eigen kleur met donkere tekst; **Standaard** herstelt
|
||||
de normale weergave. Hiervoor is firmware 0.2.10+ nodig. Een lege
|
||||
de normale weergave en **Geen** laat de kaart weg, zodat de inhoud even groot
|
||||
direct op de schermachtergrond staat (firmware 0.2.16+). Hiervoor is firmware 0.2.10+ nodig. Een lege
|
||||
tegel brengt je naar de zoekbalk; toevoegen vult de eerstvolgende vrije positie.
|
||||
Het voorbeeld toont de indeling, geen live sensorwaarden.
|
||||
Klik **Opslaan & naar scherm** om je wijzigingen door te sturen.
|
||||
|
||||
@@ -128,6 +128,18 @@ Een oude apprelease van vóór 0.2.10 kent dit optieveld niet. Bij terugrollen v
|
||||
de app herstel je daarom de bijbehorende gegevensback-up; wis of negeer geen
|
||||
onbekende opties om een oud opslagbestand toch te openen.
|
||||
|
||||
### Compatibiliteit app 0.2.15 / firmware 0.2.16
|
||||
|
||||
Opslagversie en tegelprotocol blijven 1. `tiles[].options.background` krijgt de
|
||||
extra paletnaam `none` ("Geen"): geen kaart achter de tegelinhoud. Oudere
|
||||
firmware kent de naam niet en valt terug op de normale kaart; omdat dat voor de
|
||||
gebruiker onzichtbaar misgaat, stuurt de manager zo'n indeling pas na firmware
|
||||
0.2.16 (`min_firmware`) en bewaart haar ondertussen. De firmware verbergt
|
||||
uitsluitend vulling en rand (`bg_opa`/`border_opa`); maten, padding en de
|
||||
pressed-feedback op de PRESSED-state blijven gelijk. De analoge klok wijzigt
|
||||
alleen de tekening (streepjes, cijfers, kalenderblok op enkele tegels); er is
|
||||
geen nieuw veld voor nodig. Geen gewijzigde preferences of sleutels.
|
||||
|
||||
### Compatibiliteit 0.2.12 / firmware 0.2.14
|
||||
|
||||
Opslagversie en tegelprotocol blijven 1. Additief: `tiles[].options.size`
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
# App 0.2.15 / firmware 0.2.16 — kalenderklok en tegels zonder achtergrond
|
||||
|
||||
## Wijzigingen
|
||||
|
||||
- **Analoge klok**: index-streepjes (`lv_line`, parts 0–11) met de cijfers 12,
|
||||
3, 6 en 9 als labels op de vier hoofdposities van grote kaarten; de CYD
|
||||
houdt twaalf streepjes. Op een enkele tegel staat naast de wijzerplaat een
|
||||
kalenderblok: weekdag (tegelsubfont), grote dag (`clock_digits`) met de
|
||||
korte maand (`label`) op dezelfde basislijn — LVGL's `base_line` wordt
|
||||
daarvoor gebruikt. De CYD toont "13 sep" in het grote-waardefont. De
|
||||
dubbelbrede kaart houdt de digitale tijd en datum naast de wijzerplaat.
|
||||
Nieuwe extra-modus `calendar` (enkel) naast `analog` (dubbelbreed), zodat
|
||||
de parts bij een breedtewissel opnieuw worden opgebouwd.
|
||||
- **Achtergrond: Geen** (`background: none`): de firmware zet `bg_opa` en
|
||||
`border_opa` van de tegel op transparant; padding, maten en positie blijven
|
||||
identiek aan een kaart, zoals de eigenaar vroeg ("niet groter maken zonder
|
||||
achtergrond"). De pressed-flits blijft werken (PRESSED-state). Het skeleton
|
||||
bij een paginawissel toont voor zo'n tegel geen kader. `check_tile_geometry`
|
||||
controleert nu ook of de opaciteit klopt met de tegeloptie.
|
||||
- **App**: paletsleutel `none` ("Geen") met een doorgestreept staal; de mockup
|
||||
toont zo'n tegel als stippellijn; `min_firmware` eist 0.2.16 voor indelingen
|
||||
met deze optie. Demo-indeling (`diagnostics/send_layout.py`) gebruikt nu de
|
||||
enkele analoge klok zonder achtergrond; `--wide` geeft de dubbelbrede klok.
|
||||
|
||||
## Tests
|
||||
|
||||
- 54 Python-tests (met nieuwe paletnaam-test) en negen C++-testprogramma's
|
||||
geslaagd; `tools/generate_packages.py --check` verifieert beide pakketten.
|
||||
- Guition-build geslaagd (RAM 31,0 %, flash 17,4 %); CYD-build geslaagd
|
||||
(RAM 30,0 %, flash 73,0 %). Eerste build faalde op `std::max(int, long)`
|
||||
rond `lv_font_get_line_height`; opgelost met expliciete int-casts.
|
||||
- Poorten vooraf vastgesteld met `esptool chip_id`: `usbserial-210` = ESP32-S3
|
||||
(Guition), `usbserial-130` = ESP32 (CYD). Beide via USB geflasht; het
|
||||
uploadlog toont `firmware.bin` uit de juiste buildmap.
|
||||
- Guition, demo-indeling: acht `page_check=PASS count=9` (kalenderklok zonder
|
||||
achtergrond, forecast, grafieken, zonnebaan), daarna één FAIL op het moment
|
||||
dat de manager de echte indeling terugzette (slot 5 wisselde van zonnebaan
|
||||
naar een gewone tegel binnen dezelfde frame; count ging naar 5). Tweede run
|
||||
op de echte indeling: 10/10 PASS (`count=5`, heap ~6,46 MB). Snapshot
|
||||
`diagnostics/guition-0216-demo-p1.png` toont de echte indeling met de
|
||||
kalenderklok (streepjes, cijfers, "zondag 13 sep").
|
||||
- CYD, demo-indeling: 10/10 PASS (zes met `count=9`, daarna `count=7` na
|
||||
herstel van de echte indeling; ~40–53 kB vrij heap).
|
||||
- De eigenaar bekeek de Guition na de flash: "ziet er top uit". De CYD is nog
|
||||
niet visueel beoordeeld; geen langdurige stabiliteitsproef uitgevoerd.
|
||||
Reference in New Issue
Block a user