Download the skin
wget https://github.com/poblabs/weewx-belchertown/releases/download/weewx-belchertown-1.2/weewx-belchertown-release-1.2.tar.gz
From the download directory, tell weewx to install the new skin
wee_extension --install weewx-belchertown-release-1.2.tar.gz
The MQTT feature allows the Belchertown skin to live update the weather webpage.
Install the weewx-mqtt
extension on the server that runs WeeWX. [Official Docs]
Download the extension
wget -O weewx-mqtt.zip https://github.com/matthewwall/weewx-mqtt/archive/master.zip
Install the python modules that weewx-mqtt depends on. This assumes you're on a system with both python2 and python3, and using weewx on python3.
pip3 install paho-mqtt
Run the WeeWX extension installer
wee_extension --install weewx-mqtt.zip
Modify the weewx configuration file /etc/weewx/weewx.conf
with you MQTT info
[StdRESTful]
...
[[MQTT]]
server_url = mqtt://username:password@[IP-Hostname-of-MQTT-server]:1883/
topic = weather
unit_system = [METRIC or US]
binding = archive, loop
aggregation = aggregate
and (this section may already be set for you)
[Engine]
[[Services]]
restful_services = ..., user.mqtt.MQTT
Edit Belchertown skin config /etc/weewx/skins/Belchertown/skin.conf
# MQTT Websockets defaults
mqtt_websockets_enabled = 1
mqtt_websockets_host = "[hostname-or-ip-of-mqtt-server]" (this will need to be your public address to make the MQTT server publicly accessible)
mqtt_websockets_port = 9001 (I'm running my weather web server behind a proxy, so I'm using 443 here)
mqtt_websockets_ssl = [0 -OR- 1] (is your webserver running SSL?)
mqtt_websockets_topic = "weather/loop" (I found that it is very important to specify "loop" under the main "weather" topic here)
disconnect_live_website_visitor = 1800000
Install Mosquitto on a new server or where ever you see fit using this guide.
belchertown_debug
to 1 and restart weewx.