Platform Update - Release Notes - 10/20/2015

That is really weird.
Will you post a screen shot of one of your routines that isn’t working?

Did the repair Z network function get removed? I can not longer access it from the App or web…also, as of right now I cannot add new devices - I am testing but I have been adding devices daily and today is the first time that I am having problems…

I am seeing something along those lines as well… I have a SmartApp that posts energy readings to PlotWatt… Or Rather I should say I did… Since the “Upgrade” it no longer works. Every HTTP post fails with an Unauthorized exception… Nothing I have tried seems to fix the problems… It’s like the HTTP functionality is broken. I have bounced my hub, reinstalled the app, nothing…

I also had to reinitialize almost every app I had as they where not functioning properly. Most are working again, but it seems all of the applications that need to talk HTTP are broken or misbehaving… WEMO, Broken… Harmony, Broken… Etc… Though it seems to be contained to SmartApps, my integration to NEST is working, but that is a custom device.

FYI… I figured out the issue around HTTP Posts… Clearly something changed as the method I was using prior to the upgrade worked just fine… PlotWatt uses an API key for authentication, which is really just an HTTP Basic authorization with no password…

I was using the following to pass they key
def uri = "http://${apiKey}:@plotwatt.com/api/v2/push_readings"

Since the upgrade this apparently no longer works… I had to make the following change

def headers = [:] 
def userpassascii = "${apiKey}:"
def userpass = "Basic " + userpassascii.encodeAsBase64().toString()
headers.put("Authorization", user pass)

Thought I would share in case anyone else is having the same issue…

1 Like

Not sure how or why…but all of a sudden the device was picked up…and the repair tool has re-appeared.

1 Like

ZigBee device pairing, no beueno…
@slagle @Tyler

generated during a call to enrollResponse
groovy.lang.GroovyRuntimeException: Ambiguous method overloading for method java.math.BigInteger#.
Cannot resolve which method to invoke for [null, class java.lang.Integer] due to overlapping prototypes between:
[class [I, int]
[class [B, int]
[class java.lang.String, int] @ line 309

device will not finish pairing, obviously…

what were you trying to pair? Looking into this…

1 Like

I had issues pairing the new Centralite motion sensors Lowe’s is selling under their Iris brand. I had to pair them and let them show up as "Thing"s, go into the IDE to change them to SmartSense Motion/Temperature, then rediscover them after a battery pull/button press reset to get them to work.

I depend on text to speech software, so I can’t read the code to tell if these are the same errors were different ones, but Multiple forum reports of different device type errors in previously working device types since the platform update

  1. hue bulb (official type)
  1. motion detector
    (Above)

  2. keypad

  1. harmony hub add failing
  1. plus the post errors reported above

  2. And my switch that showed as neither on nor off

Also, multiple reports of problems running zwave repairs

Regarding #1, I do not see any such exception after update. I migrated 23-24 bulbs with zero issues from old hue bridge to the newer HomeKit enabled one. The time it took was 15 minutes too. Hue connect showed 2 hue bridges. I deleted the old bridge identifying by the IP and made a DHCP reservation for the new one so that it doesn’t change across router reboots. Nothing else had to be changed and works as a champ.

Sorry if I wasn’t clear, but that was exactly my point. It was working for people before the platform update, then the exact same process started failing with errors after the platform update.

You did yours before yesterday’s update, right?

After update followed by a router/ST hub reboot. My MyQ internet gateway was acting funny. So rebooted the router as well.

Ok, so maybe the hub reboot is needed. edited to add members having the problem tried reboot and it didn’t help. :disappointed_relieved: back to the poltergeist theory.

A slightly modified version of the stock ST device for the iris motion sensor
The only mod being the fingerprint.

@workmonk, any update on the enrollResponse problem?

are you still seeing enrollResponse problems? The errors that you were seeing were related to the endpoint of the device failing to register itself. What is the endpoint that the motion sensor has HA 1.2 implemented?

@workmonk
Yes it’s still happening, the end point is 01.
Device not registering or not, I paired 3 of these over the weekend, and now I have two that will not pair.
Including one that paired just fine last week.

I’m also seeing null pointer exceptions in other devices that have not thrown them before…
Wud up guys?

Can you post your working SmartApp? I still have an issue with mine even with this snippet.

Sure… Here’s the full source below… Hope this helps… It’s been working without fail since for me since I made the update… I modified an example bigpunk6 had posted a while back…

/**
 *  PlottWatt Connector
 *
 *  Copyright 2015 Michael Kurtz
 *
 *  Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
 *  in compliance with the License. You may obtain a copy of the License at:
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
 *  on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License
 *  for the specific language governing permissions and limitations under the License.
 *
 */
definition(
    name: "PlottWatt Connector",
    namespace: "bigpunk6",
    author: "Michael Kurtz",
    description: "Upload Power Meter data to PlottWatt",
    category: "My Apps",
    iconUrl: "https://s3.amazonaws.com/smartapp-icons/Convenience/Cat-Convenience.png",
    iconX2Url: "https://s3.amazonaws.com/smartapp-icons/Convenience/Cat-Convenience@2x.png",
    iconX3Url: "https://s3.amazonaws.com/smartapp-icons/Convenience/Cat-Convenience@2x.png")

preferences {
    section("Power Meter") {
        input "power", "capability.powerMeter", title: "Power Meter", required: false, multiple: true
    }
    section ("PlotWatt API") {
        input "apiKey", "text", title: "PlotWatt API Key", required:true
        input "meterId", "text", title: "Meter ID", required:true
        input "uploadCount", "number", title: "Upload after this many events", required:true
    }
}

def installed() {
    initialize()
}

def updated() {
    unsubscribe()
    initialize()
}

def initialize() {
    state.body = []
    subscribe(power, "power", powerEvent)
}

def powerEvent(evt) {
    sendEvent(evt)
}

private sendEvent(evt) {
	def kwatts = evt.value.toDouble()/1000
    def timeStamp = now().toString() [0..9]
    state.body << "${meterId},${kwatts},${timeStamp}"
    log.info "${evt.displayName} ${evt.name} is ${evt.value}W"
    log.info state.body.size()
    if (state.body.size()  >= uploadCount) {
        def body = state.body.collect { it }.join(',')
        def headers = [:] 
		def userpassascii = "${apiKey}:"
    	def userpass = "Basic " + userpassascii.encodeAsBase64().toString()
		headers.put("Authorization", userpass)
		def uri = "http://plotwatt.com/api/v2/push_readings"
            def params = [
                uri: uri,
                headers: headers,
                body: body                
            ] 
        log.debug "Posting last ${uploadCount} events to ${uri}"
        state.body = []
        httpPost(params) { response ->
            log.info "httpPost responce:${response.status}"
	    }
    }
}

Would love to know when this is coming. ‘This feature is coming soon’ is relative.

2 Likes