SmartThings Community

[RELEASE] 3 Speed Ceiling Fan Thermostat



Thanks for putting in the time to get this cool app up and running. I am new to all this. I have a GE 12730 switch and was using it with the device handler jscgs350 : My GE Fan Control Switch and that works well. ( it was only a week ago and my first customer handler). I came across you post and have a Aeon Labs MultiSensor 6 and the 12730 fan switch to changed my device handler to your recommended ChadCK : Z-Wave Smart Fan Control. I have added your code to My SmartApp seciont
configured as follows for Version:1.0.160603

Location: Home
Temperature Sensor: Physical Device :Aeon Labs MultiSensor 6
Fan Control Device: Physical Device : GE12730
Room Setpoint Temp: 75
Fan Differential Temp: "default"
Motion Device: "blank"
Enable Ceiling Fan Thermostat?: "default"
Assign a Name: FamilyRoomFan
Mode: “blank”

The error I get is as follows

grails.validation.ValidationException: Validation Error(s) occurred during save():

Field error in object ‘’ on
field ‘name’: rejected value []; codes
arguments [name,class]; default
message [{0} cannot be blank]

Any guidance on what I am doing wrong or where to look.

And again Thanks for creating the app.


Error troubleshooting
(Dale C) #22

My smartapp won’t work for your use case but there is a solution for you. Since you only have on-off control without multi-speeds you could use the basic Virtual Thermostat . You will find it on your SmartThings mobile app in the Marketplace section under Climate Control.

(Dale C) #23

Just to make sure, my smartapp is loaded on your phone, correct? Sometimes it is easy to forget where you are in the IDE when you are working with device handler code @ChadCK versus the smartapp code that I did. Make sure you are in the “My SmartApps” of the IDE when saving my Thermostat code and in the “My Device Handlers” of the IDE when saving the device code.

I haven’t seen that error before. Just to be sure, your temp input from the Aeon Labs MultiSensor 6 is reporting a temperature in its default configuration when viewed from the mobile app? And the same with your GE 12730 switch, does it control manually now through each of the speeds when you have the device up on your mobile app. I have these exact same hardware devices and the smartapp definitely works with them. And the error is the smartapp is not saving the configuration or it is saving the configuration but it is not controlling the fan.

(Bob) #24

Thanks for your information and questions. I need to make some decisions of what control I need. I will try your app and see how it works. Sorry if i don’t get back and give you an update.

(Dale C) #25

No worries Bob. Just trying to help. :slight_smile:

FYI, you accidentally posted your reply here in the wrong thread instead of where your original post is at.

(Midhun) #26

I love this app design and going to set it up.
On qn.
Does it have any timer feature? Or any plans to include? Or is there any app you can suggest which will work well with this. My use case: Stop the fan after 4/5 hours as typically here in Colorado, the temp drops to comfortable almost always during midnight.

(Dale C) #27

I think that is an interesting idea to add the feature but I need to understand a little more detail.

I am in Albuquerque and the same occurs where it gets comfortable during the night. But that is why built the smartapp so that it would automatically turn off the fan when it got temperature comfortable.

So are you NOT wanting to use a temperature sensor to control the speeds of the fan? Or are you wanting to add a stop timer after the temperature sensor has been controlling it for the 4/5 hours regardless of the lack of comfort from a high temp? Remember the fan will turn off as soon as it reaches setpoint regardless of time so you see my confusion.


Agreed on this use-case. A timer for when its on AUTO vs OFF would be cool!

(Dale C) #29

Be more specific please on exactly the use case.

The timer needs to act how?

  • You have AUTO for temperature control and a totally different operational mode TIMER control that turns the Fan on and keeps it on until the Timer times out regardless of temperature?

  • Or are you saying when I am in AUTO mode controlling by temperature I want to be able to stop AUTO control after the TIMER times out? I think this is what you all are talking about but I just need to make sure of the use case


I could see it being used as:

For the next 4 hours run AUTO mode
For the next 2 hours run OFF mode

The second would actually be better for those times you come in from the hot FL sun and want the ceiling fan to crank up to full (and essentially override the AUTO mode) - I use an “OVERRIDE” home mode now to accomplish this. But to have it in the app would be nice.

(James) #31

This would be a great addition. My wife and I have had a few nights recently where the temp is below our auto setting but we had to get up and attend to our daughter. This raised our heart rate and when we lie back in bed, we are hot and need a cool off. I turn on the fan but two seconds later it shuts off. A 30 minute override would be ideal.
I had considered working on a piston in CoRE to do this, but why add complications if it can be handled in the app. Of course not being a coder, I have no idea what it takes to implement this. :slight_smile:


Does anyone have an alternative to this app that they are using? Too many times over the last few days I’ve noticed the fans not on, when the sensors are clearly reporting movement and temp that should be triggering the fan? I guess CORE could do it?

(Dale C) #33

Something is going on for sure causing erratic behavior. I am in process trying to isolate why because things had been fine…

(Scott Shell) #34

I had an issue with the fan not working properly for a day but it turned out to be because the Netatmo Connect link I was using to get the temperature in that room had broken.

I have an alternative temperature sensor in the room and have switched to that… and it seems to be working again now.

(Dale C) #35

It is a weird non-consistent issue… right now with me it has been the SmartThings temp sensor? SmartThings is a hard one to troubleshoot when the system is behaving poorly.

(Scott Shell) #36

I’ve had a number of my Zigbee sensors (SmartThings Motion Sensors) fall off the network although I usually notice because lights or other things don’t turn on properly.

And a lot of my rountines are not working right (especially the one that changes the SHM state from Arm Stay to Disarm in the morning).

So far the sensor in my Master Bedroom is working right although it seems to be a few degrees lower than the Netatmo Indoor Module is reporting (that is easily adjusted however).

(Kevin) #37

SmartThings rolled back an update recently and it caused some state related corruption issues so it’s possible that removing the SmartApp and installing a clean copy will fix the problems.


Thanks for the suggestions. I tried to reload the app after removing it. Didn’t seem to help - one key indicator is the 3 Speed Fan app is still controlling the fan even in Off mode in the settings in the app. Should only work in AUTO I thought (and used to work this way)

(JC) #39

Hi all - I’m a ST Noob and enjoying adding all the gadgets to the house to automate everything. I really like this SmartApp and have been using it with no problems for my family room fan.

I would also like to control my bedroom fan with the same automation, but it seems only one fan is supported. Are there any plans to control multiple fans with this software?

In my perfect world, this app would allow for rules for each fan (Setpoint Temp, Differential Temp) that could be controlled by either the thermostat or (better yet) a temp sensor in the room where the fan is located. This might be beyond the scope of this project and I’m happy with the functionality as is.

I have added the app twice (renamed the second install) to control my second fan, but it would be cleaner to be able to control both with the one install.

Thank you Dale for sharing this code for the community!

(Scott Shell) #40

It should be possible to merely install a second instance of the SmartApp and select the other fan.

I have two instances of the app running that control a single fan in my bedroom and operate differently. (the Awake fan requires movement to operate and has a slightly higher set temp).

The sleeping fan doesn’t require movement.