QuietCool Whole House Fan (RF "glass" remote) integration

Hi all,

I just installed a QuietCool whole house fan and was disappointed that I wasn't able to easily integrate it into Home Assistant. So I did what any nerd trying to avoid real work would do and fired up URH and reverse engineered the remote's RF protocol to build an ESPHome controller for it.

The entire process and sample component YAML are documented in my git repo.

I used an ESP32 and a CC1101 radio module (both available from lots of places online for less than $10 USD each) and was able to get it to work using the stock components in ESPHome (CC1101 and Template Fan) and also provided the code to the Arduino proof-of-concept.

Major kudos to Caleb Crome who reverse engineered an older version and got me heading down the right path.

Happy to answer any questions if you have them!

Cheers,
-Thadd

4 Likes

Hi there, I’m excited to see this as I just picked up one of these: https://www.athom.tech/blank-1/esphome-rf433-ir-remote-controller, and I attempted hacking the RF signals but failed in my attempts.

Any idea if your code could be adapted for this controller?

There’s a good chance it can. I have a generic 433 radio and I’ll do some testing. It might need a custom component though.

Wow. I have been checking quietcools website for YEARS waiting for this functionality. Nice work thadd. Thank you so much!

Really easy to set up. Highly recommend

1 Like

Hi @thadd I just want to say thanks for contributing your work on this.

I've managed to get it booting and got my remote id but it does not seem able to turn the fan on or off.

You mention in your repo your friend having the non-eco model. That may be what mine is. Do you happen to know what changes are needed to get it working on his model?

EDIT: Based on your screenshots stating that your friend's signal capture was a higher frequency I tried this:

cc1101:
  cs_pin: 4
  gdo0_pin: 3
  frequency: 433.94MHz

Now it works! :smiley:

1 Like

Glad you got it working! It’s probably not a difference between the models but with the centering on the CC1101 chips. I read some folks had to tweak the target frequency a bit to get things to work so I’ll make a note of trying that in docs in case other run into the same issue.

Thanks for testing it and figuring that out!

1 Like

I've been searching for a year for a way to automate my whole house fan with the QuietCool glass remote, thank you for putting this together. It grabbed my remote ID immediately after flashing but wasn't able to successfully send commands out of the box. Taking a cue from this discussion thread I started incrementing the frequency and landed on a working solution after a couple tries.

cc1101:
  cs_pin: 15
  gdo0_pin: 5
  frequency: 433.96MHz
1 Like

Thanks for the feedback and I'm glad you got it working!

I've updated the repo with instructions for setting the frequency so others won't have to hunt for it.

I also added some lambdas in the on and off triggers to accommodate the fact that the fan turns on to high speed even if you turn it off from low.

It might be useful to have the other verified frequencies listed but commented out in the component.yaml file:

  frequency: 433.92MHz
#  frequency: 433.94MHz
#  frequency: 433.96MHz
1 Like

Good call, updated!

1 Like

Thank you for this! I literly just installed my fan last weekend and was activly trying to reverse engineer the packet. You saved me a lot of time!

1 Like