TinyPilot Pro log dump https://tinypilotkvm.com Timestamp: 2023-09-26T15:54:37+01:00 Software versions TinyPilot version: 2.6.0 uStreamer version: 5.38 OS version: Linux tinypilot 5.15.84-v7l+ #1613 SMP Thu Jan 5 12:01:26 GMT 2023 armv7l GNU/Linux Distribution name: Raspbian Distribution version: 11 Hardware information Hardware: BCM2711 Revision: b03115 Model: Raspberry Pi 4 Model B Rev 1.5 TinyPilot state Read-only filesystem: off SSH access: enabled temp=48.2'C throttled=0x0 voltage logs TinyPilot settings.yml ustreamer_desired_fps: 15 ustreamer_persistent: true ustreamer_quality: 50 TinyPilot configuration [Unit] Description=TinyPilot - RPi-based virtual KVM After=syslog.target network.target StartLimitIntervalSec=0 [Service] Type=simple User=tinypilot WorkingDirectory=/opt/tinypilot ExecStart=/opt/tinypilot/venv/bin/python app/main.py Environment=HOST=127.0.0.1 Environment=PORT=8000 Environment=APP_SETTINGS_FILE=/home/tinypilot/app_settings.cfg Restart=always [Install] WantedBy=multi-user.target TinyPilot logs -- Journal begins at Tue 2023-09-26 15:53:19 BST, ends at Tue 2023-09-26 15:54:37 BST. -- Sep 26 15:53:23 tinypilot systemd[1]: Started TinyPilot - RPi-based virtual KVM. Sep 26 15:53:26 tinypilot python[514]: 2023-09-26 15:53:26.536 __main__ INFO Starting app Sep 26 15:53:35 tinypilot python[514]: 2023-09-26 15:53:35.037 db.store INFO Loading database migrations from /opt/tinypilot/app/db/migrations/*.sql Sep 26 15:53:35 tinypilot python[514]: 2023-09-26 15:53:35.043 db.store INFO Read 7 database migrations from disk Sep 26 15:53:35 tinypilot python[514]: 2023-09-26 15:53:35.079 socket_api INFO Client 2gXdYi_XCdGxutC3AAAC connected Sep 26 15:53:35 tinypilot python[514]: 2023-09-26 15:53:35.132 socket_api INFO Client 2gXdYi_XCdGxutC3AAAC disconnected Sep 26 15:53:35 tinypilot python[514]: 2023-09-26 15:53:35.543 socket_api INFO Client lwUlAMwNqPY9TZ64AAAE connected Sep 26 15:53:37 tinypilot python[1109]: Process ProcessWithResult-1: Sep 26 15:53:37 tinypilot python[1109]: Traceback (most recent call last): Sep 26 15:53:37 tinypilot python[1109]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:53:37 tinypilot python[1109]: self.run() Sep 26 15:53:37 tinypilot python[1109]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:53:37 tinypilot python[1109]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:53:37 tinypilot python[1109]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:53:37 tinypilot python[1109]: hid_handle.write(bytearray(buffer)) Sep 26 15:53:37 tinypilot python[1109]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:53:37 tinypilot python[514]: 2023-09-26 15:53:37.191 socket_api ERROR [SENSITIVE] Failed to forward mouse event: Failed to write to HID interface: /dev/hidg1. Is USB cable connected? [/SENSITIVE] Sep 26 15:53:37 tinypilot python[1110]: Process ProcessWithResult-2: Sep 26 15:53:37 tinypilot python[1110]: Traceback (most recent call last): Sep 26 15:53:37 tinypilot python[1110]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:53:37 tinypilot python[1110]: self.run() Sep 26 15:53:37 tinypilot python[1110]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:53:37 tinypilot python[1110]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:53:37 tinypilot python[1110]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:53:37 tinypilot python[1110]: hid_handle.write(bytearray(buffer)) Sep 26 15:53:37 tinypilot python[1110]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:53:37 tinypilot python[514]: 2023-09-26 15:53:37.765 socket_api ERROR [SENSITIVE] Failed to forward mouse event: Failed to write to HID interface: /dev/hidg1. Is USB cable connected? [/SENSITIVE] Sep 26 15:53:38 tinypilot python[1111]: Process ProcessWithResult-3: Sep 26 15:53:38 tinypilot python[1111]: Traceback (most recent call last): Sep 26 15:53:38 tinypilot python[1111]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:53:38 tinypilot python[1111]: self.run() Sep 26 15:53:38 tinypilot python[1111]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:53:38 tinypilot python[1111]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:53:38 tinypilot python[1111]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:53:38 tinypilot python[1111]: hid_handle.write(bytearray(buffer)) Sep 26 15:53:38 tinypilot python[1111]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:53:38 tinypilot python[514]: 2023-09-26 15:53:38.377 socket_api ERROR [SENSITIVE] Failed to forward mouse event: Failed to write to HID interface: /dev/hidg1. Is USB cable connected? [/SENSITIVE] Sep 26 15:53:38 tinypilot python[1112]: Process ProcessWithResult-4: Sep 26 15:53:38 tinypilot python[1112]: Traceback (most recent call last): Sep 26 15:53:38 tinypilot python[1112]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:53:38 tinypilot python[1112]: self.run() Sep 26 15:53:38 tinypilot python[1112]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:53:38 tinypilot python[1112]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:53:38 tinypilot python[1112]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:53:38 tinypilot python[1112]: hid_handle.write(bytearray(buffer)) Sep 26 15:53:38 tinypilot python[1112]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:53:38 tinypilot python[514]: 2023-09-26 15:53:38.466 socket_api ERROR [SENSITIVE] Failed to forward mouse event: Failed to write to HID interface: /dev/hidg1. Is USB cable connected? [/SENSITIVE] Sep 26 15:53:40 tinypilot python[1176]: Process ProcessWithResult-5: Sep 26 15:53:40 tinypilot python[1176]: Traceback (most recent call last): Sep 26 15:53:40 tinypilot python[1176]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:53:40 tinypilot python[1176]: self.run() Sep 26 15:53:40 tinypilot python[1176]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:53:40 tinypilot python[1176]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:53:40 tinypilot python[1176]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:53:40 tinypilot python[1176]: hid_handle.write(bytearray(buffer)) Sep 26 15:53:40 tinypilot python[1176]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:53:40 tinypilot python[514]: 2023-09-26 15:53:40.476 socket_api ERROR [SENSITIVE] Failed to forward mouse event: Failed to write to HID interface: /dev/hidg1. Is USB cable connected? [/SENSITIVE] Sep 26 15:53:42 tinypilot python[1188]: Process ProcessWithResult-6: Sep 26 15:53:42 tinypilot python[1188]: Traceback (most recent call last): Sep 26 15:53:42 tinypilot python[1188]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:53:42 tinypilot python[1188]: self.run() Sep 26 15:53:42 tinypilot python[1188]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:53:42 tinypilot python[1188]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:53:42 tinypilot python[1188]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:53:42 tinypilot python[1188]: hid_handle.write(bytearray(buffer)) Sep 26 15:53:42 tinypilot python[1188]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:53:42 tinypilot python[514]: 2023-09-26 15:53:42.478 socket_api ERROR [SENSITIVE] Failed to forward mouse event: Failed to write to HID interface: /dev/hidg1. Is USB cable connected? [/SENSITIVE] Sep 26 15:53:44 tinypilot python[1189]: Process ProcessWithResult-7: Sep 26 15:53:44 tinypilot python[1189]: Traceback (most recent call last): Sep 26 15:53:44 tinypilot python[1189]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:53:44 tinypilot python[1189]: self.run() Sep 26 15:53:44 tinypilot python[1189]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:53:44 tinypilot python[1189]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:53:44 tinypilot python[1189]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:53:44 tinypilot python[1189]: hid_handle.write(bytearray(buffer)) Sep 26 15:53:44 tinypilot python[1189]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:53:44 tinypilot python[514]: 2023-09-26 15:53:44.486 socket_api ERROR [SENSITIVE] Failed to forward mouse event: Failed to write to HID interface: /dev/hidg1. Is USB cable connected? [/SENSITIVE] Sep 26 15:53:46 tinypilot python[1190]: Process ProcessWithResult-8: Sep 26 15:53:46 tinypilot python[1190]: Traceback (most recent call last): Sep 26 15:53:46 tinypilot python[1190]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:53:46 tinypilot python[1190]: self.run() Sep 26 15:53:46 tinypilot python[1190]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:53:46 tinypilot python[1190]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:53:46 tinypilot python[1190]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:53:46 tinypilot python[1190]: hid_handle.write(bytearray(buffer)) Sep 26 15:53:46 tinypilot python[1190]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:53:46 tinypilot python[514]: 2023-09-26 15:53:46.488 socket_api ERROR [SENSITIVE] Failed to forward mouse event: Failed to write to HID interface: /dev/hidg1. Is USB cable connected? [/SENSITIVE] Sep 26 15:53:48 tinypilot python[1193]: Process ProcessWithResult-9: Sep 26 15:53:48 tinypilot python[1193]: Traceback (most recent call last): Sep 26 15:53:48 tinypilot python[1193]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:53:48 tinypilot python[1193]: self.run() Sep 26 15:53:48 tinypilot python[1193]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:53:48 tinypilot python[1193]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:53:48 tinypilot python[1193]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:53:48 tinypilot python[1193]: hid_handle.write(bytearray(buffer)) Sep 26 15:53:48 tinypilot python[1193]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:53:48 tinypilot python[514]: 2023-09-26 15:53:48.494 socket_api ERROR [SENSITIVE] Failed to forward mouse event: Failed to write to HID interface: /dev/hidg1. Is USB cable connected? [/SENSITIVE] Sep 26 15:54:31 tinypilot python[1260]: Process ProcessWithResult-10: Sep 26 15:54:31 tinypilot python[1260]: Traceback (most recent call last): Sep 26 15:54:31 tinypilot python[1260]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:54:31 tinypilot python[1260]: self.run() Sep 26 15:54:31 tinypilot python[1260]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:54:31 tinypilot python[1260]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:54:31 tinypilot python[1260]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:54:31 tinypilot python[1260]: hid_handle.write(bytearray(buffer)) Sep 26 15:54:31 tinypilot python[1260]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:54:31 tinypilot python[514]: 2023-09-26 15:54:31.227 socket_api ERROR [SENSITIVE] Failed to release keys: Failed to write to HID interface: /dev/hidg0. Is USB cable connected? [/SENSITIVE] Sep 26 15:54:31 tinypilot python[1261]: Process ProcessWithResult-11: Sep 26 15:54:31 tinypilot python[1261]: Traceback (most recent call last): Sep 26 15:54:31 tinypilot python[1261]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:54:31 tinypilot python[1261]: self.run() Sep 26 15:54:31 tinypilot python[1261]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:54:31 tinypilot python[1261]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:54:31 tinypilot python[1261]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:54:31 tinypilot python[1261]: hid_handle.write(bytearray(buffer)) Sep 26 15:54:31 tinypilot python[1261]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:54:31 tinypilot python[514]: 2023-09-26 15:54:31.736 socket_api ERROR [SENSITIVE] Failed to forward mouse event: Failed to write to HID interface: /dev/hidg1. Is USB cable connected? [/SENSITIVE] Sep 26 15:54:33 tinypilot python[1264]: Process ProcessWithResult-12: Sep 26 15:54:33 tinypilot python[1264]: Traceback (most recent call last): Sep 26 15:54:33 tinypilot python[1264]: File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap Sep 26 15:54:33 tinypilot python[1264]: self.run() Sep 26 15:54:33 tinypilot python[1264]: File "/opt/tinypilot/app/hid/write.py", line 45, in run Sep 26 15:54:33 tinypilot python[1264]: result.return_value = self._target(*self._args, **self._kwargs) Sep 26 15:54:33 tinypilot python[1264]: File "/opt/tinypilot/app/hid/write.py", line 65, in _write_to_hid_interface_immediately Sep 26 15:54:33 tinypilot python[1264]: hid_handle.write(bytearray(buffer)) Sep 26 15:54:33 tinypilot python[1264]: BrokenPipeError: [Errno 108] Cannot send after transport endpoint shutdown Sep 26 15:54:33 tinypilot python[514]: 2023-09-26 15:54:33.740 socket_api ERROR [SENSITIVE] Failed to forward mouse event: Failed to write to HID interface: /dev/hidg1. Is USB cable connected? [/SENSITIVE] Sep 26 15:54:37 tinypilot sudo[1265]: tinypilot : PWD=/opt/tinypilot ; USER=root ; COMMAND=/opt/tinypilot-privileged/scripts/collect-debug-logs -q Sep 26 15:54:37 tinypilot sudo[1265]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=110) TinyPilot update logs TASK [ansible-role-ustreamer : patch Janus plugin.h file to successfully include refcount.h file] *** ok: [localhost] TASK [ansible-role-ustreamer : create Janus config files] ********************** ok: [localhost] => (item=janus.jcfg) ok: [localhost] => (item=janus.transport.websockets.jcfg) TASK [ansible-role-ustreamer : get multi-arch target triplet (i.e., machine-vendor-operatingsystem)] *** ok: [localhost] TASK [ansible-role-ustreamer : determine Janus plugins directory] ************** ok: [localhost] TASK [ansible-role-ustreamer : create ustreamer group] ************************* ok: [localhost] TASK [ansible-role-ustreamer : create ustreamer user] ************************** ok: [localhost] TASK [ansible-role-ustreamer : check for a boot config file] ******************* ok: [localhost] TASK [ansible-role-ustreamer : save whether boot config file exists] *********** ok: [localhost] TASK [ansible-role-ustreamer : check whether this machine has a uStreamer settings file] *** ok: [localhost] TASK [ansible-role-ustreamer : read uStreamer settings file] ******************* ok: [localhost] TASK [ansible-role-ustreamer : decode settings file] *************************** ok: [localhost] TASK [ansible-role-ustreamer : read ustreamer_capture_device from config file if it's not already defined] *** ok: [localhost] TASK [ansible-role-ustreamer : enable TC358743 overlay in /boot/config.txt] **** ok: [localhost] TASK [ansible-role-ustreamer : enable TC358743-audio overlay in /boot/config.txt] *** ok: [localhost] TASK [ansible-role-ustreamer : set GPU memory to 256MB in /boot/config.txt] **** ok: [localhost] TASK [ansible-role-ustreamer : check for a boot cmdline file] ****************** ok: [localhost] TASK [ansible-role-ustreamer : read /boot/cmdline.txt] ************************* ok: [localhost] TASK [ansible-role-ustreamer : decode command-line string] ********************* ok: [localhost] TASK [ansible-role-ustreamer : change cma to 128M if it's set to a different value] *** skipping: [localhost] TASK [ansible-role-ustreamer : add cma=128M to cmdline.txt if it's missing] **** skipping: [localhost] TASK [ansible-role-ustreamer : create EDIDs folder] **************************** ok: [localhost] TASK [ansible-role-ustreamer : copy TC358743 EDID file] ************************ changed: [localhost] TASK [ansible-role-ustreamer : install TC358743 initializer service] *********** ok: [localhost] TASK [ansible-role-ustreamer : use custom settings for TC358743 chip for any facts not already defined] *** ok: [localhost] TASK [ansible-role-ustreamer : remove TC358743 initializer service file] ******* skipping: [localhost] TASK [ansible-role-ustreamer : disable TC358743 overlay in /boot/config.txt] *** skipping: [localhost] TASK [ansible-role-ustreamer : disable TC358743-audio overlay in /boot/config.txt] *** skipping: [localhost] TASK [ansible-role-ustreamer : collect universal required apt packages] ******** ok: [localhost] TASK [ansible-role-ustreamer : collect Raspberry Pi OS specific required apt packages] *** ok: [localhost] TASK [ansible-role-ustreamer : collect Raspberry Pi OS and Debian specific required apt packages for audio] *** ok: [localhost] TASK [ansible-role-ustreamer : collect Debian-specific required apt packages] *** skipping: [localhost] TASK [ansible-role-ustreamer : collect Ubuntu-specific required apt packages] *** skipping: [localhost] TASK [ansible-role-ustreamer : collect Janus WebRTC plugin specific required apt packages] *** ok: [localhost] TASK [ansible-role-ustreamer : install uStreamer pre-requisite packages] ******* ok: [localhost] TASK [ansible-role-ustreamer : install uStreamer Debian package] *************** changed: [localhost] TASK [ansible-role-ustreamer : create uStreamer folder] ************************ skipping: [localhost] TASK [ansible-role-ustreamer : get uStreamer repo] ***************************** skipping: [localhost] TASK [ansible-role-ustreamer : clean uStreamer repository] ********************* skipping: [localhost] TASK [ansible-role-ustreamer : build uStreamer] ******************************** skipping: [localhost] TASK [ansible-role-ustreamer : fix uStreamer folder permissions] *************** changed: [localhost] TASK [ansible-role-ustreamer : install uStreamer as a service] ***************** ok: [localhost] TASK [ansible-role-ustreamer : enable systemd uStreamer service file] ********** ok: [localhost] TASK [ansible-role-ustreamer : save uStreamer settings file] ******************* ok: [localhost] TASK [ansible-role-ustreamer : create uStreamer Janus plugin config] *********** ok: [localhost] TASK [ansible-role-ustreamer : install uStreamer Janus plugin] ***************** skipping: [localhost] TASK [ansible-role-ustreamer : define ansible to yq architecture mapping] ****** ok: [localhost] TASK [ansible-role-ustreamer : canonicalize yq binary architecture] ************ ok: [localhost] TASK [ansible-role-ustreamer : install yq] ************************************* ok: [localhost] TASK [ansible-role-ustreamer : create uStreamer launcher directories] ********** ok: [localhost] => (item=/opt/ustreamer-launcher) ok: [localhost] => (item=/opt/ustreamer-launcher/configs.d) TASK [ansible-role-ustreamer : create runtime variables dictionary] ************ ok: [localhost] TASK [ansible-role-ustreamer : collect non-null runtime variables] ************* ok: [localhost] => (item=ustreamer_interface) ok: [localhost] => (item=ustreamer_port) skipping: [localhost] => (item=ustreamer_video_path) ok: [localhost] => (item=ustreamer_encoder) ok: [localhost] => (item=ustreamer_format) skipping: [localhost] => (item=ustreamer_resolution) skipping: [localhost] => (item=ustreamer_desired_fps) ok: [localhost] => (item=ustreamer_workers) skipping: [localhost] => (item=ustreamer_quality) skipping: [localhost] => (item=ustreamer_brightness) ok: [localhost] => (item=ustreamer_persistent) ok: [localhost] => (item=ustreamer_use_dv_timings) ok: [localhost] => (item=ustreamer_drop_same_frames) skipping: [localhost] => (item=ustreamer_tcp_nodelay) ok: [localhost] => (item=ustreamer_h264_sink) ok: [localhost] => (item=ustreamer_h264_sink_mode) ok: [localhost] => (item=ustreamer_h264_sink_rm) skipping: [localhost] => (item=ustreamer_h264_bitrate) TASK [ansible-role-ustreamer : print uStreamer runtime variables] ************** ok: [localhost] => { "ustreamer_runtime_vars": { "ustreamer_drop_same_frames": "30", "ustreamer_encoder": "m2m-image", "ustreamer_format": "uyvy", "ustreamer_h264_sink": "tinypilot::ustreamer::h264", "ustreamer_h264_sink_mode": 777, "ustreamer_h264_sink_rm": true, "ustreamer_interface": "127.0.0.1", "ustreamer_persistent": true, "ustreamer_port": 8001, "ustreamer_use_dv_timings": true, "ustreamer_workers": "3" } } TASK [ansible-role-ustreamer : write uStreamer runtime variables to file] ****** ok: [localhost] TASK [ansible-role-ustreamer : install uStreamer launcher script] ************** ok: [localhost] TASK [ansible-role-tinypilot-pro : install TinyPilot Debian package] *********** changed: [localhost] TASK [ansible-role-tinypilot-pro : install TinyPilot as a service] ************* ok: [localhost] TASK [ansible-role-tinypilot-pro : enable systemd TinyPilot service file] ****** ok: [localhost] TASK [ansible-role-tinypilot-pro : generate nginx ca keys] ********************* ok: [localhost] TASK [ansible-role-tinypilot-pro : generate nginx tls keys] ******************** ok: [localhost] TASK [ansible-role-nginx : Include OS-specific variables.] ********************* ok: [localhost] TASK [ansible-role-nginx : Define nginx_user.] ********************************* ok: [localhost] TASK [ansible-role-nginx : include_tasks] ************************************** skipping: [localhost] TASK [ansible-role-nginx : include_tasks] ************************************** skipping: [localhost] TASK [ansible-role-nginx : include_tasks] ************************************** included: /mnt/tinypilot-installer/roles/ansible-role-nginx/tasks/setup-Debian.yml for localhost TASK [ansible-role-nginx : Update apt cache.] ********************************** ok: [localhost] TASK [ansible-role-nginx : Ensure nginx is installed.] ************************* ok: [localhost] TASK [ansible-role-nginx : include_tasks] ************************************** skipping: [localhost] TASK [ansible-role-nginx : include_tasks] ************************************** skipping: [localhost] TASK [ansible-role-nginx : include_tasks] ************************************** skipping: [localhost] TASK [ansible-role-nginx : Remove default nginx vhost config file (if configured).] *** ok: [localhost] TASK [ansible-role-nginx : Ensure nginx_vhost_path exists.] ******************** ok: [localhost] TASK [ansible-role-nginx : Add managed vhost config files.] ******************** ok: [localhost] => (item={'listen': [80, '443 ssl http2'], 'server_name': 'tinypilot', 'filename': 'tinypilot.conf', 'root': '/opt/tinypilot', 'index': 'index.html', 'error_page': '497 =307 https://$http_host$request_uri', 'extra_parameters': 'ssl_certificate "/etc/ssl/certs/tinypilot-nginx.crt";\nssl_certificate_key "/etc/ssl/private/tinypilot-nginx.key";\nssl_protocols TLSv1.2;\nssl_prefer_server_ciphers on;\nssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384;\nssl_ecdh_curve secp384r1;\nssl_session_timeout 10m;\nssl_session_cache shared:SSL:10m;\nssl_session_tickets off;\nproxy_buffers 16 16k;\nproxy_buffer_size 16k;\nproxy_set_header Host $http_host;\nproxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\nproxy_set_header X-Forwarded-Proto $scheme;\nproxy_http_version 1.1;\nlocation /socket.io {\n proxy_pass http://tinypilot;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection "Upgrade";\n # Since this is a connection upgrade, we don\'t inherit the settings from\n # above. We need these so that nginx forwards requests properly to\n # Flask-SocketIO.\n # See: https://github.com/miguelgrinberg/Flask-SocketIO/issues/1501#issuecomment-802082048\n proxy_set_header Host $http_host;\n proxy_set_header X-Forwarded-Host $http_host;\n proxy_set_header X-Forwarded-Proto $scheme;\n}\nlocation /state {\n auth_request /auth;\n auth_request_set $auth_status $upstream_status;\n proxy_pass http://ustreamer;\n}\nlocation /stream {\n auth_request /auth;\n auth_request_set $auth_status $upstream_status;\n postpone_output 0;\n proxy_buffering off;\n proxy_ignore_headers X-Accel-Buffering;\n proxy_pass http://ustreamer;\n}\nlocation /snapshot {\n auth_request /auth;\n auth_request_set $auth_status $upstream_status;\n proxy_pass http://ustreamer;\n}\nlocation /janus/ws {\n auth_request /auth;\n auth_request_set $auth_status $upstream_status;\n proxy_pass http://janus-ws;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection "Upgrade";\n proxy_set_header Host $http_host;\n proxy_set_header X-Real-IP $remote_addr;\n proxy_set_header X-Scheme $scheme;\n proxy_set_header X-Forwarded-Proto $scheme;\n proxy_set_header X-Forwarded-Port $server_port;\n proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n}\nlocation /ca.crt {\n alias "/etc/ssl/certs/tinypilot-ca.crt";\n}\nlocation / {\n proxy_pass http://tinypilot;\n}\nlocation /api/massStorage/backingFiles {\n # Allow large file transfers without buffering them.\n client_max_body_size 0;\n proxy_request_buffering off;\n proxy_read_timeout 1d;\n proxy_pass http://tinypilot;\n}\nlocation ~* ^/.+\\.(html|js|js.map|css|woff|woff2)$ {\n root "/opt/tinypilot/app/static";\n\n # We cache assets to prevent the browser from making redundant\n # requests to the same files while loading the page. (Observed on\n # Chrome 91.) We don’t want caching otherwise, though, in order to\n # avoid stale files after users update their device. Note, that in\n # addition to `max-age`, the browser’s caching behaviour is relative\n # to the `Last-Modified` header, so we make that seem recent.\n add_header Last-Modified $date_gmt;\n add_header Cache-Control \'public, max-age=10s\';\n}\nlocation ~* ^/.+\\.(jpg|jpeg|png|ico)$ {\n root "/opt/tinypilot/app/static";\n}\n# Authenticate any protected routes that are outside of the core\n# TinyPilot web app.\nlocation = /auth {\n internal;\n proxy_pass http://tinypilot/api/auth;\n proxy_pass_request_body off;\n proxy_set_header Content-Length "";\n proxy_set_header X-Original-URI $request_uri;\n\n # Redefine header directives, as they are not inherited here:\n # See http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_set_header\n proxy_set_header X-Forwarded-Proto $scheme;\n}\n'}) TASK [ansible-role-nginx : Remove managed vhost config files.] ***************** skipping: [localhost] => (item={'listen': [80, '443 ssl http2'], 'server_name': 'tinypilot', 'filename': 'tinypilot.conf', 'root': '/opt/tinypilot', 'index': 'index.html', 'error_page': '497 =307 https://$http_host$request_uri', 'extra_parameters': 'ssl_certificate "/etc/ssl/certs/tinypilot-nginx.crt";\nssl_certificate_key "/etc/ssl/private/tinypilot-nginx.key";\nssl_protocols TLSv1.2;\nssl_prefer_server_ciphers on;\nssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384;\nssl_ecdh_curve secp384r1;\nssl_session_timeout 10m;\nssl_session_cache shared:SSL:10m;\nssl_session_tickets off;\nproxy_buffers 16 16k;\nproxy_buffer_size 16k;\nproxy_set_header Host $http_host;\nproxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\nproxy_set_header X-Forwarded-Proto $scheme;\nproxy_http_version 1.1;\nlocation /socket.io {\n proxy_pass http://tinypilot;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection "Upgrade";\n # Since this is a connection upgrade, we don\'t inherit the settings from\n # above. We need these so that nginx forwards requests properly to\n # Flask-SocketIO.\n # See: https://github.com/miguelgrinberg/Flask-SocketIO/issues/1501#issuecomment-802082048\n proxy_set_header Host $http_host;\n proxy_set_header X-Forwarded-Host $http_host;\n proxy_set_header X-Forwarded-Proto $scheme;\n}\nlocation /state {\n auth_request /auth;\n auth_request_set $auth_status $upstream_status;\n proxy_pass http://ustreamer;\n}\nlocation /stream {\n auth_request /auth;\n auth_request_set $auth_status $upstream_status;\n postpone_output 0;\n proxy_buffering off;\n proxy_ignore_headers X-Accel-Buffering;\n proxy_pass http://ustreamer;\n}\nlocation /snapshot {\n auth_request /auth;\n auth_request_set $auth_status $upstream_status;\n proxy_pass http://ustreamer;\n}\nlocation /janus/ws {\n auth_request /auth;\n auth_request_set $auth_status $upstream_status;\n proxy_pass http://janus-ws;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection "Upgrade";\n proxy_set_header Host $http_host;\n proxy_set_header X-Real-IP $remote_addr;\n proxy_set_header X-Scheme $scheme;\n proxy_set_header X-Forwarded-Proto $scheme;\n proxy_set_header X-Forwarded-Port $server_port;\n proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n}\nlocation /ca.crt {\n alias "/etc/ssl/certs/tinypilot-ca.crt";\n}\nlocation / {\n proxy_pass http://tinypilot;\n}\nlocation /api/massStorage/backingFiles {\n # Allow large file transfers without buffering them.\n client_max_body_size 0;\n proxy_request_buffering off;\n proxy_read_timeout 1d;\n proxy_pass http://tinypilot;\n}\nlocation ~* ^/.+\\.(html|js|js.map|css|woff|woff2)$ {\n root "/opt/tinypilot/app/static";\n\n # We cache assets to prevent the browser from making redundant\n # requests to the same files while loading the page. (Observed on\n # Chrome 91.) We don’t want caching otherwise, though, in order to\n # avoid stale files after users update their device. Note, that in\n # addition to `max-age`, the browser’s caching behaviour is relative\n # to the `Last-Modified` header, so we make that seem recent.\n add_header Last-Modified $date_gmt;\n add_header Cache-Control \'public, max-age=10s\';\n}\nlocation ~* ^/.+\\.(jpg|jpeg|png|ico)$ {\n root "/opt/tinypilot/app/static";\n}\n# Authenticate any protected routes that are outside of the core\n# TinyPilot web app.\nlocation = /auth {\n internal;\n proxy_pass http://tinypilot/api/auth;\n proxy_pass_request_body off;\n proxy_set_header Content-Length "";\n proxy_set_header X-Original-URI $request_uri;\n\n # Redefine header directives, as they are not inherited here:\n # See http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_set_header\n proxy_set_header X-Forwarded-Proto $scheme;\n}\n'}) TASK [ansible-role-nginx : Remove legacy vhosts.conf file.] ******************** ok: [localhost] TASK [ansible-role-nginx : Copy nginx configuration in place.] ***************** changed: [localhost] TASK [ansible-role-nginx : Ensure nginx service is running as configured.] ***** ok: [localhost] RUNNING HANDLER [ansible-role-nginx : reload nginx] **************************** changed: [localhost] PLAY RECAP ********************************************************************* localhost : ok=69 changed=6 unreachable=0 failed=0 skipped=19 rescued=0 ignored=0 + cp /mnt/tinypilot-installer/tmp/tmp.3sqEuRKvJf.yml /home/tinypilot/settings.yml + chown tinypilot:tinypilot /home/tinypilot/settings.yml + chmod 0644 /home/tinypilot/settings.yml + clean_up + rm -rf /mnt/tinypilot-installer/tmp/tmp.3sqEuRKvJf.yml + clean_up + sudo umount --lazy /mnt/tinypilot-installer + sudo rm -rf /opt/tinypilot-updater /mnt/tinypilot-installer 2023-07-18 17:53:52.305 __main__ INFO Update completed successfully 2023-07-18 17:53:52.305 update.result_store INFO Writing result file to /home/tinypilot/logs/latest-update-result.json 2023-07-18 17:53:52.307 update.target_version INFO Clearing target version file /home/tinypilot/target-version uStreamer configuration ==> /opt/ustreamer-launcher/configs.d/000-defaults.yml <== --- ustreamer_drop_same_frames: '30' ustreamer_encoder: m2m-image ustreamer_format: uyvy ustreamer_h264_sink: tinypilot::ustreamer::h264 ustreamer_h264_sink_mode: 777 ustreamer_h264_sink_rm: true ustreamer_interface: 127.0.0.1 ustreamer_persistent: true ustreamer_port: 8001 ustreamer_use_dv_timings: true ustreamer_workers: '3' ==> /opt/ustreamer-launcher/configs.d/100-tinypilot.yml <== ustreamer_desired_fps: 15 ustreamer_persistent: true ustreamer_quality: 50 uStreamer logs -- Journal begins at Tue 2023-09-26 15:53:19 BST, ends at Tue 2023-09-26 15:54:37 BST. -- Sep 26 15:53:23 tinypilot systemd[1]: Started uStreamer - Lightweight, optimized video encoder. Sep 26 15:53:25 tinypilot launch[515]: + exec /opt/ustreamer/ustreamer --host 127.0.0.1 --port 8001 --encoder m2m-image --format uyvy --desired-fps 15 --workers 3 --quality 50 --drop-same-frames 30 --persistent --dv-timings --h264-sink tinypilot::ustreamer::h264 --h264-sink-mode 777 --h264-sink-rm Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.199 main] -- Starting PiKVM uStreamer 5.38 ... Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.199 main] -- Using internal blank placeholder Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.200 main] -- Using H264-sink: tinypilot::ustreamer::h264 Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.200 main] -- Listening HTTP on [127.0.0.1]:8001 Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.200 stream] -- Using V4L2 device: /dev/video0 Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.200 stream] -- Using desired FPS: 15 Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.200 http] -- Starting HTTP eventloop ... Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.200 stream] -- H264: Initializing encoder ... Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.210 stream] -- H264: Configuring encoder: DMA=0 ... Sep 26 15:53:25 tinypilot launch[515]: ================================================================================ Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.228 stream] -- Device fd=10 opened Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.228 stream] -- Using input channel: 0 Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.249 stream] -- Using resolution: 640x480 Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.249 stream] -- Using format: UYVY Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.249 stream] -- Querying HW FPS changing is not supported Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.249 stream] -- Using IO method: MMAP Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.252 stream] -- Requested 5 device buffers, got 5 Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.259 stream] -- Capturing started Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.259 stream] -- JPEG-0: Initializing encoder ... Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.259 stream] -- JPEG-1: Initializing encoder ... Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.259 stream] -- JPEG-2: Initializing encoder ... Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.259 stream] -- Using JPEG quality: 50% Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.259 stream] -- Creating pool JPEG with 3 workers ... Sep 26 15:53:25 tinypilot launch[515]: -- INFO [10.260 stream] -- Capturing ... Sep 26 15:53:26 tinypilot launch[515]: -- INFO [10.941 stream] -- H264: Configuring encoder: DMA=1 ... Sep 26 15:53:26 tinypilot launch[515]: -- INFO [10.941 jw-0] -- JPEG-0: Configuring encoder: DMA=0 ... Sep 26 15:53:26 tinypilot launch[515]: -- INFO [10.961 jw-1] -- JPEG-1: Configuring encoder: DMA=0 ... Sep 26 15:53:26 tinypilot launch[515]: -- INFO [10.982 jw-2] -- JPEG-2: Configuring encoder: DMA=0 ... Sep 26 15:53:27 tinypilot launch[515]: -- INFO [11.922 stream] -- Got V4L2 event Sep 26 15:53:27 tinypilot launch[515]: -- INFO [11.922 stream] -- Got V4L2_EVENT_SOURCE_CHANGE: source changed Sep 26 15:53:27 tinypilot launch[515]: -- INFO [11.922 stream] -- Destroying workers pool JPEG ... Sep 26 15:53:27 tinypilot launch[515]: -- INFO [11.955 stream] -- Capturing stopped Sep 26 15:53:27 tinypilot launch[515]: -- INFO [11.956 stream] -- Device fd=10 closed Sep 26 15:53:27 tinypilot launch[515]: -- INFO [11.956 stream] -- Changed video frame to BLANK Sep 26 15:53:27 tinypilot launch[515]: -- INFO [11.960 stream] -- H264: Configuring encoder: DMA=0 ... Sep 26 15:53:27 tinypilot launch[515]: ================================================================================ Sep 26 15:53:27 tinypilot launch[515]: -- INFO [11.979 stream] -- Device fd=10 opened Sep 26 15:53:27 tinypilot launch[515]: -- INFO [11.979 stream] -- Using input channel: 0 Sep 26 15:53:27 tinypilot launch[515]: -- INFO [11.986 stream] -- Got new DV-timings: 1920x1080p50.00, pixclk=148500000, vsync=45, hsync=720 Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.023 stream] -- Using resolution: 1920x1080 Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.023 stream] -- Using format: UYVY Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.023 stream] -- Querying HW FPS changing is not supported Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.023 stream] -- Using IO method: MMAP Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.031 stream] -- Requested 5 device buffers, got 5 Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.038 stream] -- Capturing started Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.038 stream] -- Using JPEG quality: 50% Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.038 stream] -- Creating pool JPEG with 3 workers ... Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.039 stream] -- Capturing ... Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.041 stream] -- H264: Configuring encoder: DMA=1 ... Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.041 jw-0] -- JPEG-0: Configuring encoder: DMA=0 ... Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.079 jw-1] -- JPEG-1: Configuring encoder: DMA=0 ... Sep 26 15:53:27 tinypilot launch[515]: -- INFO [12.103 jw-2] -- JPEG-2: Configuring encoder: DMA=0 ... Sep 26 15:53:35 tinypilot launch[515]: -- INFO [20.210 http] -- HTTP: NEW client (now=1): [192.168.1.119]:50490, id=6d85df3f706182a2 Sep 26 15:53:35 tinypilot launch[515]: -- INFO [20.661 stream] -- H264: Requested keyframe by a sink client Sep 26 15:53:35 tinypilot launch[515]: -- INFO [20.722 http] -- HTTP: DEL client (now=0): [192.168.1.119]:50490, id=6d85df3f706182a2, Resource temporarily unavailable (reading,eof) Sep 26 15:53:36 tinypilot launch[515]: -- INFO [20.821 stream] -- H264: Requested keyframe by a sink client nginx logs -- Journal begins at Tue 2023-09-26 15:53:19 BST, ends at Tue 2023-09-26 15:54:37 BST. -- Sep 26 15:53:23 tinypilot systemd[1]: Starting A high performance web server and a reverse proxy server... Sep 26 15:53:24 tinypilot systemd[1]: Started A high performance web server and a reverse proxy server. 2023/09/26 04:06:53 [error] 553#553: *76 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:07:22 [error] 564#564: *2 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:07:22 [error] 564#564: *2 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:07:22 [error] 564#564: *2 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:08:55 [error] 567#567: *27 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.164, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:09:50 [error] 559#559: *1 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.164, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:11:35 [error] 572#572: *1 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.164, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:12:36 [error] 554#554: *1 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.164, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:14:57 [error] 549#549: *29 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:14:57 [error] 549#549: *29 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:14:57 [error] 549#549: *29 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:15:57 [error] 560#560: *2 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.1.119, server: tinypilot, request: "HEAD /stream HTTP/2.0", upstream: "http://127.0.0.1:8001/stream", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:16:06 [error] 560#560: *2 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:19:29 [error] 558#558: *2 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.1.119, server: tinypilot, request: "HEAD /stream HTTP/2.0", upstream: "http://127.0.0.1:8001/stream", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:19:39 [error] 558#558: *2 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:19:39 [error] 558#558: *2 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:19:39 [error] 558#558: *2 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:41:14 [error] 575#575: *26 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:41:14 [error] 575#575: *26 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:41:14 [error] 575#575: *26 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:41:44 [error] 569#569: *2 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:41:44 [error] 569#569: *2 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:41:44 [error] 569#569: *2 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 04:42:45 [error] 558#558: *27 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 11:42:06 [error] 572#572: *27 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 11:43:03 [error] 567#567: *2 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 11:43:03 [error] 567#567: *2 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 11:43:03 [error] 567#567: *2 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 11:43:37 [error] 553#553: *2 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 11:43:37 [error] 553#553: *2 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 11:43:37 [error] 553#553: *2 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 12:16:53 [error] 564#564: *46 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 12:16:53 [error] 564#564: *46 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 12:16:53 [error] 564#564: *46 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 12:19:40 [error] 575#575: *3 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", upstream: "http://127.0.0.1:8001/stream?advance_headers=1", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 12:19:45 [error] 575#575: *3 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 13:06:11 [error] 553#553: *50 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 13:06:11 [error] 553#553: *50 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 13:06:11 [error] 553#553: *50 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 14:46:45 [error] 559#559: *27 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 14:46:45 [error] 559#559: *27 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 14:46:45 [error] 559#559: *27 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 14:47:10 [error] 570#570: *2 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 14:47:10 [error] 570#570: *2 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 14:47:10 [error] 570#570: *2 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 15:53:17 [error] 582#582: *103 upstream prematurely closed connection while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "POST /api/restart HTTP/2.0", upstream: "http://127.0.0.1:8000/api/restart", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 15:53:17 [error] 582#582: *103 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", subrequest: "/auth", upstream: "http://127.0.0.1:8000/api/auth", host: "tinypilot", referrer: "https://tinypilot/" 2023/09/26 15:53:17 [error] 582#582: *103 auth request unexpected status: 502 while sending to client, client: 192.168.1.119, server: tinypilot, request: "GET /stream?advance_headers=1 HTTP/2.0", host: "tinypilot", referrer: "https://tinypilot/" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /css/icons.css HTTP/2.0" 200 841 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /js/clipboard.js HTTP/2.0" 200 889 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /css/toggle.css HTTP/2.0" 200 1005 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /js/mouse.js HTTP/2.0" 200 8492 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /js/keycodes.js HTTP/2.0" 200 3205 "https://tinypilot/js/app.js" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /js/keyboardstate.js HTTP/2.0" 200 3164 "https://tinypilot/js/app.js" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /js/keystrokes.js HTTP/2.0" 200 362 "https://tinypilot/js/app.js" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /js/paste.js HTTP/2.0" 200 2096 "https://tinypilot/js/app.js" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /js/overlays.js HTTP/2.0" 200 495 "https://tinypilot/js/app.js" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /img/logo.svg HTTP/2.0" 200 5550 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /img/video-stream-icon.svg HTTP/2.0" 200 840 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /img/warning-icon.svg HTTP/2.0" 200 2177 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /socket.io/?EIO=4&transport=polling&t=OhHzklL HTTP/2.0" 200 96 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /third-party/fonts/overpass-light.woff2 HTTP/2.0" 200 26568 "https://tinypilot/third-party/fonts/fonts.css" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /third-party/fonts/overpass-mono-light.woff2 HTTP/2.0" 200 50112 "https://tinypilot/third-party/fonts/fonts.css" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /third-party/fonts/overpass-semibold.woff2 HTTP/2.0" 200 25032 "https://tinypilot/third-party/fonts/fonts.css" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "POST /socket.io/?EIO=4&transport=polling&t=OhHzkm4&sid=e8B6PBCLrWmVyfvHAAAT HTTP/2.0" 200 2 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /socket.io/?EIO=4&transport=polling&t=OhHzkm4.0&sid=e8B6PBCLrWmVyfvHAAAT HTTP/2.0" 200 32 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /img/external-link-icon.svg HTTP/2.0" 200 1223 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /img/clipboard-icon.svg HTTP/2.0" 200 855 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /img/angle-down-icon.svg HTTP/2.0" 200 516 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /favicon.ico HTTP/2.0" 200 1213 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:55 +0100] "GET /socket.io/?EIO=4&transport=polling&t=OhHzkmN&sid=e8B6PBCLrWmVyfvHAAAT HTTP/2.0" 200 1 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:56 +0100] "GET /stream?advance_headers=1 HTTP/2.0" 200 235532 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:48:56 +0100] "GET /apple-touch-icon.png HTTP/2.0" 200 3571 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:50:50 +0100] "GET /stream?advance_headers=1 HTTP/2.0" 200 1048714 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:53:17 +0100] "GET /janus/ws HTTP/1.1" 101 3939 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:53:17 +0100] "GET /socket.io/?EIO=4&transport=websocket&sid=e8B6PBCLrWmVyfvHAAAT HTTP/1.1" 101 140 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:53:17 +0100] "POST /api/restart HTTP/2.0" 502 559 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-" 192.168.1.119 - - [26/Sep/2023:15:53:17 +0100] "GET /stream?advance_headers=1 HTTP/2.0" 500 579 "https://tinypilot/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36" "-"