Fan speed control (but not 0 to 100 dimmer slider...)
Hi, is there any plans to create a toggle for a fan control that isn't a slider? Right now, as you know, the fans are operated the same way the lights are in that there is a slider that is 0-100%. Whereas a fan works by having a low, medium, high which on mine is associated with 33%, 67% and 99%.
Here is an example of mine on the ST app.
Thanks.
Answers
Hi Josh,
Feature requests to support new device types (with appropriate Tile controls) are welcome; but if the device type is not on the official published SmartThings Capability definition list (there is no "Capability Fan Speed"), then we tend to give it lower priority for R&D.
Without a standard Capability, the number of customers using Fan Device Type Handlers is very low. The exception is if you are using a specific brand / model of Thing that is "Works With SmartThings"™ certified: This condition would bump up the priority a notch or more.
We encourage you to participate in the SmartThings Community to hopefully increase the visibility of the need for a "Capability Fan Speed" (and other similar examples), so that SmartThings will expedite definition and implementation of the appropriate standards.
For some reason I never get notifications when I get replies. Sorry for not getting back sooner.
The switch I'm using is in fact a "Works with SmartThings" certified device if that helps. LINK
It's my understanding that most "Smart" fan controls, or maybe fan controls in general, only respond to 3 power levels and anything in between doesn't do anything.
On the same token though. I would think, I could be wrong, that people would love the option for low, medium, or high on lights as well. Maybe not the 5 different settings but at least a low medium or high.
Of course, it could be that it's only me that uses it.
- I can't find the source code for this DTH in the SmartThings Public GitHub. Do you know if this code is published anywhere?
- All the DTHs I could found just ride on top of Capability "setLevel" (i.e., dimmer); since there is no Capability "fan Speed Control".
- Still... it isn't impossible for us to consider allowing certain pre-set points or "snap-to's" for the dimmer slider or some variation on that concept.
Evidently I'm using custom DTH @ JCDEVHandlers . It's been so long since I set it up I assumed it was stock ST.
So Device is certified but non-stock DTH.
"Non-stock DTH" makes it a "non-WWST" Certified Device Instance.
As Alex says, "low, medium, high" points for setLevel (i.e., dimmers) would probably be applicable to Fan Control. But, as I said... It would be great if SmartThings first or also created: Capability Fan Control.
There were requests for generic Low/Medium/High presets, which I think is a great idea. I don't know if that would be compatible with the fan though...
Thanks Alex. It's not actually the fan that's enabled. It's more of the GE Fan Control Switch which regulates the fan speed.
I also use the GE Fan DTH for one of my fans. Also just added the Hampton Bay Zigbee Fan controller today with DTH dalec is working on (Hampton Bay Zigbee Ceiling Fan/Light Controller) https://community.smartthings.com/t/beta-v0515-hampton-bay-zigbee-ceiling-fan-light-controller/85084
This handles speed "oddly" I know it will likely get pushed down on the list, but I wanted to get it on the list.
i also use two ge fan controllers and this custom dth for smartthings, it would be nice to have the lo/med/hi options for the switch
Please don't bother with "me too" or "+1" comments. Comments are only required if your use case is significantly different, or if you have a related but different idea then the OP.
The main thing that affects our perception of Customers' value of a Feature Request or Bug are Topic Votes .
Thank-you!
...Terry.
I'm working on a handler to control the QuietCool Whole House Fan WiFi Hub (https://quietcoolsystems.com/products/wi-fi-smart-control/). I too would like to see the Fan Speed implemented. I saw the capability in the dev docs at SmartThings here...
http://docs.smartthings.com/en/latest/capabilities-reference.html#fan-speed
Did I miss something?
Thanks
Hi tennr,
SmartThings adds/defines new Capabilities from time to time, without any public notification. I haven't check the documentation change control to see exactly when "Fan Speed" was added - regardless, thanks for pointing this out. Having an official Capability definition is the first step to have us consider adding a Tile Type for it.
This new "Fan Speed" Capability, however, does not align the OP's request for a "low", "medium", "high" type of control; instead, it is much more suited to a dimmer slider ... because the Attribute and Command takes a NUMBER not a discrete speed description.
Don’t know if this thread is still alive, although apparent AT still doesn’t have fan speed support. In any event, the fanSpeed attribute referenced above does take a number, but it is 1, 2 or 3, representing low, medium and high speeds respectively. Shouldn’t be too hard to incorporate into a fan tile UI...
Hi Mark,
How do you know that it's 1-3? I couldn't find this information in the documentation.
Alex
In fairness, I didn’t get that from a spec - merely by observing how my fan controllers (GE Smart Fan Controls) work and how the fanSpeed attribute is set & changed as those controllers are used. While I can’t absolutely guarantee that all z-wave fan controllers will use fanSpeed in the same manner, GE is a pretty mainstream brand, so it seems likely that other controllers will follow the same pattern.
By the way, my GE controllers also set the fanSpeed state to 0 when the fan is turned off (so the full range of values is 0-3). There are some 4-speed controllers on the market, but hopefully those would just range from 0-4.
For what it's worth, I think there is a way to get Low, Medium, High for a fan control, but I havent proven out the last piece. It works like this:
- Get a Harmony Hub Remote
- From Harmony app, add Smartthings Hub so Harmony can see your fan switch.
- Setup Activities called Fan-Low, Fan-Medium, and Fan-High that set your fan switch to the appropriate levels
- (This is where I have left it up until now, I just use buttons on my Harmony to change it. But it seems like you should then be able to....)
- From SmartThings, add the Harmony Hub
- Setup Virtual Switches to activate Harmony Activities.
Honestly, that’s clever but seems like a very roundabout way to accomplish something you can do natively in SmartThings with an automation tool like WebCoRE.
Besides, this doesn’t really fix the root issue here, which is that ActionTiles doesn’t recognize fan control devices...
Capability "Fan Speed" is still marked as "proposed", which makes us hesitate to spend effort to implement it, as it might be radically changed: https://smartthings.developer.samsung.com/docs/api-ref/capabilities.html#Fan-Speed
I'm not sure what steps SmartThings goes through (and how long it takes) for them to move a Capability out of the "proposed" status to something else.
Perhaps it is in the "proposed" status because it is so poorly defined. The speed is supposed to be a NUMBER - and the specs say it is a minimum of 0 (zero), but no maximum.
So is speed (NUMBER):
- A value from 0 to 100 representing the percentage of maximum speed?
- A value from 0 to infinity to set the number of revolutions per minute (rpm)?
- A value from 0 to 3, or 0 to 4, to set off, low, medium, high?
The last possibility is the least likely: Because the proper implementation of an Attribute with enumerated distinct string values is ENUM, as in: switch(on,off); or fanSpeed(off,low,medium,high,auto).
I just realized I wrote this exact same Answer a year ago. The fact is, the situation has not changed. The only "Fan Speed" Capability that exists, takes an unbounded NUMBER, and there has been no update from SmartThings to define what the number's domain is.
...Terry.
I understand your trepidation about moving forward with this given the lack of a clear specification, but I'll try one more time, because while SmartThings has not published clear docs, they have made a pretty clear statement in the form of their own internal UI. Specifically, the SmartThings default UI for generic fan devices definitely interprets integer values of the fanSpeed attribute (0,1,2,3) as (off, low, medium, high):
One other option you could entertain, if the above isn't sufficiently definitive, would be to make the mapping between text labels (e.g. low/medium/high) and fanSpeed values configurable. This would be more effort, obviously, but it might also be a useful feature for conventional dimmers as well - i.e. you could map certain dimmer values or ranges to a text description, and potentially enable one-click access to those values.
I appreciate your persistence and suggestions, Mark, and we'll take them into consideration.
I do have to point out that just because SmartThings has published a Device Type Handler with particular characteristics, it doesn't mean they are setting a precedent or "making a clear statement":
They have, in fact, published many non-conformant Device Type Handlers. This is because the group responsible to "Just get it done!" for a particular partner vendor or vendors, is under far too much time pressure to waste effort dealing with the politics of the group that sets and documents the standards. We're no longer surprised by this - it's a very, very big company.
So no further steps to help manage Fan Control with Action Tiles??? Not sure where to go here and how to move forward with using the platform if you have zero option for managing fans??
I may be misunderstanding what you mean by "zero option for managing fans" but I am using ActionTiles with my fans without a problem. The three dot menu in the lower right of the tile will bring up a dimmer control. It isn't as easy as having low, medium, and high buttons but it does work. I just tested this with a fan in my setup. Using the Smartthings app I pressed High, Medium, Low, and Off. I get the following dimmer values in Action Tiles. High=100, Medium=66, Low=32, Off=0. When using the ActionTiles slider, 0 sets fan to off, any value 1 to 32 sets fan to Low, any value 33 to 66 sets fan to medium, any value 67 to 100 sets fan to high. Using this information you see that you don't need to be exact in your slider usage.
So, I am starting to migrate to Hubitat (ST is just too broke for me and has too many issues continually) and noticed in my exploration for an Actiontile replacement that Sharp Tools has implemented a FAN control tile. Basically it implements the 3 speeds like the ST device handler. However, I noticed during my exploration that Actiontiles has a Beta for Hubitat so I am still here :-).
I ended up using three virtual switches via Webcore to set the speeds appropriately. Not as clean as a single tile but it works 'ok'. A single tile would be very nice ...
Customer support service by UserEcho
Capability "Fan Speed" is still marked as "proposed", which makes us hesitate to spend effort to implement it, as it might be radically changed: https://smartthings.developer.samsung.com/docs/api-ref/capabilities.html#Fan-Speed
I'm not sure what steps SmartThings goes through (and how long it takes) for them to move a Capability out of the "proposed" status to something else.
Perhaps it is in the "proposed" status because it is so poorly defined. The speed is supposed to be a NUMBER - and the specs say it is a minimum of 0 (zero), but no maximum.
So is speed (NUMBER):
The last possibility is the least likely: Because the proper implementation of an Attribute with enumerated distinct string values is ENUM, as in: switch(on,off); or fanSpeed(off,low,medium,high,auto).
I just realized I wrote this exact same Answer a year ago. The fact is, the situation has not changed. The only "Fan Speed" Capability that exists, takes an unbounded NUMBER, and there has been no update from SmartThings to define what the number's domain is.
...Terry.
Hi tennr,
SmartThings adds/defines new Capabilities from time to time, without any public notification. I haven't check the documentation change control to see exactly when "Fan Speed" was added - regardless, thanks for pointing this out. Having an official Capability definition is the first step to have us consider adding a Tile Type for it.
This new "Fan Speed" Capability, however, does not align the OP's request for a "low", "medium", "high" type of control; instead, it is much more suited to a dimmer slider ... because the Attribute and Command takes a NUMBER not a discrete speed description.