Expanded Lighting Group Features
I purchased several ES20M and KL135 bulbs to get started toward replacing nearly 50 lights in my house, with multiple areas having 4-to-9 lights that must be controlled as a single entity.
Kasa was selected for this, as the feature descriptions implied smart control of Kasa bulbs (in addition to being able to work with non-smart, dimmable bulbs). That doesn't quite appear to be the case. That "smart" control of Kasa bulbs seems to be limited to the On / Off for KL-series bulbs in the same group, and that only with the creation of additional Scenes or Smart Actions.
To greatly improve the flexibility of Kasa grouping with both bulbs and switches, recommend:
- Switch On/Off and Brightness buttons (if available) be configurable to only affect the electrical load, in which case On/Off works applies and removes power, and Brightness +/- dims the load.
- On/Off and Brightness buttons (if available) be configurable to leave the load On at 100% at all times, and instead send On/Off and Brightness commands directly to all KL bulbs that are Grouped with the ES20M.
- On/Off and Brightness buttons be configurable to do both Load control and Kasa control.
- These modes -- perhaps "Load Only", "Kasa Only", and "Both Load and Kasa", should be capable of being independently set for Power button, Brightness buttons, and Motion / Ambience Sensor to match the user's needs.
- When a Switch is in a Group with KL-Series bulbs, the Motion and Ambience Sensors are automatically available as Group features, without the need for Smart Control or Smart Actions. The Motion feature just becomes a setting that can be toggled On or Off in Group Settings, that when On will turn On all devices in the Group.
Essentially, a "Group" of smart switches and lights implies what should effectively be a "super device", in which the Group gains or inherits the capabilities of devices added to it. Those devices should operate as if they were one entity or device.
The Group control screen should have available all features that the combined, individual devices have - Power, Brightness, Color Temp, RGB Color, Motion / Ambience, Presets, Schedules, Smart Control, etc.
Adding any device with greater or lesser capabilities to a Group, should only expand the capabilities of the Group, or leave it unchanged. For example, a Group consisting of bulbs that have fixed color temps, tunable color temps, and RGB color capability should not lose color temp or RGB color because of the fixed-color-temp bulbs. In this example, Group control for color temp or RGB colors should only be removed when all devices with those capabilities are removed from the Group.
This would be a tremoundous boon for those who have numerous bulbs that must be controled as one, and would provide a single source of control for everything in the group, and won't force the user who needs multiple schedules throughout the day to meet their needs, to have to manually create those schedules on every single bulb in a large group.
- Copy Link
- Subscribe
- Bookmark
- Report Inappropriate Content
So the problem that I see here is that the Smart Bulbs always require their load to be at 100% as the device needs to stay connected to the internet and still be an active device on your network. This is why we don't recommend placing smart bulbs on a dimmer switch, as the dimming functionality would break the functionality of the bulb. As soon as the power is dimmed below a certain level, the bulb will just shut off and will need to be powered by the dimmer in order to receive commands again.
In case you missed it also, in the smart action screen, there is a set lighting option that will appear for lights that will allow you to set the lights however you want, rather than simply toggling a light
I am currently looking into your group recommendations in order to create a request that can be forwarded, as there are some functionalities that I thought were included that apparently are not, such as adding RGB and non-RGB bulbs to a group. Also, I am a huge fan of your last request, even though this is traditionally done through smart actions and groups of lights.
- Copy Link
- Report Inappropriate Content
Riley_S wrote
So the problem that I see here is that the Smart Bulbs always require their load to be at 100% as the device needs to stay connected to the internet and still be an active device on your network. This is why we don't recommend placing smart bulbs on a dimmer switch, as the dimming functionality would break the functionality of the bulb.
I understand this, which I why I currently have the lights wired directly to power, bypassing the switch. The switch is paralleled to the same power line, but can't do anything to it. Right now it pretty much must be wired this way to avoid the problem you describe. In my idea with the "Kasa Only" setting, power could always pass through the switch to the lights without being affected - the Power and Dimming buttons would only send commands, not perform any physical actions.
In case you missed it also, in the smart action screen, there is a set lighting option that will appear for lights that will allow you to set the lights however you want, rather than simply toggling a light.
I didn't miss that. It's just that in order for that to be useful for the entire Group, it has to be set in the Smart Action for every light in the group. This becomes very tedious when it has to be done for several Groups that each have 4-to-8 lights or more. It feels like it would very much easier to configure all of those options at the level of the Group, as opposed to multiple times each for multiple lights.
I am currently looking into your group recommendations in order to create a request that can be forwarded, as there are some functionalities that I thought were included that apparently are not, such as adding RGB and non-RGB bulbs to a group.
- Copy Link
- Report Inappropriate Content
To perhaps clarify the overall intent here, it seems very possible - and exceptionally useful - that any Kasa switch should be able to act as not just as a Smart Switch / Dimmer / Motion Sensor for standard lights with just a few features for your KL bulbs, but also as a full-fledged Smart Control for your Smart Lights and Groups, without necessarily exerting any On / Off / Dimming control on the power load.
That is what I thought the marketing material implies is possible ("Kasa Smart Switch is now an integrated Smart Controller"), but really isn't.
I think true, comprehensive Smart Control of other Kasa products from your Switches would be a very compelling selling point.
- Copy Link
- Report Inappropriate Content
As I've continued to live with a group of eight KL135 lights and two ES20M wall switches, it's become clear that these devices need some way to communicate at least group state to each other (not to mention group capabilities, which is fairly well covered in previous posts).
As a user with those devices and the KASA app configured so that motion at either ES20M triggers a Smart Actions to change the state of all eight KL135 and the other ES20M to "On", and another Smart Action so that if either ES20M changes state to "Off" all of the KL135 bulbs change state to "Off", I expect that those functions will work - that effectively, any change in the On or Off state of either ES20M will result in the same change in On or Off state of all of the bulbs - so that the lights in that space are always in the same state.
As it is now, any time the On or Off state of either of my ES20M changes, chances are no better than a coin flip as to whether all of my KL135 bulbs will change state to match. In this space, where the bulbs are roughly in four rows of two bulbs each, what happens is that some bulbs are either On when they should be Off, or vice versa, about half the time that any trigger event (motion sensed, or motion timed out, at the ES20M switches) occurs.
At the very least I would expect that state change from any device in a group would be broadcast to all devices in the group, and all other devices would follow.
For reference, when controlling the group from the Kasa app or from an Alexa or Google Home group, the lights respond to On, Off, and other commands relatively quickly and in sync. It's the group response to Smart Actions in particular that routinely fails to perform the expected actions.
I realize this is not necessarily an easy protocol to implement. Methods would have to be developed (or borrowed) to elect a group leader, transfer leadership if a leader becomes unreachable, define a hierarchy for device leaders (e.g., switches before bulbs, if present in group), paying attention to time stamps of state broadcasts, etc. - but it can definitely be done. Google for the WLED Project UDP Sync for reference.
This would greatly improve the end-user experience by maintaining grouped light state sync (for On, Off, Color, Color Temp, Brightness, etc.).
- Copy Link
- Report Inappropriate Content
A few things:
Regarding Kasa Motion Switches - I have seen an increase in requests for the device, so I am planning on collecting all of the feedback we have received and delivering it to our QA and development teams. Keep an eye out for requests for more information over the coming weeks; as the teams are currently swamped with preparing for CES this weekend. If there are specific recommendations, feel free to reply here or on a thread in our feature suggestion categories.
Now onto the behavior of your devices.
Right now, the devices do not communicate directly with each other, but this is something that the development team is looking into implementing. With the release of the matter protocol and support for it, devices will most likely have this capability and therefore be much more stable in their functions.
How is your smart action set up? It may be worth trying to separate the devices from the group when sending the commands. If they are already separated, try to control all the devices with a group command.
There are also two different methods of controlling the light through a smart action, one is through the on/off commands, and another appears under the 'Set Lighting' Option. The Set Lighting option allows you to select colors and brightness but is not available in all configurations, such as groups with different devices. In my personal experience, I have had much better luck, across any platform or service using individual rather than group commands.
Also, are your devices configured in such a way that they are disconnected from power often or are changing IP addresses. I am curious if the light status does not change because the device was 'unreachable' due to the device reconnecting to the cloud. Two things that may be worth your time: Setting Static IP addresses for Problem Lights, or Moving your Lights to a guest network and seeing if the behavior persists.
I actually just started looking into WLED for some personal projects for my home. With how much our Smart Devices are moving towards standardization and interoperability, this is something that I wouldn't be surprised that the team is working on already. The one issue that I have always found with syncing devices together, is that different models/brands seem to calculate colors differently. However, I see nothing wrong with using the other attributes for synced states and will pass the recommendation on.
- Copy Link
- Report Inappropriate Content
How is your smart action set up? It may be worth trying to separate the devices from the group when sending the commands. If they are already separated, try to control all the devices with a group command.
I've tried it a number of different ways:
- With one Smart Action using the On/Off state of either one switch, or both switches (which the app implies is an "OR" action) in the "When" section,
- With the "Then" action triggering a Scene that itself controls individual bulbs,
- With the "Then" action triggering individual bulbs directly (via Turn On, Turn Off, and Set Lighting, which also has limitations with respect to precisely selecting color temps or colors),
- With the "Then" action triggering the Group power state (that being the only commands available for a Group within a Smart Action).
This has been tried in various combinations with the bulbs in a group, and not in a group. I've even tried having each switch's state change the state of the other switch, with different subsets of four bulbs tied to the state of each of the two switches, in an attempt to minimize the number of devices each switch might be sending commands to. I think I've exhausted most if not all of the options available in the app.
Speaking of which, control from the app (e.g., selecting the Group and controlling directly from the app) seems to work much more reliably than the Smart Actions executed while the app is closed. I'm assuming that's happening on the devices rather than from a cloud server, but haven't yet explored where these Smart Actions are actually stored or executed.
From my work testing other IoT devices, this random lack of sync seems very much like issues I've seen in which UDP packets are just not getting to their destination. And with no communications betweeen bulbs and switches, there's no way for them to know anything was missed. I kind of want to write a test script with python-Kasa to run through all of the possible features, maybe even fold pytest into that, but not sure my skill set is up to fleshing out new test framework from scratch just yet.
Also, are your devices configured in such a way that they are disconnected from power often or are changing IP addresses. I am curious if the light status does not change because the device was 'unreachable' due to the device reconnecting to the cloud. Two things that may be worth your time: Setting Static IP addresses for Problem Lights, or Moving your Lights to a guest network and seeing if the behavior persists.
It probably got lost in the several things I've posted (sorry/not sorry!), but unless we lose power to the house or cycle the breaker at the panel, these KL135's and ES20M's never lose input power. The bulbs are wired directly to power, with no dimmer or switch between them and the line. The ES20M's are wired in a similar fashion, in parallel with the lights for input power, and with no load connected to them. I did it this way because I'm not directly controlling any standard dimmable bulbs, and the marketing copy out there implied that they are capable of "smart control" of other Kasa devices (which might be overstated just a bit?).
While I hadn't mentioned this before, I have tried all this both with and without DHCP address reservations (since the Kasa app does not directly support configuring a static address for your products), and on two different networks: Google Nest WiFi (three routers, one acting as router and two as nodes/points), and Asus ZenWiFi XT8 (two routers, one as router and one as node).
The Nest WiFi system is probably the most reliable consumer mesh network I've tested, with eero Pro being a close second, but even those two struggle to keep up sometimes with the 140+ devices in my house. And the Guest networks on both of those systems are IP isolated and don't allow devices to talk to other devices, so that would fail right out of the gate unless everything is controlled remotely via cloud server, which is really isn't an acceptable solution. The Asus XT8's were... not great, at least not when lots of UDP and mDNS traffic came into play.
I suspect that on a separate, non-Guest network with only a few devices (say, less than 16 or 24), the Kasa products would very likely perform more reliably. But that adds additional network hardware, complexity to working with and managing the network(s), and probably isn't a solution you'd want Customer Service recommending to most customers (trust me, I've been there!).
I'm currently searching for a replacement WiFi system that handles UDP and mDNS well, but even with great refund policies some places, buying and returning product gets old, fast.
The one issue that I have always found with syncing devices together, is that different models/brands seem to calculate colors differently. However, I see nothing wrong with using the other attributes for synced states and will pass the recommendation on.
I've run into similar issues with the products I test, both for a living and in my home. With respect to Kasa lights, I think there a couple of possible approaches to that:
- When like devices with matching capabilities are grouped, all properties of devices in the Group can be controlled within their full range of values (brightness, color, etc.).
- When dissimilar devices are grouped, those devices become limited to the least-capable devices in the group; or
- When dissimilar devices are grouped, those devices sync within the min/max ranges they share. When min/max values are set beyond the least-capable devices, the least-capable devices go to their limits, but more-capable devices are allowed to go to their own, broader limits.
Personally I'd probably be fine with app features that limit configurations in reasonable ways, per the first and second examples above.
For example, I'd expect a Group of just KL135 bulbs (and ES20M switches) to be able control every capability those bulbs have.
While I personally would never do this, if I were to create a single group of both KL110's and KL135s, I'd probably expect Group control to be limited to On/Off and Brightness.
Were I to mix KL125, KL130, and KL135 (unlikely for me, but still), I'd probably expect full control, but would have no expectation that brightness, color temp, or colors would always match.
In either of the last two scenarios, I'd expect the app to provide a prompt/notice when first adding dissimilar devices to the Group, so I don't get too far in creating the group before being informed it may not act the way I might expect. Something like, "Selected bulb(s) have different features than bulbs already in the Group. They can be added, but Group control may be limited, or different bulbs may not appear the same at all settings." Give that prompt buttons for Cancel / OK / Don't Show this Again, and at least I've been warned.
Different customers will expect different things, but in my experience, communication of whatever is implemented and allowed is absolutely key. UI/UX will have to get involved, define some stories and common use cases, do some testing outside the development and testing teams to see what "normal" people want, expect, need to see or be told to figure out what the capabilities and limitations are, and what they say they will settle for. Regardless, I'm sure the Product Owners and Managers will push for what can be done fastest and cheapest. :) But those decisions do have consequences.
- Copy Link
- Report Inappropriate Content
Another thought, also based somewhat on experience:
Assuming that you do implement some sort of grouped-device communications, I would recommend part of the functional requirements include:
- At least internally, consider creating a measurable performance requirement, e.g., "All lights in a Group must respond and conform to a change in state within 0.5 seconds at least 80% of the time, regardless of the source of state change (mobile app, voice command, switch operation, etc.)".
- Specifying, and publishing / letting users know, the number of devices officially supported within a group. It's possible the implementation may work well for, say, sixteen devices (including bulbs, switches, outlets, etc.) but group communications might begin to degrade beyond that. If so, users should know that, or the app should prevent them from adding more than you know can be supported. Sixteen devices minimum is probably a reasonable and achievable goal. Whatever is decided upon, must be tested to scale.
- Consider whether you intend to support structures (homes), floors, zones, rooms, and/or groups. It's all do-able, I believe. Starting smaller is easier, but can make it difficult to expand the framework if you later decide to broaden the scope if that wasn't taken into consideration early on.
- Definitely test on as many readily available makes and models of consumer / residential grade WiFi network / mesh systems as possible, including TP-Link, and including multiple wireless backhaul nodes/points for mesh systems. The ability of those systems to get UDP packets through the router, and every individual node, and back again, will make or break any implementation.
- Further expansion to the above: Test on those network system makes / models in real-world, home environments, with as many other devices including printers, streaming media players, smart TVs, networked speakers, Homekit products, etc. as can be reasonably achieved. It's shocking the effects that one badly-behaving third-party product can have on what seems like a bulletproof implementation.
Please forgive me If things like this seem obvious, but in my experience they are clearly overlooked by a lot of manufacturers in a lot of products.
- Copy Link
- Report Inappropriate Content
Information
Helpful: 0
Views: 715
Replies: 7
Voters 0
No one has voted for it yet.