Skip to content

Phase 5e: live-stat TFT presets (Battery, Volume, CPU, Clock) #6

Description

@wsclx

Vision

Replace static decorative TFT animations with live host-system info on the AK820 Pro's bottom-right TFT panel. Reported by @wsclx as the actual ask behind Phase 5c:

"Beispielsweise Akkustand, Lautstärkeprozent, aber auch andere Systeminformationen, die hilfreich sein können."

Scope (10 presets)

  • Battery percent + charging indicator
  • Volume percent with mute state
  • CPU usage with rolling sparkline
  • Memory pressure
  • Clock (HH:MM + date)
  • Network up/down rates
  • Now Playing (track + artist, scroll if overflow)
  • Wi-Fi SSID + signal strength
  • Date big-font
  • Stopwatch / Timer (driven by automation)

What's needed

Two things this build doesn't have yet:

  1. Bitmap-font rasteriser — render text as 128 × 128 RGB565 frames. Smallish 5×7 or 7×9 monospace bitmap font, embed as Rust &[u8] constant. Could borrow from embedded-graphics if we want vector glyphs.
  2. Polling loop — host-side timer (~1 Hz for clock/battery, ~10 Hz for volume/CPU) that re-rasterises the active preset and re-uploads. Tauri command starts/stops the loop; loop owns its own TFT connection so it doesn't fight the user's preset/image uploads.

Open questions

  • Does the firmware actually accept re-uploads at 1 Hz, or does it throttle? Test before committing to a polling design.
  • Do we want the user to compose their own preset (e.g. "Volume + Clock"), or are these 10 fixed?

Out of scope

  • Per-user customisation of text/colours within a preset (later).
  • TFT keyboard-knob interaction (the firmware doesn't expose this — see CLOSED won't-fix).

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions