Iris Smart Button


Hi all, I am using the following device handler:

Device Handler

  • My button reports constantly -557*F
  • The “held” command does not work

Are you guys experiencing the same issues?
Are you using a different Device Handler?

Thank you for your support!

Not sure why you expect it to work, when the code says this in the updates section:

03-25-2016 : Modified to always be Pushed (for the way I use these buttons). Lines 160/161 can be changed to revert back to normal operation.

LOL that made my Monday morning!

But yeah, seriously, always read the change log @amegn1000, it’s amazing the little things you’ll find in there when we have so many versions of different apps and handlers floating around.

This device is so unreliable to begin with though, I’d almost just recommend having a single action and leaving the handler you have in place.


I manually chaged the lines 160 - 161 to:

	//return createButtonPushedEvent(button)
	return createButtonHeldEvent(button)

But, I am still freezing in my living room, apparently it is -557*F, pretty usual for a summer in Florida! :joy:

Anything I can do to fix the temperature issue?


Try loading it in the simulator with the physical device selected and press the Configure button.

You can try to repair, the short way, pull the battery, hold the button down, put ST into Connect New Device mode, push the battery back in, it’ll flash a few times. You won’t see anything on the phone, just cancel out of it in 30 seconds or so. It might fix the issue…

I am attempting to turn on/off a living room lamp with my Iris Smart Button. I have added the github Button Controller and ST recognizes the device as “Iris Smart Button”. I am then able to Select a Room in which I choose “Living Room”. Next option is to Install one or more SmartApps > Button Controller. Set Button to “Iris Smart Button”. Upon clicking Next I always receive “Sorry, but there was an unexpected error” and only shown the Remove link. Any idea what my issue may be?

I have a spiral staircase with a light switch on the wall at the bottom.There is no practical way to wire a powered switch at the top in any kind of convenient location. So I’m trying an Iris Smart Button, which I can stick on the railing, but having problems with it.

I have a GE Smart Switch named “Stairway”, and the Iris Smart Button is “Stairway Button”. I’m using Mitch Pond’s device handler for the button. I’m using CoRE to run this piston:

Here’s the event log from just now:

There should be a lot more button presses recorded, including one just seconds before I took this snapshot. And none of the ones that are in the event log have actually caused the light to toggle.

Problem 1: why am I not seeing button presses?

Problem 2: (which might better belong in a CoRE thread) is TOGGLE not the right task? As I’m sure you guessed, all I want the button to do is turn the light OFF if it’s currently ON, and ON if it’s currently OFF.

I don’t know if this actually explains your problem, but many people (myself included) have noted this button to be very sleepy. That is, it often doesn’t register the first time you push it, because that just ends up waking it up. I guess that might still register as something in an event log, but regardless the Iris smart button is annoying to try to use for anything if you end up having to push it once just to wake up, then another time to do whatever it is you intended to trigger with the button press.

Thanks. I’ve seen that in a number of posts. I’m finding that even if I push the button several times in succession it still doesn’t trigger an event, so I think it goes beyond sleepiness.

In your case, probably. But best case scenario you have to tap it twice to get it to do what you want most times. I abandoned the button that came in a pack of Iris items I picked up a while ago.

Not trying to derail your button quest, and you may very well already know this, but are you aware that all you need is power in order to add an auxiliary switch that you can then tie back to your lights? There’s no need to have wires that run to the lights themselves.

If you had an electrical outlet anywhere near the top of the stairs, this might be an option. Of course, you may already know all this and be well past this point, thus why you’re looking for a button :stuck_out_tongue_closed_eyes:

FWIW, I use a smart button and it’s often very sleepy. Really a pain to use…but it does work.

Thanks . . . yes, I was aware of that. But there isn’t an outlet in a convenient location to draw power from.

As you can see . . . yes, there’s an outlet, but it’s not in a particularly convenient spot. That stairway gets used a LOT, and to have to walk around either side of the railing to get to a switch would be a nuisance. I want to just put a button right at the top of the stairway, on one of the railing posts.

