src.nth.io/

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Hoersten <[email protected]>2026-04-12 13:48:06 -0500
committerLuke Hoersten <[email protected]>2026-04-12 13:48:06 -0500
commit9f8fa6bd4af9dc3b56efcf5de8c175d41b60923d (patch)
tree3b9a2699a81f407f766bd78e0177d8fffb69d007
parent1298d68bb9bc33b84a70e4c9c27c806d8a0748c9 (diff)
Fix doorbell-viewport display and ring detection
- Switch to sysfs backlight (drm backend) to avoid DRM plane reset on display power cycle caused by vcgencmd display_power - Add udev rule and sysfs permissions for rpi_backlight - Fix multi-packet WebSocket decoder (ring events were being dropped) - Fix mpv loop/cache flags (--loop=no, bounded --demuxer-max-bytes) - Remove hardware decode (caused SIGSEGV on RPi4 with fkms)
-rw-r--r--doorbell-viewport/files/doorbell-viewport.py5
-rw-r--r--doorbell-viewport/tasks/main.yaml17
2 files changed, 19 insertions, 3 deletions
diff --git a/doorbell-viewport/files/doorbell-viewport.py b/doorbell-viewport/files/doorbell-viewport.py
index 3167671..2c5b50a 100644
--- a/doorbell-viewport/files/doorbell-viewport.py
+++ b/doorbell-viewport/files/doorbell-viewport.py
@@ -392,10 +392,9 @@ class DoorbellViewport:
"--no-input-default-bindings",
"--no-config",
"--really-quiet",
- "--loop=inf",
+ "--loop=no",
"--cache=yes",
- "--cache-secs=3",
- "--demuxer-max-bytes=50M",
+ "--demuxer-max-bytes=1M",
"--hwdec=no",
self.config.rtsp_url,
]
diff --git a/doorbell-viewport/tasks/main.yaml b/doorbell-viewport/tasks/main.yaml
index 989111d..fa2b4da 100644
--- a/doorbell-viewport/tasks/main.yaml
+++ b/doorbell-viewport/tasks/main.yaml
@@ -10,6 +10,23 @@
groups: "video,input,render"
append: "yes"
+- name: allow doorbell-viewport user to control sysfs backlight
+ become: yes
+ copy:
+ dest: "/etc/udev/rules.d/99-doorbell-viewport-backlight.rules"
+ owner: "root"
+ group: "root"
+ mode: "0644"
+ content: |
+ SUBSYSTEM=="backlight", ACTION=="add", RUN+="/bin/chgrp video /sys/class/backlight/%k/brightness", RUN+="/bin/chmod g+w /sys/class/backlight/%k/brightness"
+
+- name: set backlight brightness writable by video group
+ become: yes
+ file:
+ path: "/sys/class/backlight/rpi_backlight/brightness"
+ group: "video"
+ mode: "0664"
+
- name: apt install doorbell-viewport dependencies
become: yes
apt: name="{{item}}"