My fan worked fine, so I gave it WiFi

(ellis.codes)

72 points | by woolywonder 6 days ago ago

19 comments

  • jonhohle 5 minutes ago ago

    This is amazingly cool. Did you consider putting a rotary encoder on the PCB to maintain local control over the speed?

  • IvyMike 26 minutes ago ago

    I've been toying with a variant of this project for my Honeywell home air filters. I have one in all my "big" rooms, and I like to keep them running at a low speed most of the day.

    But I also have time-of-day energy pricing, and it would be nice to automatically turn off (or at least slow) my air filters during the 5pm-8pm window. This project inspires me to at least look into the feasibility of adding that functionality myself.

    • NegativeLatency 7 minutes ago ago

      Depending on your air filter you might be able to just use a smart plug, I went down a similar route this summer before realizing that mine would remember their power state and settings when powered off.

      So now I just have them plugged into a few smart plugs with automations in homeassistant

  • supportengineer 8 minutes ago ago

    The next step would be to monetize it with ads, and put some of the features behind a monthly subscription.

    Premium oscillation package, only $9.99 a month.

  • NegativeLatency an hour ago ago

    ESPHome and homeassistant have been really great, just like a nice breath of fresh air in a world of cloud saas stuff.

  • hnuser123456 an hour ago ago

    I actually like this idea. Makes more sense than smart fridges. Would be cool if this ESPHome thing worked with RP2350/Rpi Pico 2.

    • moffkalast 21 minutes ago ago

      Could tie it to a thermometer and turn it on automatically on hot days. Very cool.

  • 05 44 minutes ago ago

    Why is there level conversion though if the digipot (MCP4141) is 2.7V to 5.5V?

    Personally I'd just use breadboard, it's just a 8 pin IC and a ESP module, for a one-off hack..

    • announcer4614 37 minutes ago ago

      Hey, author here. There's a line in the digipot datasheet that says the voltage on the A/B/W pins must be within -0.3V to VDD + 0.3V. The fan's line for the wiper pin is 5V, which would fall well outside of that if I gave the digipot's VDD 3.3V.

      • 05 30 minutes ago ago

        Thanks. Thinking more about that, might have been easier to just use 5V tolerant esp8266 :)

        • announcer4614 15 minutes ago ago

          Fair point, I hadn't thought to consider that aspect of the ESP8266. I mainly opted for the shiny new ESP32-C6 with the idea that I might one day set it up to use Thread instead of WiFi.

  • ttshaw1 an hour ago ago

    I don't like the notion of doing speed control by putting a digipot in series with a motor. It worked because the fan happened to be low enough power but it doesn't seem like the author gave thought to the power handling capability of the digipot. If the fan happened to be beefier he's letting the smoke out with this design.

    Plus, this is more complicated than just doing PWM.

    • _ihaque 41 minutes ago ago

      Based on the description of the wiring to the motor (24V, GND, POT1, POT2, NC), it doesn't sound like the original setup would have been drawing much power through the pot either -- there's probably something else on the other end of that wire that is doing modulation based on the sense resistance, and the motor is itself drawing power from the 24V line. So while it's true that there should be a check for the allowable limits on the digipot, I don't think it's actually being used to sink much power.

      • announcer4614 39 minutes ago ago

        Hey, author here. That's correct. The potentiometer has 5V going through it, with a current range of 30-164μA, which fell within limits of the digipot. I opted to use the digipot instead of my own PWM because something else must be doing PWM closer to the motor, where I didn't want to go modifying.

      • 05 38 minutes ago ago

        > there's probably something else on the other end of that wire that is doing modulation based on the sense resistance

        And it would have been great if that arbitrary assumption had been tested by the OP and the results were documented in the article so that they wouldn't come off as somewhat clueless as to the limitations of their design.. oh well.

        • anamexis 3 minutes ago ago

          From the HN guidelines:

          > Be kind. Don't be snarky. Converse curiously; don't cross-examine. Edit out swipes.

          > Don't be curmudgeonly. Thoughtful criticism is fine, but please don't be rigidly or generically negative.

  • uoaei 12 minutes ago ago

    I love upgrading simple home appliances with homebrew smarts using ESPHome so that they retain their original interface. I've mostly done lights that are still correctly switched at the original wall switches but up next is my fan and toaster oven! Then to tackle the thermostats.

  • kylehotchkiss an hour ago ago

    Oh no don’t tell vornado this is possible and give them an enshittificafion pathway for their products

    • Eric_WVGG 37 minutes ago ago

      IMO anything with unnecessary digital interfaces is already down the path.

      I have a Vornado fan that I would love to automate with a simple wifi-enabled plug, but due to the digital on/off/speed button, when you cut-off and restore power to the device, it stays off. If it had a dumb analog dial or switch, it would both be fine for normal use, and could be easily, cheaply made "smart."

      They do sell wifi-enabled fans; none of them are in a form factor that would fit in my window.

      I'm not even alone in this gripe, lots of other maniacs have done the hard work of conversions. Unfortunately I'm not confident enough in my soldering skills to try :\ https://www.reddit.com/r/electrical/comments/vaiskf/bypass_p...