SnapScreen_0.6.0_firmware
SnapScreen 0.6.0
A new visual system for SnapScreen
SnapScreen 0.6.0 rebuilds the interface around a more expressive, legible and
consistent visual system. It is not just a new color palette: widgets, controls,
navigation and data presentation have been redesigned while preserving the
established screen geometry and touch areas.
The release also moves the interface to LVGL 9.5.0 and introduces a reusable
bitmap-art pipeline designed for the ESP32-P4 and its PSRAM.
12 interface styles, each with Light and Dark modes
- Added 12 distinct interface styles, for a total of 24 appearance modes.
- Every style defines its own surface treatment, borders, control language,
progress presentation, navigation emphasis and chart treatment. - Added independent Light / Dark selection for every style.
- Appearance selection is stored in NVS and restored after restart.
- Changing appearance does not reset dashboard layouts, printer settings or
other user data. - Added layout and rendering tests across both 800x480 and 1024x600 displays.
Raster artwork and PSRAM caching
- Added a curated library of 105 transparent 40x40 bitmap icons.
- Replaced many generic font symbols with purpose-made artwork for printer
status, temperatures, movement, files, CFS, macros, settings and print actions. - Icons inherit the accent color of the selected appearance while retaining
neutral shading and semantic warning colors. - Bitmap data is decoded and tinted lazily, then retained in PSRAM across screen
changes to avoid repeated CPU work. - The complete reusable icon cache occupies approximately 672 KiB, leaving
ample PSRAM for camera frames, thumbnails and 3D models. - Added a deterministic artwork generator and a consistency test covering icon
ordering, dimensions, generated pixel maps and build registration.
Redesigned widgets
- Rebuilt Status widgets with clearer hierarchy for printer state, active file,
temperatures, progress, Smart ETA and connection status. - Reworked print controls with dedicated Pause, Resume, Stop, Cancel and Tune
artwork and stronger active, disabled and danger states. - Rebuilt temperature widgets with visual heater identities, more useful value
hierarchy, cleaner target controls and a substantially improved chart. - Added dedicated visual treatment for speed, flow, fan, heater state and thermal
delta information. - Reworked movement controls with clear directional, homing, extrusion and
Z-offset artwork. - Improved Files placeholders, loading states, selected-file presentation and
empty-folder feedback. - Improved Macro, Notes, CFS and printing-screen presentation.
- Removed redundant widget headings where the function is already visually
obvious, using the recovered space for data and controls. - Filament spool artwork remains programmatically tintable for real filament
colors rather than relying on a fixed set of colored images.
Navigation and fixed screens
- Replaced navigation and top-bar glyphs with raster artwork for Settings,
Camera, Bed Mesh, Terminal, G-code Viewer, Wi-Fi and screenshots. - Preserved the size, location and touch area of protected top-bar and navigation
controls. - Camera, Bed Mesh, Terminal and G-code Viewer retain their established panel and
viewport geometry while adopting the new visual language. - Screenshot feedback now uses the same state artwork as the rest of the system.
LVGL 9.5.0 migration
- Upgraded the interface runtime from LVGL 9.2.2 to LVGL 9.5.0.
- Updated cache and rendering integration for the new LVGL APIs.
- Added host-side smoke tests for image decoding, cache replacement, screen
rendering and style geometry. - Tested decorative style elements against different widget sizes to ensure they
cannot escape card boundaries or disturb flex layouts.
Downloads
| Asset | Purpose |
|---|---|
firmware.bin |
Standard / normal SnapScreen hardware |
firmwarexl.bin |
SnapScreen XL hardware |
version.json |
OTA version manifest shared by both variants |
Choose the firmware for your hardware variant. OTA uses the variant selected
by the installed firmware. The manifest version for this release is 0.6.0.
Validation and hardware testing
- 37 project regression scripts passed.
- LVGL host smoke tests passed for component bounds, caching and rendering.
- Appearance tests covered 7,680 progress layouts and generated 48 reference
renders across all styles, themes and display sizes. - Standard and XL firmware builds completed successfully with approximately
33% of each application partition still free. - Firmware 0.6.0 was flashed to both physical variants and their boot logs were
captured for 800x480 and 1024x600 operation. - Both devices reported more than 26 MB of free PSRAM on the Status screen.
- No panic, watchdog, heap-corruption or bitmap-allocation failure was found in
the captured startup logs.
CFS Nano support remains experimental. This release preserves the safety
and separation work introduced in 0.5.0, but physical changer behavior still
requires protocol and hardware validation.
When reporting a visual issue, please include the hardware variant, selected
style and Light/Dark mode, firmware version, a photo or screenshot, and the
steps needed to reproduce it.