I’ve been messing around with the SmartWeather device type (and some other weather tweaks) to power a weather-based SmartApp, and I’m wondering if there’s any way to get more precise with location. Everything seems to use zip code, which is great if you live near the centroid of a given zip, but not so great if like me you live at the intersection of 3 separate zip codes. All of them have different microclimates, and I’d love to be able to use location awareness or lat/long to improve the reporting.
Is this possible? Or does the weather handling only work by zip code?
Most weather services don’t gain much as you go deeper than zip code.
That said, you are not without options.
- If Weather Underground is smart enough at your exact location, you can still use it. There is a chance you can change the zip code setting of the SmartWeather Station Tile device to lat,long. Otherwise you may have to copy and modify the device type slightly.
- If a different weather service is sufficiently accurate, you could modify the SmartWeather Station Tile to work with the api of that service
- Depending on what weather data you need, you could get a physical device that works with SmartThings. That is the most expensive, but also most accurate.
Ok, interesting. I’ll dig into the device type a bit and see if it will accept lat/long. As far as more accurate services go, the Dark Sky API would theoretically fit the bill, although it does return less information about the current conditions. That’s not a problem for me, though!
Side note, is there any way to force a virtual device like this to update more frequently?
You could change the schedule frequency (I assume there is a schedule call in there somewhere)
It doesn’t have one, actually. Can you point at a device that might, so I can find an example? I just skimmed through a bunch of device types, including virtual / internet ones, and didn’t see scheduling included.
Device types may not be able to have their own schedules. This is a good question for someone like @urman
I’m also interested in this. Does anyone know of a way to accomplish this?
Device Types cannot enable cron like jobs right now. Though its a “I totally want this” feature. Meaning I totally want this.
You can use the shared SmartApp “SmartWeather Station Controller”. It’s found under “+” > More > Convenience. This updates the weather tiles every hour.
Thanks @thegibertchan! I didn’t know that SmartApp existed!
Awesome. Filing that away for future reference.
This should really be shuffled through the Labs and into the standard list of apps and “devices” that you can add. Linking @Ben make a case for it!
Note that ST uses Weather Underground as their weather sources. If you don’t like the station being automatically chosen based on your zip code, you can specify a particular Personal Weather Station be used instead - at least with those SmartApps that ask you for your Zip Code.
The trick is to specify the desired station instead of entering a zip code. the syntax is “pws:STATIONID” - i use my own weather station by entering “pws:KMATYNGS2”.
And to get more frequent updates on your Virtual Weather Tile, search for the app “Pollster” - I set mine to poll every 10 minutes…
How do you do this? I’m using Pollster already for a couple of other devices, but my weather station tile doesn’t show up as one of the devices I can poll.
Ooops - sorry. It seems the current SmartWeather Tile doesn’t declare the polling capability. Add this after the other
capability definitions at the top of the source file:
Save and Pulbish it, then it will appear amongst the list of things that Pollster can poll.
I suppose I’m a newb. I don’t see where to put the updated polling text. Can anyone save me?