[ANNOUNCEMENT]WeatherSnoop

Posted on
Thu Oct 24, 2013 10:34 am
jay (support) offline
Site Admin
User avatar
Posts: 18199
Joined: Mar 19, 2008
Location: Austin, Texas

[ANNOUNCEMENT]WeatherSnoop

Indigo Pro (v5+) ships with a plugin for Tee-Boy Software's excellent WeatherSnoop application for Mac OS X. If you want really accurate weather data, WeatherSnoop along with any of it's supported weather station hardware is a great solution. Not only do you get beautiful weather control software running on your Mac and iOS device, but you get accurate and up-to-date weather data in Indigo for use with your home automation logic.

Visit the WeatherSnoop forums to get more information and ask questions from the experts.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Sun Oct 27, 2013 10:19 am
jshields offline
Posts: 37
Joined: Nov 08, 2003

Re: WeatherSnoop

I am having a problem with this version of the WS 2.0.1 plugin. I am running WS 3.0 (186) and I keep getting the following in my log

Script Error embedded script: Python argument types in
VariableCmds.updateValue(VariableCmds, str, float)
did not match C++ signature:
updateValue(_VariableCmds {lvalue}, boost::python::api::object elem, CCString value)
Script Error Exception Traceback (most recent call shown last):

embedded script, line 3, at top level
ArgumentError: Python argument types in
VariableCmds.updateValue(VariableCmds, str, float)
did not match C++ signature:
updateValue(_VariableCmds {lvalue}, boost::python::api::object elem, CCString value)

Is this a bug in the WS plugin? It would be VERY helpful if this error listed the name of the variable involved.

I do have a bunch of scripts that get these values from the WS plugin and make indigo variables our of them Have some of the names changed between the old plugin and this one?

Posted on
Sun Oct 27, 2013 10:25 am
jshields offline
Posts: 37
Joined: Nov 08, 2003

Re: WeatherSnoop

I'm using Python scripts in my triggers such as

myWeatherStation = indigo.devices[1529297552]
theValue = myWeatherStation.states['pressureTrend']
indigo.variable.updateValue("BarometerTrend", theValue)

When I run these I get the error

embedded script: key pressureTrend not found in dict

What gives?

These all use to work with the old WS plugin and WS 2.x

Posted on
Sun Oct 27, 2013 10:36 am
jshields offline
Posts: 37
Joined: Nov 08, 2003

Re: WeatherSnoop

Also, does the weather station (Davis Vantage Pro+) really report rain in miles or kilometers? I would not want to be a round when it rains that much :)

Posted on
Sun Oct 27, 2013 11:29 am
jay (support) offline
Site Admin
User avatar
Posts: 18199
Joined: Mar 19, 2008
Location: Austin, Texas

Re: WeatherSnoop

One of the changes in WeatherSnoop 3 was that each station now presents the fields that the connected hardware present - it doesn't try to normalize anything. The plugin just passes through the fields presented by WS as the states for the device. You'll need to make sure that any weather station you migrate from WS2 to WS3 uses the same field/state names. Obviously that one changed.

So 1) the error you're seeing is because that state doesn't exist and you don't have any error checking around it in your script, 2) the state name obviously changed between WS version, and 3) we just pass through what WS returns so if miles/km are reported we add them to the state list.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Thu Nov 28, 2013 12:26 am
Jpaction offline
Posts: 36
Joined: Jun 18, 2011

Re: WeatherSnoop

I was running weather snoop 2 and started having update problems when I updated to Indigo 6.05. I thought, hey why don't I just upgrade to WS 3. Bummer, no yesterday rain total and no two day rain total just rain total. Any advice on how to get this information? I have been using these fields for controlling my sprinklers and it has been great up until now.

Any help or pointers would be greatly appreciated.

Posted on
Tue Dec 03, 2013 10:40 am
jay (support) offline
Site Admin
User avatar
Posts: 18199
Joined: Mar 19, 2008
Location: Austin, Texas

Re: WeatherSnoop

You'll need to calculate those for yourself which can be done using a schedule and a trigger.

