-
LedGrab v0.8.2
StableBuild Release / create-release (push) Successful in 3sBuild Android APK / build-android (push) Failing after 11sBuild Release / build-docker (push) Successful in 3m14sBuild Release / build-linux (push) Successful in 4m3sBuild Release / build-windows (push) Successful in 4m25sBuild Release / publish-release (push) Successful in 1sreleased this
2026-06-08 20:18:46 +03:00 | 22 commits to master since this releasev0.8.2 (2026-06-08)
User-facing changes
Features
WLED native realtime UDP output
- New realtime UDP sink speaking WLED's DRGB / DRGBW / DNRGB protocols, with automatic revert to the device's prior state when streaming stops (7728aec)
Automatic brightness limiting (ABL) / power budget
- Per-LED power budgeting that caps total draw by scaling brightness to a configurable current/PSU limit, preventing brownouts on long strips (ffee156)
Scene playlists
- Scenes can be grouped into playlists with timed auto-cycling, so a target can rotate through looks on a schedule (f71e10e)
- Playlist + cycling state is included in the aggregated
/snapshotresponse (abc204c)
Auto edge-calibration + guided first-run setup wizard
- Backend core for automatic screen-edge calibration (0409cd8), a one-call setup scaffold with an onboarding flag (9dcd76d), and a browser-driven calibration UI (9550688)
- A guided first-run setup wizard ties it together for new installs (81b1808), with all-provider source discovery and a spatial corner picker (dd43f38)
Region-of-interest (ROI) screen capture
- Screen sampling can now be cropped to a region of interest instead of the whole display (ca59546)
Built-in "look" presets
- One-click looks: Cinematic / Vivid / Cozy / Soft / Cool (e18d56c)
Weekday + timezone scheduling
- The time-of-day automation rule now supports weekday selection and explicit timezones (1ada5ac)
Value sources
- New sandboxed-Jinja template combinator for composing value sources (6de61b9) and optional normalization for magnitude sources (669ae20)
Visual graph editor
- The editor is now a full wiring control surface (2e51f46), and you can duplicate a selected subgraph server-side (15cfb82)
Android on-device capture
- System audio playback capture (fd62db1), OS notification capture via NotificationListenerService (0be3f83), webcam capture via Camera2 (4bf3fe6), and a foreground-app automation condition (1c1bbe2)
Bug Fixes
- Security: removed an active weak default API key from the shipped config — fresh installs no longer ship with a guessable key. Set your own key on first run (5686ae5)
- Removed a broken legacy
/system/mqtt/settingsroute (fdc9201) - Scene brightness value-source changes now sync to the live processor immediately (02e2ea3)
- Wizard hardening: scaffolded targets are registered with the ProcessorManager and the final review step is more robust (6cd5e05)
- Installer opens the WebUI only once after "Launch LedGrab" (05cf121)
Development / Internal
Backend / Storage
clone()is now gated behind an opt-in allowlist, with expanded duplicate-handling tests (498854f)
Frontend
- In-progress dashboard customization groundwork (6180569)
Docs
- Actualized README + API reference with embedded screenshots (12b40e6), graph-editor wiring-control roadmap (d505388), Android audio-capture design notes (4b2e8fc); removed stale ANDROID-REVIEW planning docs (9960f15)
Tests
- Large new suites for calibration solver/session (incl. adversarial), setup & scene-playlist routes, playlist engine, and ROI capture. Full suite: 2149 passing, 2 skipped
All Commits (31)
Hash Message Author dd43f38 fix(calibration-wizard): all-provider discovery + spatial corner picker alexei.dolgolyov 6cd5e05 fix(setup): register scaffolded target with ProcessorManager + final-review hardening alexei.dolgolyov 81b1808 feat(onboarding): guided first-run setup wizard (phase 4, final) alexei.dolgolyov abc204c feat(snapshot): include scene playlists + cycling state in snapshot alexei.dolgolyov 9550688 feat(calibration): browser-driven auto edge-calibration UI (phase 3) alexei.dolgolyov 9dcd76d feat(setup): one-call setup scaffold + onboarding flag (phase 2) alexei.dolgolyov 0409cd8 feat(calibration): auto edge-calibration backend core (phase 1) alexei.dolgolyov 6180569 wip(dashboard): in-progress dashboard customization changes alexei.dolgolyov f71e10e feat(scenes): scene playlists with timed auto-cycling alexei.dolgolyov ca59546 feat(capture): region-of-interest (ROI) crop for screen sampling alexei.dolgolyov 1ada5ac feat(automations): weekday + timezone scheduling for time-of-day rule alexei.dolgolyov e18d56c feat(processing): built-in 'look' presets (Cinematic/Vivid/Cozy/Soft/Cool) alexei.dolgolyov 7728aec feat(wled): native realtime UDP output (DRGB/DRGBW/DNRGB) with auto-revert alexei.dolgolyov ffee156 feat(targets): automatic brightness limiting (ABL) / per-LED power budget alexei.dolgolyov 02e2ea3 fix(scenes): sync brightness value-source change to live processor alexei.dolgolyov fdc9201 fix(api): remove broken legacy /system/mqtt/settings route alexei.dolgolyov 5686ae5 fix(security): remove active weak default API key from shipped config alexei.dolgolyov 9960f15 docs(android): remove ANDROID-REVIEW planning/review docs alexei.dolgolyov 1c1bbe2 feat(android): foreground-app automation condition alexei.dolgolyov 4bf3fe6 feat(android): on-device webcam capture via Camera2 (AndroidCameraEngine) alexei.dolgolyov 0be3f83 feat(android): on-device OS notification capture (NotificationListenerService) alexei.dolgolyov 4b2e8fc docs(android): add audio-capture design + missing-functionality review alexei.dolgolyov fd62db1 feat(audio): Android on-device system playback capture alexei.dolgolyov 669ae20 feat(value-sources): optional normalization for magnitude sources alexei.dolgolyov 6de61b9 feat(value-sources): add sandboxed-Jinja template combinator alexei.dolgolyov 12b40e6 docs: actualize README and API reference, embed screenshots alexei.dolgolyov 498854f refactor(storage): gate clone() behind an opt-in allowlist; expand duplicate tests alexei.dolgolyov 15cfb82 feat(graph): duplicate a selected subgraph server-side alexei.dolgolyov 2e51f46 feat(graph): make the visual editor a full wiring control surface alexei.dolgolyov 05cf121 fix(installer): open WebUI once after "Launch LedGrab" alexei.dolgolyov Downloads
Platform File Description Windows (installer) LedGrab-v0.8.2-setup.exeInstall with Start Menu shortcut, optional autostart, uninstaller Windows (portable) LedGrab-v0.8.2-win-x64.zipUnzip anywhere, run LedGrab.bat Linux LedGrab-v0.8.2-linux-x64.tar.gzExtract, run ./run.sh Android LedGrab-v0.8.2-android-release.apkSideload on Android 7.0+ (API 24+) — TV boxes, Fire TV, phones, tablets. arm64-v8a / x86_64 / x86 Docker See below docker pull + docker run After starting, open http://localhost:8080 in your browser.
Docker
docker pull git.dolgolyov-family.by/alexei.dolgolyov/ledgrab:v0.8.2 docker run -d --name ledgrab -p 8080:8080 -v ledgrab-data:/app/data git.dolgolyov-family.by/alexei.dolgolyov/ledgrab:v0.8.2First-time setup
- Change the default API key in .
- Open http://localhost:8080 and add your LED devices.
- See for detailed configuration.
Downloads