A couple things.... - weewx 5 runs as user 'weewx' and group 'weewx', so if you add yourself to group weewx you can probably do everything (other than starting/stopping weewx itself) without needing sudo. Check your group membership by running the 'groups' command. If you are not in group weewx, run "sudo usermod -aG weewx pi" assuming you're running as user 'pi' there. Log out and back in, and run 'groups' again and you should be in group weewx and able to edit weewx.conf without sudo.
- if you run "weectl debug --output=somefilename" and post the output we can take a look at your setup. Be sure to check it to make sure it correctly obfuscates any usernames/passwords in its output. It's pretty good at it, but not perfect sometimes. On Friday, December 5, 2025 at 9:35:43 AM UTC-8 Jim B. wrote: > The strange thing is I wasn't getting it before I did my password reset. > Everything was working fine. > > I am using the Belchertown Skin if that is relevant.... > > I am kind of stalled as to which direction to proceed. Should I be > troubleshooting permissions? As I said, I have to sudo to nano > /etc/weewx/weewx.conf and that's not normal, right? Could this be a > permission error? > > On Friday, December 5, 2025 at 10:16:56 AM UTC-5 Tom Keffer wrote: > >> You are getting an error, >> >> *AttributeError: module 'weewx.restx' has no attribute 'StdCustomAPI'* >> >> The problem is that you are trying to load a custom service called >> "weewx.restx.StdCustomAPI". This is conflicting with the module >> weewx.restx, which is part of the standard distribution. >> >> I don't know where this custom service came from, but it should be named >> something else. >> >> -tk >> >> On Fri, Dec 5, 2025 at 7:02 AM Jim B. <[email protected]> wrote: >> >>> I had to manually recover my password on my raspberry pi running my >>> WeeWx installation. I also (probably my critical error) let linux update. >>> Since I did that, I noticed my webpage hasn't updated. >>> >>> I am JUST STARTING to learn Linux, so I am sure that is part of my >>> problem. >>> >>> Digging in... >>> >>> Hardware: Raspberry Pi 5 (4GB) >>> OS: Debian Bookworm 12 >>> WeeWx Ver: 5.1 >>> >>> The first thing I noticed is when I check the status it's failed. >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> *brasic@stormpi:~ $ sudo systemctl status weewx× weewx.service - WeeWX >>> Loaded: loaded (/lib/systemd/system/weewx.service; enabled; preset: >>> enabled) Active: failed (Result: exit-code) since Fri 2025-12-05 >>> 07:27:20 EST; 18min ago Duration: 329ms Docs: >>> https://weewx.com/docs <https://weewx.com/docs> Process: 106042 >>> ExecStart=weewxd /etc/weewx/weewx.conf (code=exited, status=1/FAILURE) >>> Main PID: 106042 (code=exited, status=1/FAILURE) CPU: 331msDec 05 >>> 07:27:20 stormpi weewxd[106042]: CRITICAL __main__: **** File >>> "/usr/share/weewx/weeutil/weeutil.py", line 1405, in get_objectDec 05 >>> 07:27:20 stormpi weewxd[106042]: CRITICAL __main__: **** klass = >>> getattr(module, klass_name)Dec 05 07:27:20 stormpi weewxd[106042]: CRITICAL >>> __main__: **** ^^^^^^^^^^^^^^^^^^^^^^^^^^^Dec 05 07:27:20 >>> stormpi weewxd[106042]: CRITICAL __main__: **** AttributeError: module >>> 'weewx.restx' has no attribute 'StdCustomAPI'Dec 05 07:27:20 stormpi >>> weewxd[106042]: CRITICAL __main__: **** Exiting.Dec 05 07:27:20 >>> stormpi weewxd[106042]: klass = getattr(module, klass_name)Dec 05 >>> 07:27:20 stormpi weewxd[106042]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^Dec >>> 05 07:27:20 stormpi weewxd[106042]: AttributeError: module 'weewx.restx' >>> has no attribute 'StdCustomAPI'Dec 05 07:27:20 stormpi systemd[1]: >>> weewx.service: Main process exited, code=exited, status=1/FAILUREDec 05 >>> 07:27:20 stormpi systemd[1]: weewx.service: Failed with result 'exit-code'.* >>> >>> I also notice that to edit the /etc/weewx/weewx.conf I need to use >>> *sudo* nano /etc/weewx/weewx.conf rather than just nano. >>> >>> When I checked the logs (journalctl -r), here is what I found... >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> *Dec 05 08:17:01 stormpi CRON[107499]: pam_unix(cron:session): session >>> closed for user rootDec 05 08:17:01 stormpi CRON[107500]: (root) CMD (cd / >>> && run-parts --report /etc/cron.hourly)Dec 05 08:17:01 stormpi >>> CRON[107499]: pam_unix(cron:session): session opened for user root(uid=0) >>> by (uid=0)Dec 05 08:16:59 stormpi systemd[1]: weewx.service: Failed with >>> result 'exit-code'.Dec 05 08:16:59 stormpi systemd[1]: weewx.service: Main >>> process exited, code=exited, status=1/FAILUREDec 05 08:16:59 stormpi >>> weewxd[107494]: AttributeError: module 'weewx.restx' has no attribute >>> 'StdCustomAPI'Dec 05 08:16:59 stormpi weewxd[107494]: >>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^Dec 05 08:16:59 stormpi weewxd[107494]: >>> klass = getattr(module, klass_name)Dec 05 08:16:59 stormpi weewxd[107494]: >>> File "/usr/share/weewx/weeutil/weeutil.py", line 1405, in get_objectDec >>> 05 08:16:59 stormpi weewxd[107494]: >>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Dec 05 08:16:59 stormpi weewxd[107494]: >>> obj = weeutil.weeutil.get_object(svc)(self, config_dict)Dec 05 08:16:59 >>> stormpi weewxd[107494]: File "/usr/share/weewx/weewx/engine.py", line >>> 157, in loadServicesDec 05 08:16:59 stormpi weewxd[107494]: >>> self.loadServices(config_dict)Dec 05 08:16:59 stormpi weewxd[107494]: >>> File "/usr/share/weewx/weewx/engine.py", line 89, in __init__Dec 05 >>> 08:16:59 stormpi weewxd[107494]: >>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Dec 05 08:16:59 stormpi weewxd[107494]: >>> engine = weewx.engine.StdEngine(config_dict)Dec 05 08:16:59 stormpi >>> weewxd[107494]: File "/usr/share/weewx/weewxd.py", line 121, in mainDec >>> 05 08:16:59 stormpi weewxd[107494]: main()Dec 05 08:16:59 stormpi >>> weewxd[107494]: CRITICAL __main__: **** Exiting.Dec 05 08:16:59 >>> stormpi weewxd[107494]: File "/usr/share/weewx/weewxd.py", line 226, in >>> <module>Dec 05 08:16:59 stormpi weewxd[107494]: Traceback (most recent call >>> last):Dec 05 08:16:59 stormpi weewxd[107494]: CRITICAL __main__: **** >>> AttributeError: module 'weewx.restx' has no attribute 'StdCustomAPI'Dec 05 >>> 08:16:59 stormpi weewxd[107494]: CRITICAL __main__: **** >>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^Dec 05 08:16:59 stormpi weewxd[107494]: >>> CRITICAL __main__: **** klass = getattr(module, klass_name)Dec 05 >>> 08:16:59 stormpi weewxd[107494]: CRITICAL __main__: **** File >>> "/usr/share/weewx/weeutil/weeutil.py", line 1405, in get_objectDec 05 >>> 08:16:59 stormpi weewxd[107494]: CRITICAL __main__: **** >>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Dec 05 08:16:59 stormpi weewxd[107494]: >>> CRITICAL __main__: **** obj = >>> weeutil.weeutil.get_object(svc)(self, config_dict)Dec 05 08:16:59 stormpi >>> weewxd[107494]: CRITICAL __main__: **** File >>> "/usr/share/weewx/weewx/engine.py", line 157, in loadServicesDec 05 >>> 08:16:59 stormpi weewxd[107494]: CRITICAL __main__: **** >>> self.loadServices(config_dict)Dec 05 08:16:59 stormpi weewxd[107494]: >>> CRITICAL __main__: **** File "/usr/share/weewx/weewx/engine.py", >>> line 89, in __init__Dec 05 08:16:59 stormpi weewxd[107494]: CRITICAL >>> __main__: **** ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Dec 05 >>> 08:16:59 stormpi weewxd[107494]: CRITICAL __main__: **** engine = >>> weewx.engine.StdEngine(config_dict)Dec 05 08:16:59 stormpi weewxd[107494]: >>> CRITICAL __main__: **** File "/usr/share/weewx/weewxd.py", line 121, >>> in mainDec 05 08:16:59 stormpi weewxd[107494]: CRITICAL __main__: **** >>> Traceback (most recent call last):Dec 05 08:16:59 stormpi weewxd[107494]: >>> CRITICAL __main__: **** module 'weewx.restx' has no attribute >>> 'StdCustomAPI'Dec 05 08:16:59 stormpi weewxd[107494]: CRITICAL __main__: >>> Caught unrecoverable exception:Dec 05 08:16:59 stormpi weewxd[107494]: >>> DEBUG weewx.restx: Shut down StationRegistry thread.Dec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.restx: Shut down PWSWeather thread.Dec 05 >>> 08:16:59 stormpi weewxd[107494]: DEBUG weewx.restx: Shut down AWEKAS >>> thread.Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG weewx.manager: Daily >>> summary version is 4.0Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.manager: Daily summary version is 4.0Dec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.engine: Loading service >>> weewx.restx.StdCustomAPIDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Finished loading service weewx.restx.StdAWEKASDec 05 08:16:59 >>> stormpi weewxd[107494]: INFO weewx.restx: AWEKAS: Data will be uploaded for >>> user basicjimDec 05 08:16:59 stormpi weewxd[107494]: DEBUG weewx.manager: >>> **** Trying 'weewx.schemas.wview_extended.schema'Dec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.manager: **** Reason: No module named >>> 'schemas'Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG weewx.manager: Could >>> not load schema 'schemas.wview_extended.schema'Dec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.engine: Loading service >>> weewx.restx.StdAWEKASDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Finished loading service weewx.restx.StdWOWDec 05 08:16:59 >>> stormpi weewxd[107494]: INFO weewx.restx: WOW: Posting not enabled.Dec 05 >>> 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: Loading service >>> weewx.restx.StdWOWDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Finished loading service weewx.restx.StdCWOPDec 05 08:16:59 >>> stormpi weewxd[107494]: INFO weewx.restx: CWOP: Posting not enabled.Dec 05 >>> 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: Loading service >>> weewx.restx.StdCWOPDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Finished loading service weewx.restx.StdPWSweatherDec 05 >>> 08:16:59 stormpi weewxd[107494]: INFO weewx.restx: PWSWeather: Data for >>> station KANSASOH will be postedDec 05 08:16:59 stormpi weewxd[107494]: >>> DEBUG weewx.manager: **** Trying 'weewx.schemas.wview_extended.schema'Dec >>> 05 08:16:59 stormpi weewxd[107494]: DEBUG weewx.manager: **** Reason: No >>> module named 'schemas'Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.manager: Could not load schema 'schemas.wview_extended.schema'Dec 05 >>> 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: Loading service >>> weewx.restx.StdPWSweatherDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Finished loading service weewx.restx.StdWundergroundDec 05 >>> 08:16:59 stormpi weewxd[107494]: INFO weewx.restx: Wunderground: Posting >>> not enabled.Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: >>> Loading service weewx.restx.StdWundergroundDec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.engine: Finished loading service >>> weewx.restx.StdStationRegistryDec 05 08:16:59 stormpi weewxd[107494]: INFO >>> weewx.restx: StationRegistry: Station will be registered.Dec 05 08:16:59 >>> stormpi weewxd[107494]: DEBUG weewx.engine: Loading service >>> weewx.restx.StdStationRegistryDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Finished loading service user.forecast.XTideForecastDec 05 >>> 08:16:59 stormpi weewxd[107494]: ERROR user.forecast: MainThread: XTide: >>> forecast will not be runDec 05 08:16:59 stormpi weewxd[107494]: ERROR >>> user.forecast: MainThread: XTide: location (location) has not been >>> specifiedDec 05 08:16:59 stormpi weewxd[107494]: INFO user.forecast: >>> MainThread: XTide: forecast version 3.5Dec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.engine: Loading service >>> user.forecast.XTideForecastDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Finished loading service user.forecast.DSForecastDec 05 >>> 08:16:59 stormpi weewxd[107494]: ERROR user.forecast: MainThread: DS: >>> forecast will not be runDec 05 08:16:59 stormpi weewxd[107494]: ERROR >>> user.forecast: MainThread: DS: API key (api_key) is not specifiedDec 05 >>> 08:16:59 stormpi weewxd[107494]: INFO user.forecast: MainThread: DS: >>> forecast version 3.5Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Loading service user.forecast.DSForecastDec 05 08:16:59 >>> stormpi weewxd[107494]: DEBUG weewx.engine: Finished loading service >>> user.forecast.WWOForecastDec 05 08:16:59 stormpi weewxd[107494]: ERROR >>> user.forecast: MainThread: WWO: forecast will not be runDec 05 08:16:59 >>> stormpi weewxd[107494]: ERROR user.forecast: MainThread: WWO: API key >>> (api_key) is not specifiedDec 05 08:16:59 stormpi weewxd[107494]: INFO >>> user.forecast: MainThread: WWO: forecast version 3.5Dec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.engine: Loading service >>> user.forecast.WWOForecastDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Finished loading service user.forecast.AerisForecastDec 05 >>> 08:16:59 stormpi weewxd[107494]: INFO user.forecast: MainThread: Aeris: >>> interval=10800 max_age=604800 client_id=XXXXXXXXXXXXXXXXX7JKG >>> client_secret=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXvcuT >>> location=41.24,-83.278Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> user.forecast: MainThread: Aeris: last forecast issued 2025-12-02 17:29:16 >>> EST (1764714556), requested 2025-12-02 17:29:16 EST (1764714556)Dec 05 >>> 08:16:59 stormpi weewxd[107494]: INFO user.forecast: MainThread: Aeris: >>> forecast version 3.5Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Loading service user.forecast.AerisForecastDec 05 08:16:59 >>> stormpi weewxd[107494]: DEBUG weewx.engine: Finished loading service >>> user.forecast.UKMOForecastDec 05 08:16:59 stormpi weewxd[107494]: ERROR >>> user.forecast: MainThread: UKMO: forecast will not be runDec 05 08:16:59 >>> stormpi weewxd[107494]: ERROR user.forecast: MainThread: UKMO: location is >>> not specifiedDec 05 08:16:59 stormpi weewxd[107494]: ERROR user.forecast: >>> MainThread: UKMO: API key (api_key) is not specifiedDec 05 08:16:59 stormpi >>> weewxd[107494]: INFO user.forecast: MainThread: UKMO: forecast version >>> 3.5Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: Loading >>> service user.forecast.UKMOForecastDec 05 08:16:59 stormpi weewxd[107494]: >>> DEBUG weewx.engine: Finished loading service user.forecast.OWMForecastDec >>> 05 08:16:59 stormpi weewxd[107494]: ERROR user.forecast: MainThread: OWM: >>> forecast will not be runDec 05 08:16:59 stormpi weewxd[107494]: ERROR >>> user.forecast: MainThread: OWM: API key (api_key) is not specifiedDec 05 >>> 08:16:59 stormpi weewxd[107494]: INFO user.forecast: MainThread: OWM: >>> forecast version 3.5Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Loading service user.forecast.OWMForecastDec 05 08:16:59 >>> stormpi weewxd[107494]: DEBUG weewx.engine: Finished loading service >>> user.forecast.WUForecastDec 05 08:16:59 stormpi weewxd[107494]: ERROR >>> user.forecast: MainThread: WU: forecast will not be runDec 05 08:16:59 >>> stormpi weewxd[107494]: ERROR user.forecast: MainThread: WU: API key >>> (api_key) is not specifiedDec 05 08:16:59 stormpi weewxd[107494]: INFO >>> user.forecast: MainThread: WU: forecast version 3.5Dec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.engine: Loading service >>> user.forecast.WUForecastDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Finished loading service user.forecast.NWSForecastDec 05 >>> 08:16:59 stormpi weewxd[107494]: ERROR user.forecast: MainThread: NWS: >>> forecast will not be runDec 05 08:16:59 stormpi weewxd[107494]: ERROR >>> user.forecast: MainThread: NWS: forecast office ID (foid) is not >>> specifiedDec 05 08:16:59 stormpi weewxd[107494]: ERROR user.forecast: >>> MainThread: NWS: location ID (lid) is not specifiedDec 05 08:16:59 stormpi >>> weewxd[107494]: INFO user.forecast: MainThread: NWS: forecast version >>> 3.5Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: Loading >>> service user.forecast.NWSForecastDec 05 08:16:59 stormpi weewxd[107494]: >>> DEBUG weewx.engine: Finished loading service >>> user.forecast.ZambrettiForecastDec 05 08:16:59 stormpi weewxd[107494]: INFO >>> user.forecast: MainThread: Zambretti: interval=600 max_age=604800 >>> winddir_period=1800 pressure_period=10800 hemisphere=NORTH >>> lower_pressure=950.0 upper_pressure=1050.0Dec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG user.forecast: MainThread: Zambretti: last forecast >>> issued 2025-12-02 18:30:00 EST (1764718200), requested 2025-12-02 18:30:00 >>> EST (1764718200)Dec 05 08:16:59 stormpi weewxd[107494]: INFO user.forecast: >>> MainThread: Zambretti: forecast version 3.5Dec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.engine: Loading service >>> user.forecast.ZambrettiForecastDec 05 08:16:59 stormpi weewxd[107494]: >>> DEBUG weewx.engine: Finished loading service weewx.engine.StdArchiveDec 05 >>> 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: Use LOOP data in >>> hi/low calculations: 1Dec 05 08:16:59 stormpi weewxd[107494]: INFO >>> weewx.engine: Using archive interval of 60 seconds (specified in weewx >>> configuration)Dec 05 08:16:59 stormpi weewxd[107494]: INFO weewx.engine: >>> Record generation will be attempted in 'hardware'Dec 05 08:16:59 stormpi >>> weewxd[107494]: INFO weewx.engine: Archive will use data binding >>> wx_bindingDec 05 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: >>> Loading service weewx.engine.StdArchiveDec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.engine: Finished loading service >>> weewx.wxxtypes.StdDeltaDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Loading service weewx.wxxtypes.StdDeltaDec 05 08:16:59 >>> stormpi weewxd[107494]: DEBUG weewx.engine: Finished loading service >>> weewx.wxxtypes.StdRainRaterDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Loading service weewx.wxxtypes.StdRainRaterDec 05 08:16:59 >>> stormpi weewxd[107494]: DEBUG weewx.engine: Finished loading service >>> weewx.wxxtypes.StdPressureCookerDec 05 08:16:59 stormpi weewxd[107494]: >>> DEBUG weewx.engine: Loading service weewx.wxxtypes.StdPressureCookerDec 05 >>> 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: Finished loading >>> service weewx.wxxtypes.StdWXXTypesDec 05 08:16:59 stormpi weewxd[107494]: >>> DEBUG weewx.engine: Loading service weewx.wxxtypes.StdWXXTypesDec 05 >>> 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: Finished loading >>> service weewx.wxservices.StdWXCalculateDec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.manager: Daily summary version is 4.0Dec 05 >>> 08:16:59 stormpi weewxd[107494]: DEBUG weewx.manager: **** Trying >>> 'weewx.schemas.wview_extended.schema'Dec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.manager: **** Reason: No module named >>> 'schemas'Dec 05 08:16:59 stormpi weewxd[107494]: DEBUG weewx.manager: Could >>> not load schema 'schemas.wview_extended.schema'Dec 05 08:16:59 stormpi >>> weewxd[107494]: INFO weewx.wxservices: StdWXCalculate will use data binding >>> wx_bindingDec 05 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: >>> Loading service weewx.wxservices.StdWXCalculateDec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.engine: Finished loading service >>> weewx.engine.StdQCDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Loading service weewx.engine.StdQCDec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.engine: Finished loading service >>> weewx.engine.StdCalibrateDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Loading service weewx.engine.StdCalibrateDec 05 08:16:59 >>> stormpi weewxd[107494]: DEBUG weewx.engine: Finished loading service >>> weewx.engine.StdConvertDec 05 08:16:59 stormpi weewxd[107494]: INFO >>> weewx.engine: StdConvert target unit is 0x1Dec 05 08:16:59 stormpi >>> weewxd[107494]: DEBUG weewx.engine: Loading service >>> weewx.engine.StdConvertDec 05 08:16:59 stormpi weewxd[107494]: DEBUG >>> weewx.engine: Finished loading service weewx.engine.StdTimeSynchDec 05 >>> 08:16:59 stormpi weewxd[107494]: DEBUG weewx.engine: Loading service >>> weewx.engine.StdTimeSynchDec 05 08:16:59 stormpi weewxd.py[107494]: >>> weatherflowudp: MainThread: packet obs_st: ('time_epoch', 'wind_lull', >>> 'wind_avg', 'wind_gust', 'wind_direction', 'wind_sample_interval', >>> 'station_pressure', 'air_temperature', 'relative_humidit>Dec 05 08:16:59 >>> stormpi weewxd[107494]: DEBUG weewx.engine: Loading service >>> weewx.engine.StdTimeSynchDec 05 08:16:59 stormpi weewxd.py[107494]: >>> weatherflowudp: MainThread: packet obs_st: ('time_epoch', 'wind_lull', >>> 'wind_avg', 'wind_gust', 'wind_direction', 'wind_sample_interval', >>> 'station_pressure', 'air_temperature', 'relative_humidit>Dec 05 08:16:59 >>> stormpi weewxd.py[107494]: weatherflowudp: MainThread: packet evt_strike: >>> ('time_epoch', 'distance', 'energy')Dec 05 08:16:59 stormpi >>> weewxd.py[107494]: weatherflowudp: MainThread: packet evt_precip: >>> time_epochDec 05 08:16:59 stormpi weewxd.py[107494]: weatherflowudp: >>> MainThread: packet rapid_wind: ('time_epoch', 'wind_speed', >>> 'wind_direction')Dec 05 08:16:59 stormpi weewxd.py[107494]: weatherflowudp: >>> MainThread: packet obs_sky: ('time_epoch', 'illuminance', 'uv', >>> 'rain_accumulated', 'wind_lull', 'wind_avg', 'wind_gust', 'wind_direction', >>> 'battery', 'report_interval', 'solar_r>Dec 05 08:16:59 stormpi >>> weewxd.py[107494]: weatherflowudp: MainThread: packet obs_air: >>> ('time_epoch', 'station_pressure', 'air_temperature', 'relative_humidity', >>> 'lightning_strike_count', 'lightning_strike_avg_distance', 'battery', >>> 'repo>Dec 05 08:16:59 stormpi weewxd.py[107494]: weatherflowudp: >>> MainThread: *** Sensor names per packet typeDec 05 08:16:59 stormpi >>> weewxd.py[107494]: weatherflowudp: MainThread: sensor map is {'outTemp': >>> 'air_temperature.ST-00152751.obs_st', 'outHumidity': >>> 'relative_humidity.ST-00152751.obs_st', 'pressure': >>> 'station_pressure.ST-00152751.obs_s>Dec 05 08:16:59 stormpi >>> weewxd.py[107494]: weatherflowudp: MainThread: driver version is 1.10Dec 05 >>> 08:16:59 stormpi weewxd[107494]: INFO weewx.engine: Loading station type >>> WeatherFlowUDP (user.weatherflowudp)Dec 05 08:16:59 stormpi weewxd[107494]: >>> DEBUG __main__: Initializing engineDec 05 08:16:59 stormpi weewxd[107494]: >>> DEBUG __main__: loop_on_init: FalseDec 05 08:16:59 stormpi weewxd[107494]: >>> INFO __main__: Groups: weewxDec 05 08:16:59 stormpi weewxd[107494]: >>> INFO __main__: Group: weewxDec 05 08:16:59 stormpi weewxd[107494]: >>> INFO __main__: User: weewxDec 05 08:16:59 stormpi weewxd[107494]: >>> INFO __main__: Debug: 1Dec 05 08:16:59 stormpi weewxd[107494]: INFO >>> __main__: User module: /etc/weewx/bin/userDec 05 08:16:59 stormpi >>> weewxd[107494]: INFO __main__: Config file: /etc/weewx/weewx.confDec 05 >>> 08:16:59 stormpi weewxd[107494]: INFO __main__: WEEWX_ROOT: /etc/weewxDec >>> 05 08:16:59 stormpi weewxd[107494]: INFO __main__: Entry path: >>> /usr/share/weewx/weewxd.pyDec 05 08:16:59 stormpi weewxd[107494]: INFO >>> __main__: Locale: 'en_GB.UTF-8'Dec 05 08:16:59 stormpi >>> weewxd[107494]: INFO __main__: Platform: >>> Linux-6.6.31+rpt-rpi-2712-aarch64-with-glibc2.36Dec 05 08:16:59 stormpi >>> weewxd[107494]: INFO __main__: Located at: /usr/bin/python3Dec 05 >>> 08:16:59 stormpi weewxd[107494]: INFO __main__: Using Python: 3.11.2 (main, >>> Apr 28 2025, 14:11:48) [GCC 12.2.0]Dec 05 08:16:59 stormpi weewxd[107494]: >>> INFO __main__: Command line: /usr/share/weewx/weewxd.py >>> /etc/weewx/weewx.confDec 05 08:16:59 stormpi weewxd[107494]: INFO __main__: >>> Initializing weewxd version 5.2.0Dec 05 08:16:59 stormpi sudo[107490]: >>> pam_unix(sudo:session): session closed for user rootDec 05 08:16:59 stormpi >>> systemd[1]: Started weewx.service - WeeWX.Dec 05 08:16:59 stormpi >>> sudo[107490]: pam_unix(sudo:session): session opened for user root(uid=0) >>> by (uid=1000)Dec 05 08:16:59 stormpi sudo[107490]: brasic : TTY=pts/0 ; >>> PWD=/home/brasic ; USER=root ; COMMAND=/usr/bin/systemctl restart weewxDec >>> 05 08:16:53 stormpi sudo[107486]: pam_unix(sudo:session): session closed >>> for user rootDec 05 08:16:50 stormpi sudo[107486]: pam_unix(sudo:session): >>> session opened for user root(uid=0) by (uid=1000)Dec 05 08:16:50 stormpi >>> sudo[107486]: brasic : TTY=pts/0 ; PWD=/home/brasic ; USER=root ; >>> COMMAND=/usr/bin/nano /etc/weewx/weewx.confDec 05 08:16:45 stormpi >>> sudo[107475]: pam_unix(sudo:session): session closed for user rootDec 05 >>> 08:16:05 stormpi sudo[107475]: pam_unix(sudo:session): session opened for >>> user root(uid=0) by (uid=1000)Dec 05 08:16:05 stormpi sudo[107475]: >>> brasic : TTY=pts/0 ; PWD=/home/brasic ; USER=root ; COMMAND=/usr/bin/nano >>> /etc/weewx/weewx.conf* >>> >>> Any idea what I messed up and what direction to head in to fix it? >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "weewx-user" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To view this discussion visit >>> https://groups.google.com/d/msgid/weewx-user/cbb84fe2-d8b4-493e-9a0f-372fe00ec644n%40googlegroups.com >>> >>> <https://groups.google.com/d/msgid/weewx-user/cbb84fe2-d8b4-493e-9a0f-372fe00ec644n%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/weewx-user/a9b6238c-0f1e-4f54-8b45-c8896066ecf4n%40googlegroups.com.
