Virtual Weather Console for Weather Link Live with real-time updates via MQTT pub/sub. Uses Node Red flow to push WLL UDP broadcasts to MQTT.
- VueJS 2 (https://vuejs.org/)
- Node-Red (https://nodered.org/)
- MQTT (https://mosquitto.org/)
- InfluxDB (https://www.influxdata.com/products/influxdb-overview/)
- WeatherLink Live (https://www.davisinstruments.com/weatherlinklive/)
See demonstration of my current weatherstation at http://wxconsole.nrgup.cloud/
- You can run your own MQTT server or use a hosted solution like CloudMQTT (https://www.cloudmqtt.com/) or similar so you can access the console from anywhere
- If you run your own instance you will need to configure Websocket support to allow the web application to connect to it
- Install Node-Red (I use the docker package)
- For real-time updates ensure that Node-Red is on the same network as the Davis Weatherlink Live as WLL uses UDP broadcast messages on the local lan
- Import the Node Red flow
- Update the configuration to point to your MQTT server and remember to provide the username and password if required
- If you have a darksky API (no longer available) configure the node with it, if you do not have Darksky remove the nodes
- If you want to persist the weather data to an InfluxDB configure the Influx node, otherwise, remove it. At this time it is not used by the web application
- Deploy the flow and verify data is flowing to the MQTT server
- Clone the repo locally and build the project:
- Configure the MQTT authentication information in /src/store/mqttPlugin.js with your MQTT hostname and authentication
- Ensure you have NPM installed
- Build the solution using the commands
npm install
npm build
- Deploy the "dist" folder to your web server