[PROJECT] Weather Service Monitor 4 Hubitat Driver

@snell

I don't really make use of the sunset time directly, but I have a tile on my dashboard with the sunset time showing, so I can actually see what time the lights should be turning on if I have used this in RM. The most important (and probably most difficult) is the LUX reading. I know this is not accurate but it does give me some sort of "brightness" indication. I am looking at getting a lux sensor in the future, but at the moment I use Dark Sky for this reading to get lights to turn on even before Sunset if it is dark enough

Thanks for the effort you are putting in. .

Are you aware there is already a built-in device driver for OpenWeatherMap in Hubitat?

1 Like

I am aware of it, but I am making this as a broad weather service driver. Maybe people will find it useful, maybe not. Plus, the built-in version only provides a portion of the available weather data as well as none of the Forecasting.

I'm a happy user of your Ambient Weather Driver so I'll be following your work here as well. I am very interested in the driver for Weather.gov.

BTW, thanks for all your hard work!

I have also posted recently.as I am looking for a rain % to use for a umbrella reminders it wouldbe nice to see this from weather driver that is not darksky

No worries. I started this yesterday "just because" with the US one. Then I remembered someone commenting before that it is great for the US but what about others and I think they were in the UK. So I checked for that... I figured I would just make it more convenient.

% of rain would be problematic from the US one as it does not provide it (not in the sample I have, see below). The UK has it in theirs as does OpenWeather, so overall it will be in the driver. Maybe tonight... maybe over the weekend.

{
            "number": 3,
            "name": "Thursday",
            "startTime": "2020-04-16T06:00:00-04:00",
            "endTime": "2020-04-16T18:00:00-04:00",
            "isDaytime": true,
            "temperature": 40,
            "temperatureUnit": "F",
            "temperatureTrend": null,
            "windSpeed": "13 to 17 mph",
            "windDirection": "W",
            "icon": "https://api.weather.gov/icons/land/day/snow,20/snow,30?size=medium",
            "shortForecast": "Slight Chance Snow Showers",
            "detailedForecast": "A slight chance of snow showers between 8am and 1pm, then a chance of rain and snow showers. Mostly sunny, with a high near 40. West wind 13 to 17 mph. Chance of precipitation is 30%. New rainfall amounts less than a tenth of an inch possible."
        },

It is in open weather map. You can see the discussion here Chance of rain %?

That is what I said, it is in OpenWeather. Just people only relying on the US NWS would be out of luck. But if you are looking at the OpenWeather one, you will be able to have it and I will be putting it in soon I think.

UPDATED:
Version 0.03 is now posted. I have added in ChanceRain & Sunrise/Sunset information (both Epoch & Date formats) for OpenWeather & UK, among other things.

Version 0.04 is now posted. This had a pretty substantial rewrite of how data is handled... But the main things useful to users are:

  1. Many more attributes are now covered per service.
  2. Icon URLs are now included for those that want them (US & OpenWeather).
  3. DetailedForecast from the US service is now parsed for information like chance of rain, snow, or wind gusts. So even though the API results did not directly include those, they will be provided to users if they are in the forecast.

UPDATED (2 days later):
Version 0.05 is now posted. Main changes are:

  1. Weather API is now added.
  2. World Weather Online is now added.
  3. Confirmed Australian weather is accessible via the UK API.

I have been trying to find if particular countries have national weather service APIs that can be checked (without an upfront cost just to develop it). I am open to additional services to add in, just let me know.

1 Like

Version 0.06 is now posted. Mostly just a rework of how data is posted and handled, it made the driver substantially smaller and easier to work with.

If this provides tomorrows High and Low temperature, this would solve a problem for me. I would like to have a Rule that makes a decision on whether to cool or heat the house at night depending on tomorrows temperature. Thanks for the update!

It will depend a bit on which API you are using... but it looks like most of them have the data included in what is returned so I should be able to add something in the next couple days. I have not worked on this driver in some time and it obviously needs some major overhaul as well to match up with how I handle some things now.

In any case, it looks like the following APIs will be able to provide max/min (high/low) temp for the next day:
OpenWeather
UK Met Office (United Kingdom & Australia)
WeatherAPI

The US National Weather Service data I rely on DOES NOT provide max/min in the forecasted data. Maybe they have a different API call... but I will focus on the other those first.
WorldWeatherOnline also provides max/min but my development API Key has expired and I will not pay. However, the sample data I captured originally shows it so I will try to build it in.

Awesome. Ya, I found it odd that the built-in OWM doesn't include forecast data. I would think people would want to know if tomorrow will be hot and tonight will be cold. You could write a notification to open your windows, or turn your furnace ventilator on full blast. Cool the house down then in the morning you won't have to use the AC as early in the day. That is essentially the function I am trying to build.

HSM4Hubitat version 0.7.0 is now posted.

Besides general changes and improvements there were two main changes:

  1. The logging method was updated, so you will likely have to Save Preferences with your new selection there.
  2. Addition of Today_MinTemp, Today_MaxTemp, Tomorrow_MinTemp, and Tomorrow_MaxTemp that are populated by all the APIs EXCEPT the United States National Weather Service. They do not seem to provide it.

Awesome! Totally does what I was looking for! Thanks

1 Like

Version 0.8.0 is now posted. I have added support for Weather Underground's API now.

I haven't looked at the code yet but does your app/driver use TTS to announce NWS alerts? That's what I want the most seeing that Halo+ had this and I miss having those alerts broadcast.

No, it does not. I do not have any special Alert mechanism built into the driver at all, and I do not know that any of these services provide an Alert in any of the methods I am querying (they might overall, but I focused on general conditions and forecast). I think someone else had a driver that did that specifically for a bunch of services, but I forget whose it was.

I have a couple Halo+ myself. It is so disappointing to me that the company died off and in another few years I will have to replace all my Halo detectors with other stuff that I know will not be half as feature rich.