Skip to content

E4-5d (band 3): oled, display and ui_state units #273

Closed

Description

@Strycher

Epic: #212 · Parent: #264 — band 3, fourth child. Created under the standing grant the owner gave on 2026-09-07; the composition is for review.

Display power and navigation state. Three small units; the second includes the first and settings.h.

unit owns functions
oled oled, oledAvailable, oledSleeping initOLED, sleepOLED, wakeOLED
display tft, tftSleeping, lastActivityTime, lastTFTReinit, tftUpdateCount initTFT, checkTFTHealth, sleepTFT, wakeTFT, wakeAllDisplays, checkDisplaySleep
ui_state currentScreen, previousScreen, settingsSubScreen, geocacheSubScreen, the three screen enums navigateScreen, navigateToSettings, navigateFromSettings

Seven cut-set variables leave: oled, oledAvailable, tftSleeping, lastActivityTime, currentScreen, settingsSubScreen, geocacheSubScreen. settingsScr (the Settings screen object) is referenced by the navigation functions and by buildSettingsScreen; whether it is navigation state or screen state is decided when the code is read, and recorded.

Not moved: updateOLED and the drawOLED* functions (screens, band 4), updateDisplay (a consumer of every screen), handleButtons and its helpers (residue).

Acceptance

  • scripts/verify_extraction.py PASS for the task
  • Both toolchains build; pytest scripts/ passes
  • nm on src.ino.cpp.o no longer defines any variable the three units own
  • Record appended to docs/god-object-inventory.md

Activity

  1. added
    board:todoBoard sync: Todo column
    and removed
    board:todoBoard sync: Todo column
    on Sep 7, 2026
  2. added a commit that references this issue on Sep 7, 2026
  3. Strycher commented on Sep 7, 2026

    @Strycher
    OwnerAuthor

    Merged in #278 (7bfefa7) under the owner's standing grant of 2026-09-07. Proof and the calls made for review are in docs/god-object-inventory.md section 13 and the PR body.

  4. added
    board:doneBoard sync: Done column
    and removed on Sep 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions