github prestonbrown/helixscreen v0.99.39

latest releases: v1.1.0-beta.17, v1.0.8, v1.1.0-beta.16...
6 months ago

v0.99.39

  • Synth PCM backends on VoiceSlot — ALSA and SDL backends now render per-sample through VoiceSlot with per-sample envelope and filter state. The sequencer publishes NoteEvent for continuous-audio backends and per-tick events for PWM/buzzer backends, unifying envelope behavior across every platform.

  • Sound preview overlay — Browse and preview individual sounds from the sound settings; a new "Preview Sounds" button opens SoundPreviewOverlay, a dynamic button grid populated from SoundManager::get_sound_names().

  • Build: New PLATFORM_TARGET=ad5m-br mode and make install DESTDIR=... target, enabling external build systems (starting with the AD5M Klipper Mod firmware) to package HelixScreen as a native variant. See docs/devel/AD5M_KMOD_VARIANT.md. The existing ad5m target is unchanged.

  • Per-printer first-print phase defaults — each preset ships its own pre-print warm-up timing.

  • Header bar: per-widget icon_size override for oversized action-button glyphs.

  • Crash diagnostics: breadcrumb on the discovery-complete path to narrow the recurring copy-assign crash signature.

  • Installer (K1 / K2 / Snapmaker U1): Repaired five regressions from the earlier config/ → assets/config/ refactor. On affected boards the installer was silently leaving the stock Creality UI running alongside HelixScreen and skipping Mainsail/Fluidd config symlinks. All five fixes auto-apply on the next self-update. Verified on K1C, K2 Plus, AD5M Forge-X, Snapmaker U1, and CC1 hardware.

  • Discovery: box and enclosure now match as chamber-sensor keywords — Elegoo COSMOS temperature_sensor box and common modder enclosure names enable the chamber row on CC1 and similar builds.

  • Presets: Snapmaker U1 macros and hotend fan aligned with hardware; CC1 hardware list completed and filament sensor pre-declared; K1C fan2 role and filament macros aligned with stock firmware; K2 Plus hardware list corrected (bogus "K2 Max" entry removed).

  • Display: bundle minimal zoneinfo so IANA timezones resolve on CC1 (ships without /usr/share/zoneinfo).

  • Synth: step-boundary silence no longer kills active PCM notes; button_tap suppressed in the preview overlay; per-sample envelope restores attack/release shape; filter state preserved across buffer boundaries; smaller SDL ring buffer cuts perceived latency.

  • Print status: low-memory deactivation clears gcode-viewer dedup guards; end_overlay observer reset before subject deinit; MICRO metadata sizing and end-overlay race.

  • Print: ActivePrintMediaManager uses an immediate observer to close the stale-thumbnail race during rapid print transitions.

  • Print select: egg placeholder removed; history/queue fetch guards hardened so transient Moonraker outages don't leave the panel empty.

  • Toast: responsive width restored after the stacking refactor.

  • Synth architecture: set_voice_envelope removed (deprecated); PCM backends now own per-sample rendering through VoiceSlot.

  • Build: libhv's symlinked LIBHV_DIR cleaned of stale artifacts; ad5m-br added to sound + .PHONY filters; cmake scaffolding pruned from the installed ui_xml/ tree.

Don't miss a new helixscreen release

NewReleases is sending notifications on new releases.