update: both my wife’s and my fobs show the similar problem this Monday night. I find a suspicious event from the log. This is the only one with “false” state. Is this where the problem come from?
2017-01-30 10:52:17.708 PM PST
3 days ago DEVICE ENTITY_UPDATE DeviceUpdated Device ‘{{ deviceName }}’ updated false
First, Mitch, thanks for putting this together. I bought one of these hoping to control the routines I’ve been using in SmartThings for a few years, for people in the house without a smart phone (or without their phone logged in to our account), and the work you already did was a huge help.
The problem I ran into is that triggering a routine via a button doesn’t let you pick which button to use (at least not as far as I could tell), so I refactored a bit of the code to create the Fob as a “Composite Device”. Now, the presence and battery indicators are part of the parent device, but each button is registered as its own device (but, since it’s a “component”, it won’t show up in your “My Things” list).
I also ended up with the new -L2 version (instead of shapes, the buttons are: door icon, house icon, A, B), so I added both fingerprints to the parent device identifier.
So I’ve got both of those handlers installed for my L2 fob. It finally showed up in ST as Iris Smart Fob and is marked as present (no battery indicator though). I installed the Button Controller SmartApp but can’t get the buttons to do anything. Events show up in the Events List pages for the Button devices on my IDE so clearly something is working. Did I do something wrong in the Smart App or am I missing something else? Presses aren’t triggering events in webCoRE, either.
Thanks @spiralman. What is the other file for? one says iris-smart-fob and other iris-smart-fob-button.
Thanks!
(i have the device installed, I have the new device handler, I have it associated with my fob, and I have the button app installed and configured but none of the buttons register… I checked the device log and the live logging and nothing from this device (even though its does report “present” on the smartthing ios app).
Okay, so I removed my device and added it back in and it automatically choose this device handler (iris smart fob). I am able to configure the new settings @spiralman added (thanks again). It now records battery life (sheesh it says 88% and is brand new!!). But I still can’t get anything to show up on the marketplace button controller (I have it installed with this device) but still no button registers. Mine is clearly this -L2 version.
Okay for the benefit of others. I realized what I did. I like to copy code and then put it in my own namespace to avoid potential collisions. The code that @spiralman had, for the device manager in iris-smart-fob, calls a routine that hard code looks for it in spiralman’s namespace. So I not only had to change it at the top of the metadata field, I also had to change it when he invoked the iris-smart-fob-button (which, btw, also needs to be installed for this to work).
Now it looks like you can control each button independently. Also for the new fob’s, B=button 1, A=button 2, man leaving door= button 3, and house = button 4. Hope this helps, didn’t take me too long to figure out…
Hi, I’m new and I’m trying to use the control of 4 iris buttons. I need your help when trying to use the code. Give me this error.
No signature of method: script_app_metadata_b8eeb095_90c0_4b95_8cef_51d428d18d44.metadata() is applicable for argument types: (script_app_metadata_b8eeb095_90c0_4b95_8cef_51d428d18d44$_run_closure1) values: [script_app_metadata_b8eeb095_90c0_4b95_8cef_51d428d18d44$_run_closure1@4e5fd7c3] Possible solutions: getMetadata(), getState(), setState(java.lang.Object), metaClass(groovy.lang.Closure)
I have the new Iris Smart Fob (item 877644, model 3450-L2) and am trying to piece together the latest info from this thread. The fob seems to be working fine with the mitchpond DTH from Github referenced in post #1 in this thread. But is that the latest and greatest?
Does the model 3450-L2 deserve a new thread here, you think?
One question I do have is actually about the Button Controller smartapp, which I assume is the recommended way to configure the smartfob. When I am configuring a button, I can configure a list of lights when, say, button 1 is pushed. But I don’t see where I’m configuring what the lights should do (e.g. device state, dimming level, etc.). Does the button just toggle their current state?
There was mention in this thread of a datasheet for this smartfob. That would be nice to have since it doesn’t come with any instructions at all. I looked at https://www.irisbylowes.com/products/iris-smart-fob/ and didn’t find instructions or a data sheet. Would be nice to have a document that describes how to put into pairing mode, for example.
@spiralman@Dwhi
I’m having difficulty getting this to work with the button controller smartapp. IDE is recognizing button presses and button hold, but actions aren’t triggering reliably. I can sometimes get button 1 to trigger a light on, and sometimes a different button is recognized as button 1. Do I need to add a separate instance of the smartapp for each button?
Also, is there a delay in button presses? When I can get button 1 to work, it doesn’t work every time. Do I have to wait for the red light in the fob to stop blinking?
Sometimes a green light blinks in the fob. What do the colors mean?
I just used switched to mitchp’s DTH that’s linked in the first post, and everything’s working fine now. Presence and button programming work well. So well, in fact, that I picked up a second fob and welded the side battery contact that has caused many others problems because it’s usually held in place with just glue.
The only reason that I initially used spiralman’s DTHs is because I thought I read that the buttons would otherwise be programmed in random order. That’s not the case. The button assignments on the fob go in clockwise rotation with mitchp’s DTH.
By the way, mitchp’s DTH is only really necessary if you want presence. ST was able to find the fob without a custom DTH. It recognized it as a Zibee button with the name Iris Keyfob. All 4 buttons were programmable, too.