The Plugin for the Ventus W266 is used to connect a Ventus W266 weather station to a home controller like Domoticz or FHEM. The Ventus W266 weather station is also sold under the name of RenkForce W205GU.
This plugin should work on an ESPEasy as well as an ESPEasy 2.0 (ESPEasy Mega)
Buiding ESPEasy with support for this plugin
Be aware that this plugin is not build by default because it is disabled. The plugin uses quite a lot of resources like ram and ram. Since the hardware used is also something special we, the author and datux, decided to keep the plugin out of the normal builds. If you want to compile ESPEasy with this plugin enabled you can set the following line in your platformio.ini:
env_default = hard_Ventus_W266
The weather station is delivered with 2 units and a power supply. The outdoor sensor unit is battery powered by 4 AA type batteries. It is recommended to use lithium type batteries so the power is stable during the freezing winters.
The outdoor sensor unit contains the following functions:
- Outdoor temperature
- Outdoor humidity
- Wind direction
- Average wind speed
- Gust wind speed
- Cumulative rainfall
- UV index
- Cumulative number of lightning strikes
- Distance of the nearest lightning strike
The indoor display unit is connected through a wireless 868MHz connection and has the following functions:
- Indoor temperature
- Indoor humidity
- Barometric pressure
- DCF77 clock
The plugin can only read the sensors of the outdoor unit.
CONNECTING THIS PLUGIN WILL VOID THE WARRANTY OF YOUR WEATHER STATION!
If you are not yet prepared to void the warranty have a look at _P124_Ventus_W266_RFM69.ino in the playground.
Did we already say that using this plugin VOIDS YOUR WARRANTY? That is because to use this plugin you have to open up your display unit and connect the ESPEasy with five short wires to the receiver module inside the display unit.
The ESP is connected using 4 GPIO pins and a ground line. The prototype used an ESP-12E with GPIO pins 4, 5, 12 and 14 connected and I2C/SPI disabled in the hardware tab of ESPEasy. But any free GPIO pin is OK to use, just connect the GPIO lines and specify the used lines when you add the plugin. It is however recommended to avoid using GPIO15 for the nSEL line because the ESP needs GPIO15 to be low at boot time and connecting it to nSEL means it will be high most of the times. Also, do not use GPIO 16 for this plugin, it will not work properly.
You can click on the image for a full size view of the insides of the display and the receiver module and the positions of the connections.
If your ESP module has it's own 3v3 regulator you could connect its power input to the optional power pin specified in the image. The supplied power supply however is not powerful enough to supply both the display with the backlight on and an ESP while transmitting. It is safe to exchange the power supply for a USB power supply of 1 Amp or higher. The display unit is happy and working fine with only the 5 volts. Some adapters supply more then 5 volts, since the original adapter supplied 6 volts this should not be a problem.
Be mindful when you install the ESP unit. Although the space on the right, above the white display, seems to be perfect for placing the ESP, it is very close to the indoor temperature sensor and your readings on the display will be off by approx. +2 degrees because of the heat generated by the ESP. A better position is all the way on the left where a bare ESP-12E fits perfect, just be sure to supply it with 3v3 instead of the 5+ volts from the supplypin in the picture..
When using a bare ESP be sure to apply the necessary ~10K pull-up resistors to CH_PD (CD_EN), GPIO0 and a pull-down to GPIO15 for stable performance and OTA capabilities.
It is not possible to read the indoor sensors using the plugin nor is it in development or planned.
This device plugin is multi functional and you'll want to install multiple instances (add the plugin multiple times) of this plugin to get all the different sensor readings to your home controller. The outdoor unit has up to 9 sensors values and a minimum of 5 sensor types. Most home controllers, like Domoticz, can read multiple values per sensor type. The temperature sensor for instance also reads the humidity and the wind sensor combines two types of windspeed and the direction. You'll need one instance per sensor type.
The plugin is originally written for use with (and tested on) Domoticz, which does not support custom multi value sensors at this moment (February 2017). This means the lightning detection is send as two instances. In total you could run as many as nine instances of the plugin to get all values.
To configure the instances, add the device, select the wanted function for that instance and select save, the configuration page will then update itself reflecting the selected function. Now you can complete the configuration of the instance and when ready, select save again.
Main + Temperature / Humidity
So to get started you need to add the device plugin and set the instance to Main + Temp/Hygro. This instance contains the core functionality of the plugin and is needed to read the data send by the outdoor sensor unit. This instance is the only one that has the ability to set the GPIO pins used.
Setup the GPIO pins for communicating with the receiver module in the display unit.
Although the instance shows three values, only two will be send bij the plugin as specified in the additional explanation. Only the main plugin instance has the ability to read the display unit. You need one, and only one, main instance. All other instances read the data fetched by the main plugin.
All instances have an additional explanation about how the values are used and how many decimals are supported so you can set the instance up accordingly. Unfortunately the ESPEasy framework forces us to work with a fixed number of return values. Because the wind sensor returns three values all instances return three values, consult the additional information on the configuration page of the instance for detailed information about the values used or look at this summary.
This is an example of the use for the instance with the wind values:
The plugin supports the following instances:
- Main + Temp/Hygro - Gives the temperature with 1 decimal precision in degrees Celsius and the humidity in percent.
- Wind - Gives the wind direction in degrees, the average and gust wind speeds in m/s times 10.
- Rain - Gives the rain per mm per hour and the total rainfall (which will eventually roll over or reset if the batteries are changed).
- UV - Gives the UV index with 1 decimal precision.
- Lightning strikes - Gives the number of lightning strikes per hour during the last 5 minutes.
- Lightning distance - Gives the distance to the closest lightning strike (stormfront). When no lightning is detected the value is -1.
- Unknown 1, byte 6 - This value is partly unknown and observed to usually be 00. Turns to 01 when the battery of the outdoor unit is low.
- Unknown 2, byte 16 - This value is unknown but observed to always be 00.
- Unknown 3, byte 19 - This value is unknown but observed to always be 38 (decimal).