I am trying to run weewx on a container in ProxMox. I can do lsusb, find the device, and properly forward it to the weewx container. It starts up and works just fine. After a short while (exact time unknown) the "Device" number increments on lsusb, which disables the forwarding of that device. I'm not sure if it is a programming issue or acurite issue, but I need to permanently forward that device to the container. Currently, I have a symlink created and set to /dev/acurite in the host and forwarded to the container, but I need a script or something to forward /dev/acurite to /dev/bus/usb/002/XXX that changes when it increments. Unless I can put into /weewx/bin/weewx/drivers/acurite.py to JUST use the /dev/acurite device, but I don't know that much Python programming.
*UPDATE*: Apparently when it gets a new "Device ID" the Container does not update the major/minor numbers, and has to be rebooted to re-connect. Any idea why it keeps incrementing the Device Number? Any help is appreciated. Thanks Ryan *Examples*: ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- root@pve01:~# lsusb Bus 002 Device 031: ID 24c0:0003 Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub root@pve01:~# ls -l /dev/bus/usb/002/031 crw-rw-rw- 1 root root 189, 158 Sep 30 13:40 /dev/bus/usb/002/031 root@pve01:~# ls -la /dev/acurite lrwxrwxrwx 1 root root 15 Sep 30 13:40 /dev/acurite -> bus/usb/002/031 root@pve01:~# ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- user@weewx:/$ lsusb Bus 002 Device 031: ID 24c0:0003 Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub user@weewx:/$ ls -l /dev/acurite crw-rw-rw- 1 root root 189, 158 Sep 30 20:34 /dev/acurite user@weewx:/$ ls -l /dev/bus/usb/002/031 lrwxrwxrwx 1 root root 12 Sep 30 21:11 /dev/bus/usb/002/031 -> /dev/acurite user@weewx:/$ ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- *WORKING * ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- user@weewx:~$ sudo ln -s /dev/acurite /dev/bus/usb/002/031 user@weewx:~$ sudo service weewx restart user@weewx:~$ sudo service weewx status * weewx.service - LSB: weewx weather system Loaded: loaded (/etc/init.d/weewx; generated) Active: active (running) since Sun 2018-09-30 21:17:22 UTC; 3s ago Docs: man:systemd-sysv-generator(8) Process: 428 ExecStop=/etc/init.d/weewx stop (code=exited, status=0/SUCCESS) Process: 456 ExecStart=/etc/init.d/weewx start (code=exited, status=0/SUCCESS) Tasks: 3 (limit: 4915) CGroup: /system.slice/weewx.service `-471 /usr/bin/python /home/weewx/bin/weewxd --daemon --pidfile=/var/run/weewx.pid /home/weewx/weewx.conf Sep 30 21:17:22 weewx weewx[471]: engine: Loading service weewx.engine.StdPrint Sep 30 21:17:22 weewx weewx[471]: engine: Finished loading service weewx.engine.StdPrint Sep 30 21:17:22 weewx weewx[471]: engine: Loading service weewx.engine.StdReport Sep 30 21:17:22 weewx weewx[471]: engine: Finished loading service weewx.engine.StdReport Sep 30 21:17:22 weewx weewx[471]: engine: Starting up weewx version 3.8.2 Sep 30 21:17:22 weewx weewx[471]: engine: Station does not support reading the time Sep 30 21:17:22 weewx weewx[471]: engine: Starting main packet loop. Sep 30 21:17:22 weewx weewx[471]: manager: Daily summary version is 2.0 Sep 30 21:17:22 weewx weewx[471]: acurite: Found station at bus= device= Sep 30 21:17:22 weewx weewx[471]: acurite: next read in 18 seconds user@weewx:~$ *NOT WORKING* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- user@weewx:~$ sudo rm /dev/bus/usb/002/031 user@weewx:~$ sudo service weewx restart user@weewx:~$ sudo service weewx status * weewx.service - LSB: weewx weather system Loaded: loaded (/etc/init.d/weewx; generated) Active: active (running) since Sun 2018-09-30 21:18:35 UTC; 1s ago Docs: man:systemd-sysv-generator(8) Process: 508 ExecStop=/etc/init.d/weewx stop (code=exited, status=0/SUCCESS) Process: 528 ExecStart=/etc/init.d/weewx start (code=exited, status=0/SUCCESS) Tasks: 4 (limit: 4915) CGroup: /system.slice/weewx.service `-543 /usr/bin/python /home/weewx/bin/weewxd --daemon --pidfile=/var/run/weewx.pid /home/weewx/weewx.conf Sep 30 21:18:35 weewx weewx[543]: engine: Loading service weewx.engine.StdReport Sep 30 21:18:35 weewx weewx[543]: engine: Finished loading service weewx.engine.StdReport Sep 30 21:18:35 weewx weewx[543]: engine: Starting up weewx version 3.8.2 Sep 30 21:18:35 weewx weewx[543]: engine: Station does not support reading the time Sep 30 21:18:35 weewx weewx[543]: engine: Starting main packet loop. Sep 30 21:18:35 weewx weewx[543]: manager: Daily summary version is 2.0 Sep 30 21:18:35 weewx weewx[543]: acurite: Found station at bus= device= Sep 30 21:18:35 weewx weewx[543]: acurite: release interface failed: [Errno 19] No such device (it may have been disconnected) Sep 30 21:18:35 weewx weewx[543]: acurite: Unable to claim USB interface 0: [Errno 19] No such device (it may have been disconnected) Sep 30 21:18:35 weewx weewx[543]: acurite: Failed attempt 1 of 10 to get LOOP data: [Errno 19] No such device (it may have been disconnected) user@weewx:~$