Idiots guide to getting an esp32 to control AC Infinity Cloudline EC fans esphome/HA

sle118

Member
Hi guys,

I'm not a EE, I only know basic electronics, but I want to be able to control the speed of a S8 fan that I got this year (UIS connector). It has a manual speed controller but I want to be able to control the speed with either EPS32 or Arduino, and eventually integrate it into Home Assistant.

I tried to read this thread in its entirety but due to my limited EE knowledge, it's hard to follow. Can someone more knowledgeable summarize the key learnings please? I think what I got from it is that it uses a 10V PWM, at perhaps 5000 HZ. I know a little bit about MOSFET and PWM. I wonder what's the simplest circuit I can build to do this? Moreover, there's some historical changes between the MOLEX connector and the UIS which further makes this thread hard to follow.

Is it possible to achieve what I need without messing with the circuitry/wires inside the fan electronic box? In other words, just build an external DIY controller that connects to the fan using UIS (or USB-C?).

Someone please make it a truly idiot's guide. Thanks
You got it right. I'm sure you can achieve control without needing with wires, but you'd have to confirm the pins on the connector.

PWM is 4,156hz on my S4. See my measured trace here at various duty cycles:


The fans are likely tolerant to some level of deviations, though, and it is also possible that other models have slightly different frequencies but unless someone plugs in a scope of other models, your guess is as good as mine.

Your best bet is to at least open the fan case to peek inside and see for yourself what connections are there. @ImaginaryTango posted a nice picture of his unit and this is likely resembling yours as well.

My take on the base circuit is here.

You can skip the fuse if you feel lucky. You can also skip the tachometer gpio too, although it's simple to add and brings interesting stats back.
 
Last edited:

engineheat

New Member
You got it right. I'm sure you can achieve control without needing with wires, but you'd have to confirm the pins on the connector.

PWM is 4,156hz on my S4. See my measured trace here at various duty cycles:


The fans are likely tolerant to some level of deviations, though, and it is also possible that other models have slightly different frequencies but unless someone plugs in a scope of other models, your guess is as good as mine.

Your best bet is to at least open the fan case to peek inside and see for yourself what connections are there. @ImaginaryTango posted a nice picture of his unit and this is likely resembling yours as well.

My take on the base circuit is here.

You can skip the fuse if you feel lucky. You can also skip the tachometer gpio too, although it's simple to add and brings interesting stats back.
Thanks. I did read that someone was able to build a controller without modifying the internal electronics of the fan, such that they can still use the AC Infinity manual controller if needed. I also read that there is a 10V line inside and the PWM is coming off that. That 10V is DC, so is the motor actually a DC motor despite the S series being AC (in the sense you plug it into 110 - 220V AC)? Or is the 10V just for PWM?

It also seems like there the 10V for the PWM is being pulled up, such that when there is no controller connected, the fan is at full speed, and the purpose of the controller is to short it to ground in a periodic manner to achieve PWM. Did I understand it correctly?
Thanks
 

sle118

Member
Thanks. I did read that someone was able to build a controller without modifying the internal electronics of the fan, such that they can still use the AC Infinity manual controller if needed. I also read that there is a 10V line inside and the PWM is coming off that. That 10V is DC, so is the motor actually a DC motor despite the S series being AC (in the sense you plug it into 110 - 220V AC)? Or is the 10V just for PWM?

It also seems like there the 10V for the PWM is being pulled up, such that when there is no controller connected, the fan is at full speed, and the purpose of the controller is to short it to ground in a periodic manner to achieve PWM. Did I understand it correctly?
Thanks
Yes you understood correctly. None of the suggestions here modify the inner circuit of the fan. Opening the fan cover merely gives you a different access to the wiring. Sending a PWM is a substitute for the out of the box controller. My post with scope captures were taken from the controller that came with the fan.
 
I had to set this aside to get some other work done, and now I'm finally able to get back to it. I want to be sure I'm doing things right before I hook my ESP32 up to the fans. I bought a low end o-scope and used it to verify the square wave signal from the ESP32. So, for immediate questions, I mainly want to know about the wiring. I'm using the wiring diagram from the top of the compartment on the AC Infinity fans:
IMG_2716-Smaller.png
(Note, to avoid confusion, earlier we determined PE is Power Earth, or the ground line in the AC cord and FG is Frame Ground, or the ground for the device. I refer to it as Fan Ground in a diagram - my mistake there!)

I'm using, as reference, the wiring photo from the first post on the thread. It looks to me like this is how I should wire the MOSFET:
MOSFE-Smaller.png
Can someone please verify for me thta I have the write wiring diagram for this?

Also, I see different valued resistors in the PWM OUT line from the ESP32 (I'm using GPIO4 for this). This is the same MOSFET everyone seems to be using (but without a screw terminal for the GND and TRIG lines. Do I need a resistor there, on the yellow line on the right, that runs from the ESP32 GPI4 to the TRIG on the MOSFET?

If I have this all correct and can make it work, then I have a few other questions. I've brought this issue up before, but I don't see an answer to it. With this particular setup, I want to control 2 fans and, of course, if I can do it with one ESP32, that'd save cost and setup time (and maintenence in the long run, keeping up 1 controller instead of 2).

If I'm using one ESP32 to control more than one fan, can I tie the ground lines from all the fans together? I would think, since they're all powered on the same AC circuit (all on the same breaker), they'll all have the sme PE, so it shouldn't be a problem. But, there's also the issue of the +10V lines from the fans. Can I tie them together, as well? I would think so, but I'd rather hear from someone who knows what they're talking about than trust my limited experience in this. I've seen discussion about using the +10V line from the fan to power the ESP32. That'd be quite useful! I would think just using the line from the 1st fan would do that, but I'm wondering if there would be an issue drawing power from only 1 fan out of 2 or more.

One reason I'm looking at this is I'm thinking of making a circuit board that would go in a box, like the original fan controller, and it'd hook up to the fan through the USB-C cable that is used for the original controller. That includes a +10V power supply on the USB connectors. If I could use that for power, there'd be no need for an AC adaptor to power the ESP32.
 
Top