31 speed fan - HA control

So I have a 31 speed fan from Fanimation. I saw another post from 2019 about the same topic. Any ideas on how to unlock those speeds. I use Home Assistant and I have some scripting that should basically ramp the fan up and down based on trends (time to temp). Any ideas?

I wonder if @merck meant (in the future perhaps) a person could PATCH the properties of the fan device to have more speeds?
Since the documentation says max_speed is read only, not sure how that would be set in the current state.

I don’t know. I’m still trying to learn the appropriate syntax to bring the speed up by 1 notch. Ugghh.

I don’t use Home Assistant, but in any case I always try the raw commands first before translating to my control system syntax.

curl -H "BOND-Token: xxxxxxxxxxxxxxxx" -i http://aaa.aaa.aaa.aaaa/v2/devices/zzzzzzzz/actions/IncreaseSpeed -X PUT -d "{\"argument\": 1}"

where x is Token, a is IP address, and z is device ID.

Worked perfectly. I may be able to call simple increase/decrease speed calls to make this work. I don’t want the fan making sudden changes. Only slight adjustments to match a trend

1 Like

Strange though… Once the fan is running on the initial increase speed of 1, it’s not reacting to further bumps in speed.

Glad to hear it!

Don’t forget to check out the examples sprinkled through the documentation.
Used the same basic idea as the SetSpeed action, just adapted for the IncreaseSpeed action instead.

I’ve been curious how those 31 speeds work - and wonder if the speeds have discrete commands for each speed and/or if the OEM remote sends packets of the entire state of the fan (and light?).

Hopefully with some playing around you can get some more desirable results. Keep us posted :slightly_smiling_face:

That’s the golden question. For instance, SetSpeed 1… threw the fan into high. But IncreaseSpeed 1 from off…brought it up to low speed.

The exact remote isn’t stored in the Bond App. So, you’re stuck with making a manual config. But, one would think that a simple up level of speed would be a simple up level of speed

:grimacing: it may be one of the fans that works best when beginning the recording of the OEM remote in the Bridge, the fan was last set at max or min.

You can always record a NEW device (rather than deleting the one you have that sort of works) to test.

Do you mind posting a picture of the remote? Or mentioning the Fanimation model? I’m just curious, personally - and the Bond staff may have some additional ideas if they pop in this thread and see it.

The remote is KUJCE10711


So, explain the setup with min/max settings you just referenced. That’s interesting.

model is the Fanimation Covert

Thanks, I had just finally found a picture on HomeDepot that looks like the FCC one you linked.

As far as the min/max spitballing idea - there are some devices ( a fireplace that was being mentioned in recent threads, and I think a fan from some time before that I can’t find now, of course ) where the initial state of the device was important when recording the commands.
These are typically from state-aware or state-packet remotes.

My only experience with Fanimation fans has been their 6 speed DC motor fans, and those had discrete signals for speeds 1 - 6, which also had discrete buttons for each speed on their remote.
I am theorizing it is possible that the OEM remote keeps track of speed even when you’re literally only pressing speed up or down (internally going, I was at speed 25, the user pressed speed up button, so send speed 26 command to the fan receiver).
If that is the case, then with 4 separate fan devices in BOND, it may be possible to set speeds 1-9 of BridgeFanA to 1-9 of actual fan, speeds 1-9 of BridgeFanB to 10-18 of actual fan, speeds 1-9 of BridgeFanC to 19-27 of actual fan, and speeds 1-4 of BridgeFanD to 28-31 of actual fan.
Then in Home Assistant, I’m sure you can track a speed variable yourself and say, if speed needs to +/- 1 and that result is 1-9, send commands to BridgeFanA, or if the result is 10-18, send commands to BridgeFanB, and so on.

Of course, there are two things to consider:
(a) My late night spitballing might not even be remotely (haha) correct about how the OEM remote may be functioning. It could be sending a plain Speed Up or Slow Down command, and Bond is just struggling with it somehow else.
(b) if I am right and the remote is keeping track itself of the current speed, it’s going to be impossible to keep using the OEM remote at the same time as Home Assistant / Bond Bridge, if you want them to be in sync.

I’m going to have to read this again in the morning, maybe twice. So, you’re saying… have 4 separate instances within Bond (remote 1-4)?

I just got my fan working on a 6 speed template remote, it’s a start. I’m not sure how I’d unlock those other notches of power.

I’ll keep tweaking on IncreaseSpeed now that my automated fan setup has 6 speeds to choose from. I’m hoping it just simply sends an IncreaseSpeed call each time. My Bond’s reception to the fan isn’t perfect, I’ve seen it miss a couple of calls and grab them on the second push.

Well, you cannot PATCH properties.max_speed, but you can POST new SetSpeed commands with higher arguments. For raw recorded devices, the max_speed property is simply derived from maximum speed in the list of commands.

1 Like

I see we have an open engineering ticket on this remote. I’ll check what the status is today.

That would be great. As we said above, I can get the fan started via the local API IncreaseSpeed call, but once it’s running… it doesn’t appear to want to change. I’m using a 6 speed config suggestion that’s working for now. But id much rather have 31 speeds to play with.

Well, nothing new. The local API only likes IncreaseSpeed as a way to turn the fan on and keep it at speed 1. What a shame.