Controlling a Minka Aire fan using rfcat, MQTT, and HA

I used a series of software tools and hardware, both RTL-SDR and the Yard Stick One, to reverse engineer the remote control commands for a Minka Aire ceiling fan. This allows me to automate controlling the fan in HA.

Here is the code and description:
idatum/labrfcat (


Thanks so much for posting this. I have two Minka fans and do not want to pay for a third-party device to control it. I read through your readme and code and have a couple questions if you don’t mind.

Can you expand a little more on the device running the YARD Stick? Is this some linux box you have the YARD stick plugged into, or do you have the YARD plugged into your HomeAssistant? I’d love to cut down on yet another device and ideally plug directly it into my HomeAssistant RPi (Supervised), but if not I can use a separate RPi.

Are SW8 and SW9 unique to every remote? Is that my remote’s “signature” that the fan is looking for?

I’m going to give it a go in the next couple weeks. Very well written code, thanks for sharing!

Glad you’re giving it a try.

I have the Yard Stick One connected to an old PC that I converted to a Debian server. It’s the same server I run Docker. Docker runs my Home Assistant, Mosquitto, and a few other custom containers.

I think your HomeAssistant RPi should be fine. In fact, I used an RPi3 to develop and test my code.

Yes, the SW8 and SW9 switch settings on the remote need to be paired with your fan. There are steps you take for pairing. If you have a separate remote for each fan, you can simply set the --sw8 and --sw9 arguments to match each remote paired with a fan.

I have a simple daemon running that subscribes to MQTT and passes the message values onto the arguments. You should be able to send which fan you want to control via an MQTT message. I only have one fan :slight_smile:

1 Like