If I run a report, I get:
Traceback (most recent call last):
File "/usr/share/weewx/weectl.py", line 75, in <module>
main()
File "/usr/share/weewx/weectl.py", line 67, in main
namespace.func(namespace)
File "/usr/share/weewx/weectllib/__init__.py", line 90, in dispatch
namespace.action_func(config_dict, namespace)
File "/usr/share/weewx/weectllib/report_cmd.py", line 93, in run_reports
weectllib.report_actions.run_reports(config_dict,
File "/usr/share/weewx/weectllib/report_actions.py", line 84, in
run_reports
engine = weewx.engine.DummyEngine(config_dict)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/weewx/weewx/engine.py", line 89, in __init__
self.loadServices(config_dict)
File "/usr/share/weewx/weewx/engine.py", line 157, in loadServices
obj = weeutil.weeutil.get_object(svc)(self, config_dict)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/weewx/weeutil/weeutil.py", line 1404, in get_object
module = importlib.import_module(module_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/importlib/__init__.py", line 126, in
import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
File "<frozen importlib._bootstrap>", line 1149, in
_find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in
_call_with_frames_removed
File "/etc/weewx/bin/user/mqtt.py", line 109, in <module>
import paho.mqtt.client as mqtt
ModuleNotFoundError: No module named 'paho'
On Friday, February 6, 2026 at 7:38:07 PM UTC O S wrote:
> OK, it's broken it - how do I get rid of the MQTT thing now? I knew I
> shouldn't have messed with things!
>
> On Friday, February 6, 2026 at 7:34:33 PM UTC O S wrote:
>
>> Hello Vince, OK - thanks for your comments there and I do get most of it!
>>
>> Well. let's help some clever soul produces a how-to for WAN.
>>
>> The MQTT service appears to have broken weewx, I see:
>>
>> Feb 06 19:25:04 weewx-pi systemd[1]: weewx.service: Main process exited,
>> code=exited, status=1/FAILURE
>> Feb 06 19:25:04 weewx-pi systemd[1]: weewx.service: Failed with result
>> 'exit-code'.
>>
>> .... in the service status, so i have stopped it for now with:
>>
>> sudo service mosquitto stop
>> sudo systemctl stop mosquitto.service
>>
>> Thanks,
>> Nick.
>>
>> On Friday, February 6, 2026 at 7:15:41 PM UTC Vince Skahan wrote:
>>
>>> If there's a comprehensive HOWTO for how to 'securely' set up a
>>> cloudflare tunnel back to a LAN-hosted weewx+belchertown that would permit
>>> realtime updates to work from both LAN and WAN, I sure have never seen one.
>>> That would be a great thing to get written, validated, and into the wiki.
>>> This has been coming up for 5+ years.
>>>
>>> FWIW - I don't let 'anything' talk to my LAN, even through a tunnel. I
>>> don't want that risk. Too many bots.
>>>
>>> Anyway - the websockets connection is between your browser and the
>>> remote MQTT broker, so whatever ip address you use has to be reachable from
>>> the web browser computer. If you use a FQDN rather than an ip address,
>>> that has to be resolvable 'and' reachable from the web browser computer.
>>>
>>> LAN-only is not hard. Lots of people have done so. Many posts here and
>>> in Pat's Belchertown github page.
>>>
>>> WAN-only is not much harder. Set up a small VM on AWS Lightsail or the
>>> like. Set up the webserver https-only and install the MQTT broker there.
>>> Have your LAN weewx rsync data to it and also publish MQTT to the MQTT
>>> broker. Use 'its' FQDN in all your settings for Belchertown. Basically
>>> connect to your Internet site for realtime updates from both LAN and WAN.
>>>
>>> Of course that means $$$ for the VM and the time/effort to keeping
>>> 'that' up securely as it will be under bot attack instantly after it boots
>>> up. The AWS consoles are pretty good about letting you lock that down so
>>> only https and the secure websockets ports are open. That'll reduce your
>>> attack services. Damn bots. Ugh. A minimal nginx + mosquitto VM takes
>>> almost zero maintenance if that's all it does and if you lock it down
>>> correctly. I think I ssh into my nginx-only site about monthly to see if
>>> the auto-updates for the os require a reboot, but it's not zero sustaining
>>> labor.
>>>
>>> On Friday, February 6, 2026 at 9:05:43 AM UTC-8 O S wrote:
>>>
>>>> Hello all,
>>>>
>>>> I have resisted installing and configuring MQTT for live data in case I
>>>> totally mess things up, but, in a fit of positivity, I decided to have a
>>>> go
>>>> today, and it doesn't work.
>>>>
>>>> I've used a mix of search engine (AI) advice, this post
>>>> <https://www.wxforum.net/index.php?topic=43377.0;wap> and the
>>>> instructions on the Belchertown skin page
>>>> <https://github.com/poblabs/weewx-belchertown?tab=readme-ov-file#mqtt-and-mqtt-websockets-optional>
>>>> .
>>>>
>>>> I have documented what I did
>>>> <https://docmost.thecobwebs.uk/share/moessylnhf/p/enable-live-data-8Zo6w86w7W>,
>>>>
>>>> and my settings, can someone take a look and see if anything is glaringly
>>>> wrong?
>>>>
>>>> For information, I am running this locally at http://192.168... and
>>>> publicly through https://mydomain.co/weewx/belchertown using a
>>>> cloudflared tunnel.
>>>>
>>>> Live updates don't appear to be happening in either scenario though
>>>> (local or via https), ultimately, I'd like them working ion the public
>>>> site
>>>> (if it needs to be one or the other).
>>>>
>>>> Thank you,
>>>> Nick.
>>>>
>>>
--
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/4c08723d-31e3-4e22-b6cc-d45dcabf85e7n%40googlegroups.com.