GroveStreams SmartApp

Ok, another one, it seems to only write one value (energy) despite putting two (energy & power) into the queue:

5:40:47 PM: debug GroveStreams accepted event(s)
5:40:47 PM: debug Events: [[compId:TOMS TED, time:1418769644363, streamId:energy, data:654432]]
5:40:44 PM: debug Appending to queue [compId:TOMS TED, streamId:energy, data:654432, time:1418769644363]
5:40:44 PM: debug Appending to queue [compId:TOMS TED, streamId:power, data:660, time:1418769644353]

…sounds like there is something wrong in the code you are using, and you are not really appending to the queue, but replacing it each time… do you have some spurious “state.queue = []” code? If you do, make sure it’s only in the initialize() code, and maybe with a “if (state.queue == null)…” check first.

Hi Mike, I’d be happy to help out with this. Feel free to let me know more about what you are after either in this thread or PM.

Hi, sorry for the delay.

The extra value just showed up the next day. No idea why.

Here is a dashboard example via GroveStreams: single-family-house-dashboard-updated

I wouldn’t mind seeing somebody else’s examples - FYI you can create temporary Dashboard keys and custom Dashboards for public viewing, that you can delete without affecting your private Dashboards.

UPDATED EXAMPLE LINK:

2 Likes

I’ve just posted about @mmills and myself writing a tutorial for integrating SmartThings with GroveStreams GroveStreams SmartThings QuickStart

1 Like

Is there a way to send energy usage to grove streams?

It is surely possible; you will just need to add that to the code, similarly to how it currently handles temperature, for example.

@thrash99er, I’ve been doing it for a while, see

https://github.com/yracine/device-type.myecobee/blob/master/smartapps/groveStreams.groovy

P.S. I also added a lot of devices that I use, especially anything related to the ecobee thermostats (Smart-SI, Smart, ecobee3, EMS)

Regards.

1 Like

Do have sample code for getting the thermostat operating state capability? I was able to add humidity levels successfully to GroveStream, but I can’t get the thermostat operating state. I’d like to see when my HVAC has been running in comparison to temp levels. I tried to click on the links in your post, but they aren’t working.

In the app version I use, I added a thermostat category, subscribed to “thermostatOperatingState” events:

subscribe(thermostats, "thermostatOperatingState", handleThermostatOperatingStateEvent)

…and processed it this way:

def handleThermostatOperatingStateEvent(evt) {
    sendValue(evt) { it == "idle" ? "false" : "true" }
}
1 Like

I added this to the preferences:

input "thermostats", "capability.thermostatOperatingState", title: "Thermostat Operating States", required:false, multiple: true

Then subscribed as you did:

subscribe(thermostats, "thermostatOperatingState", handleThermostatOperatingStateEvent)

Finally processed as you did:

def handleThermostatOperatingStateEvent(evt) {
    sendValue(evt) { it == "idle" ? "false" : "true" }

When I publish the updated SmartApp to my ST hub, I can see the new thermostat category, but it doesn’t recognize my Nest thermostat as an option. Thoughts?

You want to filter by “thermostat” capability:

input "thermostats", "capability.thermostat", title: "Thermostats", required: false, multiple: true

That worked, thanks!

I just used the smart app and I chose some devices ,less than 20 streams to be in the free limit
but it only logs one.I have it going for the last 3 minutes.

Do you know why or do I have to wait a bit?

Wait…
The app doesn’t poll for changes, so the devices have to change states or report for the data to push.

Yes I have seen that it starts to create components.I don’t know if I can trigger them with Pollster.
The same philosophy app for Xively sends continuous live data.I made it work 20minutes ago.
I want also a plot.ly app for SmartThings and check which is better for historical data.

How did you create that top graph in GroveSteams? That’s awesome! - Derek

Create an org at GroveStreams, create “API key”. Put “API Key” in phone smartapp for GS and select sensors to share, then the selected streams become available for charting at GS within an hour. You drag the streams onto a graph widget, configure axes and colors and linetypes. Repeat until insane and bored. Share the chart with a separate key and link if you want to publish to internet. Be aware of sharing house address and occupancy.

Every now and again/ about 1-2 times a month it stops logging. Then I open the smartapp, check or uncheck a new sensor, click DONE then GS starts receiving all data again. I just configured a way that GS will notify me if it stops receiving data for a couple hours - convenient.

I think the best part is not having to keep my own weather station.

One hangup is that none of my humidities are showing up as streams. It’s a puzzle.

I’ve also added a dashboard to SmartTiles as a web link. Works pretty slick.