The schedule would run at 11:59pm (just before midnight) and would insert the day's rain total into a variable (say, rainYesterday). The trigger would then run whenever the rain total changed and would calculate the two-day total by adding the value of rainYesterday to the day's rain total and insert that into a variable (say, twoDayTotal). Then you would use those variables wherever necessary.

That's assuming your weather station hardware supports a value that's today's rain total (not all do). The WeatherSnoop guys decided that attempting to calculate rain totals based on all the various fields from the different hardware stations was just too complex so they're only passing through exactly what the station presents in it's API. We took the same approach since it would allow us to make the fields truly dynamic.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Tue Dec 17, 2013 8:33 am
Jpaction offline
Posts: 36
Joined: Jun 18, 2011

Re: WeatherSnoop

Thanks Jay. I have it working now.

Posted on
Mon Jan 20, 2014 8:08 pm
berkinet offline
User avatar
Posts: 3290
Joined: Nov 18, 2008
Location: Berkeley, CA, USA & Mougins, France

Trimming WeatherSnoop's states

Just started using the WeatherSnoop plugin here, and love it. One question though, the states list is quite lengthly, based on WeatherSnoops idea of my station's capability. Is there a way to trim the states the plugin reports other than simply commenting them out of the Devices.xml?

Posted on
Mon Jan 20, 2014 8:38 pm
jay (support) offline
Site Admin
User avatar
Posts: 18199
Joined: Mar 19, 2008
Location: Austin, Texas

Re: WeatherSnoop

You can't comment them out of Devices.xml because I dynamically create them based on the fields available from the selected agent. And, no, there's no other way to hide states.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Wed Jan 22, 2014 7:54 pm
berkinet offline
User avatar
Posts: 3290
Joined: Nov 18, 2008
Location: Berkeley, CA, USA & Mougins, France

Re: WeatherSnoop

jay (support) wrote:
... there's no other way to hide states.

