Skip to content

v1.0.9-beta.2

Pre-release
Pre-release

Choose a tag to compare

@dennisadvani dennisadvani released this 08 Aug 10:12
· 18 commits to main since this release

[1.0.9-beta.2]

Added

  • USB keyboard / wireless remote input handler — evdev-based listener
    with learn mode for custom key mapping; supports next, prev,
    pause, resume, toggle_pause, screen_on, and
    screen_off commands; mappings persisted in config.json under
    input.keyboard_map
  • Keyboard/Remote Control card in Web UI Advanced page — per‑command
    learn and clear buttons with live key‑code display; learn mode polls
    for the next keypress and persists the mapping automatically
  • toggle_pause IPC command — single‑key pause/resume toggle for
    keyboard remotes and the Web UI control endpoint; frontend shows a
    brief "Paused" / "Resumed" feedback popup on the frame display
  • _show_feedback() helper in the frontend renderer — on‑screen
    popup messages for pause, resume, and toggle_pause actions using the
    existing message layer
  • OTA system package support — new requirements-system.txt lists
    required system packages (python3-evdev); UpdateManager
    installs any missing packages before the pip step during OTA updates
  • input config sectionkeyboard_enabled toggle and
    keyboard_map dictionary for storing learned key bindings

Changed

  • Web UI pollingdashboard.js switched from setInterval to
    setTimeout chains for dashboard refresh, sync status, log viewer,
    and processing progress; prevents request‑queue buildup when the
    browser tab is backgrounded on mobile
  • screen_on / screen_off renamed — display power commands
    renamed from legacy names across all input handlers (CEC, IR,
    keyboard, MQTT), IPC protocol, frontend renderer, and the Web UI
    control endpoint for consistent naming
  • Pi 3 H.264 Level loweredh264_level reduced from 4.2 to
    4.0 in the Pi 3 transcoding profile to stay within VideoCore IV
    hardware decode limits (max Level 4.1)
  • Keyboard handler thread — started by the backend daemon alongside
    other input handlers; uses selectors‑based blocking I/O instead of
    busy‑polling so CPU usage is near‑zero when no keys are pressed

Fixed

  • Pi 3 video stuttering / 100 % CPU — videos transcoded at H.264
    Level 4.2 exceeded VideoCore IV hardware decoder capabilities, causing
    VLC to fall back to software decode on all 4 cores; re‑transcoding at
    Level 4.0 enables hardware decode (~5–10 % CPU)
  • Keyboard learn clear button — clearing a key mapping via the Web UI
    now properly removes the defaults for that command instead of wiping
    all default key bindings; set_key_map() merges config overrides
    with defaults, treating an empty list as "clear this command"