Adds webcam support on Linux, a diagnostics report for bug reports, and power state messages before sleep or shutdown and on wake.
Cameras
- Add a
camerasmodule listing webcams with their controls, current format and supported formats (Linux, through V4L2) - Add a
CAMERA_CONTROLevent to set a webcam's controls, such as its brightness, zoom or autofocus, even while another app is using it - Add a
CAMERA_CAPTUREevent to take a picture at the camera's current size or one of its others. It needs ffmpeg and the newcameras.capturesetting, which is off by default. A camera another app streams through PipeWire is pictured from that stream - Add
system-bridge client camera controlandsystem-bridge client camera captureto the CLI, andsystem_bridge_camera_controlandsystem_bridge_camera_captureto the MCP server - Update the
systemmodule'scamera_usageas soon as an app opens or closes a camera, through inotify, and read/proconly then and faster
Diagnostics
- Add a
GET_DIAGNOSTICSevent with the version, platform, start time, each module's failures and last error, a settings summary and the last 20 warnings and errors, with home directories and user names hidden so it's safe to share - Add the
system-bridge client diagnosticscommand, which prints it
Power
- Send every client a
POWER_STATE_CHANGEDmessage just before sleep or shutdown and again on wake.shutting_downis Linux only - Announce over mDNS at startup and after waking, so Home Assistant hears System Bridge is back after a long sleep
Web client
- Add a Cameras page to set each webcam's controls, grouped into a card per control set, with each camera's resolution and formats
- Add the Take pictures setting to take and download a picture at a chosen size
Home Assistant dashboard
- Hide release-gated sections and pages in the dashboard editors
Connector
- Add cameras,
CAMERA_CONTROL,CAMERA_CAPTURE, diagnostics and power state changes to the Python and TypeScript connectors, asget_diagnostics()andlisten()'spower_state_callbackin Python, andgetDiagnosticsand thepowerStateChangesstream in TypeScript
Windows and macOS
- Send an empty GPU list instead of
null
Dependencies
Full Changelog: 5.23.2...5.24.0