Ok, and I can see why you made it dynamic. In that case I would like to enter a feature request (yeah, I know the likelihood of it's ever getting to the top of the list, but...).

    Feature
      The ability to prune the list of states displayed for a WeatherSnoop plugin "station" device.

    Reason
      When including a state from a Weather station in an action, control page, condition etc, the list can be very long, especially for some of the advanced weather stations like the Davis Pro series which have 145 states. That's 70 different measurements times the display options [eg. cm, in, km, mi, mm] - and most of the measurements are for sensors I do't even have installed. This makes a pull-down list pretty hard to use.

    Implementation considerations
      Admittedly, the number of users who might want this feature is limited. So, rather than creating a UI based editing system, the user could create a file with the names of the desired states. Then, in the Device config, the user could, optionally, provide the full pathname of the file.

But, in any case, thanks for the plugin.

BTW, With the ability in WS-3 to define multiple weather underground PWSs as "agents" this plugin really makes scripts like my (now dated) weather underground AppleScript obsolete.

And, just for fun, here is the state list for my station:
Code: Select all
absoluteBarometricPressure_cb
absoluteBarometricPressure_in
absoluteBarometricPressure_mb
agent
barometricTrend
consoleBatteryVoltage
dayEvapotranspiration_cm
dayEvapotranspiration_in
dayEvapotranspiration_km
dayEvapotranspiration_mi
dayEvapotranspiration_mm
dayRain_cm
dayRain_in
dayRain_km
dayRain_mi
dayRain_mm
elevation
emc
extraHumidity1
extraHumidity2
extraHumidity3
extraHumidity4
extraHumidity5
extraHumidity6
extraHumidity7
extraTemperature1_C
extraTemperature1_F
extraTemperature2_C
extraTemperature2_F
extraTemperature3_C
extraTemperature3_F
extraTemperature4_C
extraTemperature4_F
extraTemperature5_C
extraTemperature5_F
extraTemperature6_C
extraTemperature6_F
extraTemperature7_C
extraTemperature7_F
forecast
indoorDewPoint_C
indoorDewPoint_F
indoorHeatIndex_C
indoorHeatIndex_F
indoorHumidity
indoorTemperature_C
indoorTemperature_F
latitude
leafTemperature1_C
leafTemperature1_F
leafTemperature2_C
leafTemperature2_F
leafTemperature3_C
leafTemperature3_F
leafTemperature4_C
leafTemperature4_F
leafWetness1_cb
leafWetness1_in
leafWetness1_mb
leafWetness2_cb
leafWetness2_in
leafWetness2_mb
leafWetness3_cb
leafWetness3_in
leafWetness3_mb
leafWetness4_cb
leafWetness4_in
leafWetness4_mb
location
longitude
monthEvapotranspiration_cm
monthEvapotranspiration_in
monthEvapotranspiration_km
monthEvapotranspiration_mi
monthEvapotranspiration_mm
monthRain_cm
monthRain_in
monthRain_km
monthRain_mi
monthRain_mm
name
outdoorDewPoint_C
outdoorDewPoint_F
outdoorHeatIndex_C
outdoorHeatIndex_F
outdoorHumidity
outdoorTemperature_C
outdoorTemperature_F
rainRate_cm
rainRate_in
rainRate_km
rainRate_mi
rainRate_mm
relativeBarometricPressure_cb
relativeBarometricPressure_in
relativeBarometricPressure_mb
soilMoisture1
soilMoisture2
soilMoisture3
soilMoisture4
soilTemperature1_C
soilTemperature1_F
soilTemperature2_C
soilTemperature2_F
soilTemperature3_C
soilTemperature3_F
soilTemperature4_C
soilTemperature4_F
solarRadiation
tenMinuteAverageWindSpeed_kn
tenMinuteAverageWindSpeed_kph
tenMinuteAverageWindSpeed_mph
tenMinuteAverageWindSpeed_mps
tenMinuteWindGustDirection
tenMinuteWindGust_kn
tenMinuteWindGust_kph
tenMinuteWindGust_mph
tenMinuteWindGust_mps
thswIndex_C
thswIndex_F
transmitterBatteryStatus
twoMinuteAverageWindSpeed_kn
twoMinuteAverageWindSpeed_kph
twoMinuteAverageWindSpeed_mph
twoMinuteAverageWindSpeed_mps
uri
uvIndex
version
windChill_C
windChill_F
windDirection
windSpeed_kn
windSpeed_kph
windSpeed_mph
windSpeed_mps
yearEvapotranspiration_cm
yearEvapotranspiration_in
yearEvapotranspiration_km
yearEvapotranspiration_mi
yearEvapotranspiration_mm
yearRain_cm
yearRain_in
yearRain_km
yearRain_mi
yearRain_mm

Posted on
Thu Jan 30, 2014 7:23 pm
wikner offline
Posts: 181
Joined: Nov 02, 2003

Re: WeatherSnoop

Can anyone point me to documentation about the WeatherSnoop Plugin? I'm new to WeatherSnoop, though I have been running 3.0 for several weeks. I haven't found much on the WS forums, though maybe my search skills have atrophied.

Some preliminary questions pending my finding documentation:
1) Does the plugin work with WS 3.0?
2) Does the plugin assume that WS is running on the same machine as the Indigo server? If not, is there a way to tell it about the other machine? Currently I have WS running on a different machine on my LAN (because my current Indigo server is on an old Mac Mini that doesn't support any Mac OS higher than 10.6.8, and WS won't run under that OS).

Posted on
Thu Jan 30, 2014 9:00 pm
jay (support) offline
Site Admin
User avatar
Posts: 18199
Joined: Mar 19, 2008
Location: Austin, Texas

Re: WeatherSnoop

Documentation for all Indigo parts are linked off of the documentation landing page. The WeatherSnoop documentation (also linked from the About WeatherSnoop menu item on the plugins menu) will answer all your questions.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Fri Jan 31, 2014 4:14 pm
wikner offline
Posts: 181
Joined: Nov 02, 2003

Re: WeatherSnoop

Thanks. It all works as documented and is VERY COOL.

Page 1 of 1

Who is online

Users browsing this forum: No registered users and 0 guests