I recently installed a bunch of lightify bulbs and switches, and the issue I am having is with the Smart Lighting app. I’m trying to have it turn off the Lightify Dimmable switch instead of the individual bulbs but the Smart Lighting app doesn’t seem to list the switch as a possible choice. I searched the community to no avail.
tgauchat
(ActionTiles.com co-founder Terry @ActionTiles; GitHub: @cosmicpuppy)
2
Which Device Type Handler are you using? Do you know…?
That device is a battery powered handheld or wallmount remote, you can’t actuate it from the system. That is, the system can’t tell the device to turn on or off. That’s why it’s not showing up.
So instead, you have to create a smartlighting automation that controls the same bulbs that the lightify switch does.
This is true of most of the devices that smartthings calls a “button controller.” The hub will be told when someone physically presses a button, but you can’t write an automation that essentially tells the device to press the button, it’s just not how most of those battery-operated devices work.
The main difference between this and a regular wired switch is that a wired switch is always listening to the network, so it’s easy to send it an “on” command.
Most of The battery operated devices actually sleep most of the time in order to extend battery life. When you physically press a button on the device, you wake it up, and then it can send a message to the hub. But if you try to trigger it by sending a message from the hub and it’s asleep, the message will be lost. So most of these devices don’t accept incoming messages unless they are specifically put into a configuration mode.
okay thanks for the response all, makes sense. i guess the rules I setup will have to be via the bulbs then to automate motion on, and motion off commands. i guess since I can turn the switch on and off through my phone, i thought it would be possible to also automate this via an app like “Smart Lighting”
You still won’t be able to turn the battery-operated switch on and off from an app. You have to physically manipulate the switch in order to get it to wake up and do anything.
You can use a virtual switch to create a group of bulbs that you can turn on and off through the mobile app, or include in a smart lighting rule, if that’s what you want.
tgauchat
(ActionTiles.com co-founder Terry @ActionTiles; GitHub: @cosmicpuppy)
8
Exactly!
What most folks don’t realize is that a “Button” or “Button Controller” is not a Switch (“actuator”), it is a sensor.
i.e., it very similar to just a “Contact Sensor” … it senses when you press the button and reports that event to SmartThings. You can’t tell the “Contact Sensor” to close a window or door from a SmartApp. Same with a Button … you can only send Commands to Actuators.
understand what you’re saying but i’m still confused. so i’m in the smartthings > things menu. for example I have a kitchen switch (lightify dimmable) which controls two lighting fixtures (with lightify rgbw bulbs). I can turn on the kitchen switch via the smartthings menu remotely from my office and it will in turn, turn both lighting fixtures on.
Actually, you’re right and I’m right to some extent but not 100% because the specific device type handler that you were using, the one from Adam Outler, does treat this device as a multi level switch. I’m fairly amazed that it works because of the sleepy battery issue I mentioned, but apparently it does.
The other device type handler for this device, the one from @motley , would work just the way that I described.
But the one that you are using should be recognized as a dimmer, so at this point I’m actually not sure why it isn’t showing up in smartlighting. Unless smart lighting is seeing the button capability and then just forcing it into that category, which is possible, but I don’t know for sure .
And again, I’m surprised If the switch always hears the network commands, if it does, how long do your batteries last?
Anyway, at this point I would ask your questions in the author thread for Adam outler’s DTH and see what people there say.
only had them about a week, but smartthings is still saying 100% so far.
tgauchat
(ActionTiles.com co-founder Terry @ActionTiles; GitHub: @cosmicpuppy)
12
The DTH from @motley does not claim Capability “Switch” or “Switch Level”, so there’s no way for it to receive Commands from a SmartApp. A SmartApp will never show this device available as an option to select unless that SmartApp is looking for one of these Capabilities.
Keep in mind that a button is not an actuator … a Button has no Commands
Preferences Reference
capability.button
Attributes
button: ENUM
The state of the button
pushed
The value if the button is pushed
held
The value if the button is held
numberOfButtons: NUMBER
The number of buttons on the device Commands None
Right, but look at the other DTH from Adam Outler, it takes a different approach:
1 Like
tgauchat
(ActionTiles.com co-founder Terry @ActionTiles; GitHub: @cosmicpuppy)
14
Correct… This is a clever and useful implementation.
Notice the Switch Level setLevel() command is implemented (etc.).
Whether or not this “strictly follows” SmartThings’s original intended architecture could be a matter of debate; but, actually, I’m on the side that many more DTHs could use this approach. For example, a Motion Sensor DTH could have an override Tile ad override Command added to it, to temporarily disable the Sensor, and/or to offer optional ways to trigger it from arbitrary SmartApps.
tgauchat
(ActionTiles.com co-founder Terry @ActionTiles; GitHub: @cosmicpuppy)
15
Note:
The approach used by the Adam Outler DTH that you linked need not use any Battery of the Button Control hardware itself.
The Command is can be executed entirely in the SmartThings platform. I haven’t checked the code very closely to ensure it does this.
I would note that the author of the DTH which tries to treat this battery operated device as a switch has himself stopped using the devices because they were going through batteries too quickly. He has switched to regular mains powered switches instead.
Although, maybe you’d like to use the universal one. I don’t know. I do, however, know that my buttons are running out of battery and I’m trying to switch them over. This may require a new developer soon because I am switching to GE in-wall dimmers.
Personally, I would still go with creating a virtual replica of the device and using that in the app while being able to use the physical device as a button controller. But that’s just me.