Difference between revisions of "VentusW266"

From Let's Control It
Jump to navigation Jump to search
 
(13 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
= Introduction =
 
= Introduction =
The Plugin for the Ventus W266 is used to connect a Ventus W266 weather station to a home controller like Domoticz.
+
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 is also sold as a RenkForce W205GU.
+
The Ventus W266 weather station is also sold under the name of RenkForce W205GU.
  
This plugin should work on a ESPEasy as well as a ESPEasy 2.0 (ESP Easy Mega)
+
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:
 +
 
 +
<code>
 +
[platformio]
 +
 
 +
env_default = hard_Ventus_W266
 +
</code>
  
 
= Hardware =
 
= Hardware =
Line 9: Line 18:
  
 
The weather station is delivered with 2 units and a power supply.  
 
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 winter.  
+
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 containing the following functions:
+
The outdoor sensor unit contains the following functions:
  
 
* Outdoor temperature
 
* Outdoor temperature
Line 34: Line 43:
 
<span style="color: red>CONNECTING THIS PLUGIN WILL VOID THE WARRANTY OF YOUR WEATHER STATION!</span>
 
<span style="color: red>CONNECTING THIS PLUGIN WILL VOID THE WARRANTY OF YOUR WEATHER STATION!</span>
  
= Connections =
+
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 solder the ESP inside.
+
 
 +
== Connections ==
 +
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.
 
[[File:VentusW266_Inside.png|right|thumb]]
 
[[File:VentusW266_Inside.png|right|thumb]]
  
The ESP is connected using 4 GPIO pins. The prototype used an ESP-12E with GPIO pins 4, 5, 12 and 14 and I2C/SPI disabled in the hardware tab of ESP Easy. But all pins are fine, just connect the GPIO lines and specify them when you add the plugin. However it is recommended to avoid using GPIO15 for the nSEL line because the ESP needs GPIO15 to be low at boottime and connecting it to nSEL means it will be high most of the times.
+
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 inside of the display unit and the receiver module and the positions of the connections.
+
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. But the supplied power supply is not powerful enough to supply both the display with the backlight and an ESP while transmitting. You can exchange the power supply for a USB power supply. The display unit is working fine happy with just the 5 volts.
+
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 careful when you install the ESP unit. Although the space on the right seems to be perfect for placing the ESP it is close to the indoor temperature sensor and your readings on the display will be off by 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, then you just need to figure out the 3V3 regulator.
+
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 ~10K pull up resistors to CH_PD (CD_EN), GPIO0 and a pull down to GPIO15 for stable performance.
+
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 at the moment not possible to read the indoor sensors using the plugin nor is it in development or planned.
+
It is not possible to read the indoor sensors using the plugin nor is it in development or planned.
  
 
= ESP Easy =
 
= ESP Easy =
 
[[File:_P186_Instances.png|right|400x204px]]
 
[[File:_P186_Instances.png|right|400x204px]]
This device plugin is multi functional and you want to install multiple instances of this plugin to get all 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 both speeds and the direction. You'll need an instance per sensor type.
+
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 intentionally written for use with (and tested on) Domoticz, which does not support custom multi value sensors at this moment. This means the lightning detection is send as two instances. In total you could run as many as nine instances.
+
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.
  
So to get started you need to add the device plugin and set the instance to Main + Temp/Hygro:
+
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.
  
 
[[File:P186_MainInstance.png]]
 
[[File:P186_MainInstance.png]]
Line 62: Line 76:
 
Setup the GPIO pins for communicating with the receiver module in the display unit.
 
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.
+
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 buffer filled by the main plugin.
+
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 explanation about the value use and how many decimals are supported so you can set the instance up accordingly.
+
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 [[#Other sensors|this summary]].
  
 
+
== Wind ==
This is the instance for the wind values:
+
This is an example of the use for the instance with the wind values:
  
 
[[File:P186_WindInstance.png]]
 
[[File:P186_WindInstance.png]]
  
 
+
== Other sensors ==
 
The plugin supports the following instances:
 
The plugin supports the following instances:
  

Latest revision as of 22:01, 8 June 2018

Introduction

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:

[platformio]

env_default = hard_Ventus_W266

Hardware

Ventusw266.png

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.

Connections

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.

VentusW266 Inside.png

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.

ESP Easy

P186 Instances.png

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.

P186 MainInstance.png

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.

Wind

This is an example of the use for the instance with the wind values:

P186 WindInstance.png

Other sensors

The plugin supports the following instances:

P186 Instanceslist.png

  • 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).