Although I did just get a brainstorm . . . well, more of a drizzle, actually . . . of an alternative that might work. But I’m not giving up on the button quite yet.

Quite a few options, depending on your exact requirements:

What is it exactly that you are trying to do? Just turn the light on before you walk downstairs? Why not just put a motion sensor on the first stair against the wall? When there is motion turn downstairs light on. If the light is already on it won’t do anything. If it’s off, it will turn it on. I would set the switch downstairs to have a delay in turning off to give you time to get up the stairs so the motion sensor doesn’t turn it back on. An Amazon Echo is an easier solution, although not as cheap. Then again you can use the Echo for a lot of other things as well.

You could make your own button thats not sleepy using a mono price contact sensor.

Are we sure that the Iris Smart Button is “sleepy”?

My iris smart button works the first time I hit the button every time.

The problem could be a weak zigbee mesh!!! That was my initial problem.

Initially my iris smart button worked only some of the time, but ti was due to a weak zibee signal from the hub to the far side of the garage door where I wanted to place the smart button. I had NO zigbee repeaters at first.

I purchased a smartthings power outlet ( I Support Smartthings when possible :slight_smile: ) and placed it into the laundry room, as I wanted to monitor my washing machine, and was hoping the laundry room was close enough to the garage to fix the intermittent issues I was having with the iris smart button.

It did work and the iris smart button does NOT seem to go to skeep.

The iris button is usually only used on the weekends, it is placed on the far side of the garage next to the garage door to be used when I am walking out of the garage on foot and NOT in my car, to shut the door on the way out.

I hit the button, the red light blinks twice and the garage door closes.

HERE is a tip

Having a strong mesh (zigbee or zwave) seems to be much more important than one might think at first.

One might think that as long as the device is paired and works some of the time, everything is working.

For computers this is the case but it does not appear to be the case for Zigbee and ZWave.

Quality of Ethernet or WiFi signal for computers impacts performance long before it will cause data to actually get dropped

When using Ethernet and/or normal computer WIFI some amount of data does get lost, but the protocol has handshaking, so any data that is lost is re-transmitted.

As far as I can tell Zigbee and ZWave protocols do not have error detection and handshaking that compares to what Ethernet/TCP/IP performs.

Normally when we think of a computer network, using our computers (Ethernet/TCP/IP) the protocol has some built in error detection and handshaking that goes on between the devices or programs that are communicating. So data that does not arrive at the destination can be resent. The sender sends some data and as it is sending the data it asks the receiver to confirm that the data is received. An acknowledgment or ACK. The receiving side sends ACKs as it receives data. If the sender does NOT receive an ACK for any piece of data, it re-sends the data, and data is numbered so that the entire messages can be assembled in the correct order even if data arrives out of order on the receiver side.

Zigbee and ZWave do NOT appear to have this. If the button sends a click message and it is dropped, the button has NO way to know the message was NOT received and does not send the message again!!!

Is there any way to confirm which devices have this “sleepy” issue?

Yes. :sunglasses: Almost all zigbee and zwave battery powered devices sold for home automation are sleepy devices. It’s done to extend the battery life.

That said, your points about the strength of the mesh are definitely important.

As far as your other comments about network topology, I’ll just say that’s not quite how it works. I don’t want to hijack this thread with a long technical discussion, but there are other threads that already exist to discuss the various protocols if you’re interested in those details. :control_knobs:

There is an acknowledgment methodology in mesh, and messages do get sent more than once. But there’s no forced sequencing.

It should be enough for this thread to say that strengthening the mesh is always a good idea, but some zigbee devices are better at failed message management than others, and this particular one doesn’t seem to be very good at it. But then, this is also a very inexpensive device, so that’s not that surprising.

If you want to discuss specific protocols further, the following is a good thread: