openhab-addons/bundles/org.openhab.binding.sagercaster
lolodomo cba49df16a
Added support for publishing ChannelDescriptionChangedEvents (#10896)
Pack 2

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2021-06-22 10:38:15 +02:00
..
src/main Added support for publishing ChannelDescriptionChangedEvents (#10896) 2021-06-22 10:38:15 +02:00
NOTICE Fix openhab-addons url in NOTICE files (#8614) 2020-09-30 10:08:31 +02:00
pom.xml Apply Spotless, update skeleton project version, resolve itest runbundles (#9459) 2020-12-22 10:37:44 +01:00
README.md added migrated 2.x add-ons 2020-09-21 03:37:19 +02:00

Sager Weathercaster Binding

The Sager Weathercaster is a scientific instrument for accurate prediction of the weather.

Limitations

  • To operate, this binding will need to use channel values provided by other means (e.g. Weather Binding, Netatmo, a 1-Wire personal weather station...)

  • This binding buffers readings for some hours before producing weather forecasts(wind direction and sea level pressure). SagerWeatherCaster needs an observation period of minimum 6 hours.

For these reasons, this binding is not a binding in the usual sense.

Discovery

A default sagercaster thing will be automatically discovered, based on system location.

Binding Configuration

The binding itself does not require any configuration.

Thing Configuration

SagerCaster

Name Type Description
location Location Latitude and longitude of the desired weather forecast.
observation-period int Minimum delay (in hours) before producing forecasts. Defaulted to 6.

Channels

The binding will use some input channels, that can be configured directly with profiles (sample below).

Name Group Type Description
is-raining (*) input Switch On if it is raining, else Off.
rain-qtty (*) input Number Any value that give indication of a current rain volume
or input Number:Speed Any value that give indication of a current rain volume eg mm/h
or input Number:Length Any value that give indication of a current rain volume eg mm
cloudiness input Number:Dimensionless Cloud cover percentage
wind-speed-beaufort input Number Wind speed expressed using the Beaufort scale
pressure input Number:Pressure Sea level pressure
wind-angle input Number:Angle Wind direction
forecast output String Description of the weather forecast
velocity output String Description of the expected wind evolution
velocity-beaufort output Number Expected wind evolution using the Beaufort scale
wind-from output String Expected wind orientation
wind-to output String Evolution of the expected wind orientation
wind-evolution output String Wind orientation evolution over observation period
pressure-trend output String Pressure evolution over observation period
temperature-trend output String Temperature evolution over observation period

(*) You may use either is-raining, either rain-qtty depending upon the data available in your system.

Full Example

Things

sagercaster:sagercaster:triel "Sager Triel" @ "Outside" [location="48,2"]

Items

Input channel can be updated via profiles in versions of OH > 2.4.

Number:Pressure NWS_Abs_Pressure "Pression absolue" <pressure> {channel="netatmo:NAMain:home:insidews:AbsolutePressure", channel="sagercaster:sagercaster:triel:input#pressure" [profile="follow"]}
Number:Angle NWS_wind_angle   "Orientation [%d°]" 	{channel="netatmo:NAModule2:home:anemometre:WindAngle", channel="sagercaster:sagercaster:triel:input#wind-angle" [profile="follow"]}
Number:Dimensionless OWM_Cloudiness "Cloudiness [%d %unit%]" <clouds> {channel="openweathermap:weather-and-forecast:api:local:current#cloudiness", channel="sagercaster:sagercaster:triel:input#cloudiness" [profile="follow"] }
Number Synop_beaufort "Beaufort [%d]" <beaufort> {channel="synopanalyzer:synopanalyzer:orly:wind-speed-beaufort", channel="sagercaster:sagercaster:triel:input#wind-speed-beaufort" [profile="follow"] }
Number:Length NWS_rain_1h "Précipitation 1h [%.2f %unit%]" <rain> {channel="netatmo:NAModule3:home:pluviometre:SumRain1", channel="sagercaster:sagercaster:triel:input#rain-qtty" [profile="follow"]}

           	

Here is the definition of output channels

   
// Items directly derived from inputs
String  SWC_windevolution       "Wind Evolution"                        (gSager)                {channel="sagercaster:sagercaster:triel:output#wind-evolution"}
String  SWC_presstrend          "Pressure Trend"                        (gSager)                {channel="sagercaster:sagercaster:triel:output#pressure-trend"}

// SagerWeatherCaster Forecast Items
String  SWC_forecast            "Weather Forecast"                      (gSager)                {channel="sagercaster:sagercaster:triel:output#forecast"}
String  SWC_velocity            "Wind Velocity"                         (gSager)                {channel="sagercaster:sagercaster:triel:output#velocity"}
String  SWC_windfrom            "Wind from"                             (gSager)                {channel="sagercaster:sagercaster:triel:output#wind-from"}
 
DateTime SWC_ObservationTime    "Timestamp [%1$tH:%1$tM]"       <time>  (gSager, gTrackAge)     {channel="sagercaster:sagercaster:triel:output#timestamp" }