I'm making progress...
The last upgrade/downgrade relocated my device's driver (BCRobotics) and extensions file to a new User folder.
I returned them to the primary User folder. However, upon doing so, I encountered the same error I experienced when I upgraded to version 5.0.2.
Subsequently, I attempted another upgrade to version 5.0.2, and the error persisted:
Mar 18 16:23:41 edessa /weewxd.py[414]: BCRobo: MainThread: W1ThermSensor setup fine.
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: Caught OSError: [Errno 13] Permission denied: '/dev/i2c-1'
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** Traceback (most recent call last):
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** File "/usr/share/weewx/weewxd.py", line 160, in main
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** engine = weewx.engine.StdEngine(config_dict)
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** File "/usr/share/weewx/weewx/engine.py", line 77, in __init__
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** self.setupStation(config_dict)
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** File "/usr/share/weewx/weewx/engine.py", line 104, in setupStation
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** __import__(driver)
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** File "/etc/weewx/bin/user/BCRobotics.py", line 80, in <module>
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** i2c = busio.I2C(board.SCL, board.SDA)
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** File "/usr/local/lib/python3.7/dist-packages/busio.py", line 32, in __init__
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** self.init(scl, sda, frequency)
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** File "/usr/local/lib/python3.7/dist-packages/busio.py", line 107, in init
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** self._i2c = _I2C(portId, mode=_I2C.MASTER, baudrate=frequency)
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** File "/usr/local/lib/python3.7/dist-packages/adafruit_blinka/microcontroller/generic_linux/i2c.py",
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** self._i2c_bus = smbus.SMBus(bus_num)
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** File "/usr/local/lib/python3.7/dist-packages/Adafruit_PureIO/smbus.py", line 125, in __init__
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** self.open(bus)
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** File "/usr/local/lib/python3.7/dist-packages/Adafruit_PureIO/smbus.py", line 151, in open
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** self._device = open("/dev/i2c-{0}".format(bus), "r+b", buffering=0)
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** PermissionError: [Errno 13] Permission denied: '/dev/i2c-1'
Mar 18 16:23:41 edessa weewxd[414]: CRITICAL __main__: **** Waiting 10 seconds then retrying...
I added the weewx user to the group defined on the device.
Station is running but I still get errors from some sensors:
Mar 18 16:47:51 edessa /weewxd.py[416]: BCRobo: MainThread: Error setting up GPIO 17: No access to /dev/mem. Try running as root!
Another thing I don't understand is how the station reverted to Simulator mode despite keeping the .conf file intact.