This may be helpful. Someone may want to duplicate this as the wayback 
machine isn't always as helpful
https://web.archive.org/web/20240412180952/https://obrienlabs.net/how-to-setup-your-own-mqtt-broker/

On Thursday, February 12, 2026 at 10:11:03 AM UTC-5 O S wrote:

> Hello Vince,
>
> I meant I fixed the error that I was getting, not fixed the setting up of 
> MQTT.
>
> On Friday, February 6, 2026 at 8:20:05 PM UTC O S wrote:
>
>> OK, I have fixed it with: 
>>
>> sudo apt install python3-paho-mqtt
>>
>> I have no idea how that fixed it though... I'm leaving things alone now.
>> On Friday, February 6, 2026 at 8:08:06 PM UTC O S wrote:
>>
>>> Thanks, Michael - that's interesting but no time to do that now, so just 
>>> need to fix this error to get things working again.
>>>
>>> Thanks for pointing that out though, I'm sure others will be interested 
>>> in that.
>>>
>>> All the best,
>>> Nick.
>>>
>>> On Friday, February 6, 2026 at 8:04:29 PM UTC Michael Serowik wrote:
>>>
>>>> i used this guide to get mine up and running  
>>>>
>>>> https://potatoforinter.net/715/updated-guide-weewx-belchertown-mqtt-ws/
>>>>
>>>> Mike
>>>>
>>>> On Fri, Feb 6, 2026 at 3:00 PM O S <[email protected]> wrote:
>>>>
>>>>> OK, I think I have uninstalled everything but still getting that same 
>>>>> error - HELP!
>>>>>
>>>>> On Friday, February 6, 2026 at 7:40:40 PM UTC O S wrote:
>>>>>
>>>>>> 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/42a6d1af-2fa7-4471-9271-604b0bea7c8fn%40googlegroups.com
>>>>>  
>>>>> <https://groups.google.com/d/msgid/weewx-user/42a6d1af-2fa7-4471-9271-604b0bea7c8fn%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/e57bb10a-0fe9-41b8-aebe-7970ba3d29e7n%40googlegroups.com.

Reply via email to