Ventus W830 Quick App for FIBARO Home Center 3
In this blog I'll show you how you install the Quick App I created to integrate your Ventus W830 weather station with your Home Center 3.
The Ventus W830 (and Alecto WS5500) weather stations can be configured to send weather data to a local server. To add the weather station to the Home Center 3 you can use a Raspberry Pi (or computer) to translate the payload to the FIBARO API format. With this method you can integrate the Ventus W830 or Alecto WS5500 weather station into the Home Center 3 while using your local network instead of a cloud service like Weather Underground or Ecowitt Weather.
Note: Node-RED is used in this integration. I assume you have it already installed and running on a Raspberry Pi or other computer. How to install and configure Node-RED is out of scope of this blog!
Prerequisites
- WS View app on Google Play or the iOS App Store,
- A Raspberry Pi or other computer with Node-RED installed,
- My Ventus W830 Quick App.
Weather station setup
Read in the manual how you link the weather station to your Wi-Fi and install the WS View app from Google Play or the iOS App Store on your phone.
Configure the weather station to use a local server as follow:
- Start the WS View app on your phone,
- Tab the menu button and tab on Device List,
- Wait a few seconds and your weather station shows up, tab it,
- Tab the next button (upper right) a few times until you see the Customized screen,
- Tab Enable and Ecowitt as Protocol Type,
- Fill in the IP address of your Raspberry Pi (or computer),
- Use the
/weatherstation
path when using my Node-RED flow example, - Fill in the Port, default is
1880
for Node-RED, - Leave the Update Interval at 60 seconds,
- Tab Save.
Quick App installation
- Start your favorite browser and open your Home Center 3 dashboard by typing the correct URL for your HC3,
- Go to Settings and Devices,
- Click the blue + icon to add a new device,
- In the Add Device dialog click on Other Device,
- Choose Upload File and upload the
.fqa
file downloaded from the FIBARO Marketplace. - Additionally you can change the icon of the Quick App with the attached icon.
The Quick App contains a Lua function to retrieve the weather data via the Home Center 3 API. The Node-RED flow sends the data to the Quick App. Therefore, no additional configuration is required.
Node-RED flow
In Node-RED you can import the following flow:
[{"id":"4bd03a27.686964","type":"http in","z":"5df41914ccf9555f","name":"WS830 incoming data","url":"/weatherstation","method":"post","upload":false,"swaggerDoc":"","x":140,"y":220,"wires":[["c81fb2783c57da97"]]},{"id":"c81fb2783c57da97","type":"delay","z":"5df41914ccf9555f","name":"","pauseType":"rate","timeout":"5","timeoutUnits":"minutes","rate":"1","nbRateUnits":"5","rateUnits":"minute","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":true,"allowrate":false,"outputs":1,"x":360,"y":220,"wires":[["44d0fc53f3f75405"]]},{"id":"44d0fc53f3f75405","type":"function","z":"5df41914ccf9555f","name":"HC3 payload","func":"weatherdata = msg.payload;\n\nmsg = {\n headers: { 'content-type':'application/json' },\n payload: { 'args': [weatherdata] }\n};\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":550,"y":220,"wires":[["147e1206594b336b"]]},{"id":"147e1206594b336b","type":"http request","z":"5df41914ccf9555f","name":"HC3 Ventus W830 QA","method":"POST","ret":"txt","paytoqs":"ignore","url":"http://192.168.1.1/api/devices/200/action/data","tls":"","persist":false,"proxy":"","authType":"basic","senderr":false,"x":760,"y":220,"wires":[[]]}]
The flow contains a http in
node to retrieve the weather data payload from the station. I limit the flow so that it only sends new values to the HC3 every 5 minutes. This is not necessary, but I want to avoid unnecessary network traffic on my home network.
The function node translates the weather data JSON to a FIBARO API call and sends it to the Home Center 3 with a http request
node.
Note 1: you have to configure Basic Authentication with your Home Center 3 username and password to authenticate to the API!
Note 2: In this example you have to replace the id 200
with the id
of your imported Quick App.
As soon as you deploy the Node-RED flow the Home Center 3 will retrieve the weather data when it is pushed by the Ventus W830 weather station.
Download
You can download my Ventus W830 Quick App and documentation from the FIBARO Marketplace.