Tutorial - How to control a PWM fan with an ESP32 and Home Assistant

Sdílet
Vložit
  • čas přidán 9. 07. 2024
  • A quick tutorial on how to remotely control a regular computer PWM fan with Home assistant and an ESP32 Micro-Controller.
    Components:
    ESP32: amzn.to/3uiLMC4
    USB Power Adapter: amzn.to/46hdAE9
    PWM Fan: amzn.to/46663bq
    Breadboard: amzn.to/3METMUm
    Jumper Wires: amzn.to/46fO1Dw
    DC Connector: amzn.to/3MGCciG
    (As an Amazon Associate, I earn from qualifying purchases)
    CODE:
    sensor:
    - platform: pulse_counter
    pin: GPIO13
    name: PWM Fan RPM
    id: fan_pulse
    unit_of_measurement: 'RPM'
    filters:
    - multiply: 0.5
    count_mode:
    rising_edge: INCREMENT
    falling_edge: DISABLE
    update_interval: 3s
    output:
    - platform: ledc
    pin: GPIO12
    frequency: 10000 Hz
    id: fanhub_pwm
    fan:
    - platform: speed
    output: fanhub_pwm
    name: "PWM Fan"
    🔥These links support my madness🔥
    💲 NordVPN: www.bmbsucks.com
    💲 Members-Only Punishment: bit.ly/bmbmembers
    💯These are my other Socials💯
    🔹Twitter: bit.ly/BMBTw
    🔹Instagram: bit.ly/bmbinstagram
    🔹Tik-Tok: bit.ly/bmbtock
    🔹Discord: bit.ly/BMBDISCORD
    ✉️P.O. Box for Mail✉️
    Byte My Bits
    P.O. Box 77
    Haysville, KS 67060
    00:00 Intro
    00:17 Components
    01:01 Need to know
    01:24 Plug In ESP32
    02:46 Edit Code
    03:46 Wire 12v Power
    04:32 3rd Pin Tach
    05:02 4th Pin PWM
    05:19 ESP32 Power
    05:53 Pre-Flight Check
    06:39 Plug In and control
    07:42 Can add more sensors
  • Věda a technologie

Komentáře • 84

  • @bigbigspoon
    @bigbigspoon Před rokem +9

    Yes more ESP and Home assistant tutorials please. Love this stuff.

  • @Timi7007
    @Timi7007 Před rokem +3

    This is such a clean video, I was almost waiting for stuff to go sideways the whole time 😂 Well explained, Jason!

  • @IsmaelLa
    @IsmaelLa Před rokem +6

    This could be the most easy ESP32 tutorial to follow out there. Dispelled a lot of mysteries for me with these devices and it's use. So much thanks!

  • @adfjasjhf
    @adfjasjhf Před rokem +4

    I'm still kind of a new to Home Assistant even though I have setup some automatizations already but WOW! This was simplest and easiest tutorial which I've seen. I'd love to see more content like this.

  • @victor2410
    @victor2410 Před rokem +3

    This video is like the old days of Plex tutorials. Nice tutorial video! Liking the new video bumper too!

  • @Anna-abc
    @Anna-abc Před rokem +8

    You managed to research and put everything together in a well thought out video. You know what, I say this honestly, I'm proud of how well you did this thing, knowing how things can easily get out of hand with your projects 😄 This looks really good, I'm happy for you. And thanks for the tutorial for others wanting to do the same thing, everything was easy to follow.

  • @ronsum232
    @ronsum232 Před rokem

    First of your vids I've come across... very well done!

  • @Ploughedcoconut
    @Ploughedcoconut Před 2 měsíci

    Exactly the tutorial I have been looking for and you executed the presentation excellently. Many thanks 🎉

  • @tombloemker9434
    @tombloemker9434 Před rokem

    I'm working on a solar fridge idea, the required fan in my prototype was one of that last pieces to address. I'm resolved to your serendipitous timeing and content as miracle from God.

  • @MrSuperSnuiter
    @MrSuperSnuiter Před 11 měsíci

    Awesome tutorial please make lots more. 😀

  • @MarcelodeSouzaSilva
    @MarcelodeSouzaSilva Před měsícem +1

    Great simple video! Please show the version with temperature sensor and automation... Thanks!

  • @Motomurphy
    @Motomurphy Před 11 měsíci

    perfect. never thought of doing this. thanks.

  • @val.lak4321
    @val.lak4321 Před rokem

    Thank you for this tutorial!

  • @Americancosworth
    @Americancosworth Před rokem +34

    This was shockingly professional...who are you and what did you do with Jason?!

    • @lonewolfgeoff
      @lonewolfgeoff Před rokem +3

      scarey! very prof indeed

    • @bigbigspoon
      @bigbigspoon Před rokem +4

      Who is Jason?

    • @Anna-abc
      @Anna-abc Před rokem +2

      I know right, it almost felt weird! But this just confirms he can do things really well when he's in the right state of mind, but not all the time, which results in unfinished things and chaos. It's a very familiar thing for me with ADHD.

  • @AshishRawal
    @AshishRawal Před rokem +4

    Great video! Very helpful. Have been looking for this to setup a cooling fan for my in-ceiling projector. Would really love to have the temperature sensor integrated in it. Would be a big help if you can make a short addendum video to this showing how to integrate the temperature sensor and the HA code too. 😊👍🏻

  • @Bianchi77
    @Bianchi77 Před 11 měsíci

    Creative video, well done, thanks for sharing it :)

  • @JamieStuff
    @JamieStuff Před rokem +4

    The first Jason + electricity video I've seen that didn't make me cringe... :)

  • @TechySpeaking
    @TechySpeaking Před rokem +8

    Wow, this is actually a really good video Jason.

    • @scubieman
      @scubieman Před rokem +2

      Better than a movie review

    • @bigbigspoon
      @bigbigspoon Před rokem +1

      @@scubieman How about spoon reviews?

    • @scubieman
      @scubieman Před rokem

      @@bigbigspoon all the love

  • @djlalorocks
    @djlalorocks Před 10 měsíci +3

    Would love to see how you incorporate the temp sensor! Great video, was just thinking how I would do this almost exactly!

  • @koevoet7288
    @koevoet7288 Před rokem +5

    Great explanation! I’d watch an entire series on esphome.
    Only thing that could be better imo is a bit more zoom when screencapturing

  • @elmonte7834
    @elmonte7834 Před 11 měsíci +1

    subscribed. thanks for good video

  • @dam_j4105
    @dam_j4105 Před rokem +8

    I NEED a temp / humidity upgrade to this. PLEASE!

    • @rikwisselink-bijker
      @rikwisselink-bijker Před 3 měsíci

      My vote would be a CO2 and humidity upgrade to this, so you can ramp up the fan when a room is humid and/or has high CO2 levels

  • @everythingquads
    @everythingquads Před 3 měsíci +2

    You need a voltage divider on the tacho pin to make the 12v pulse compatible with the 3.3v logic.

  • @Pro4TLZZ
    @Pro4TLZZ Před rokem

    I have no need for this video but it was great so i left a like

  • @mobi8138
    @mobi8138 Před 6 měsíci +1

    Yeah, let's see the temp sensor also. Thanks!

  • @rera1986
    @rera1986 Před rokem +7

    This video was the DEALbreaker for me, I’ve ordered som esp’s, and it will bee awesome, if you could show how the temperature sensor could bee in the installation also, it Will bee nice, then i will make it in ny network/server rack

  • @PWOODHAMS
    @PWOODHAMS Před 5 měsíci

    Love the diy esphome stuff. Please sir, may I have another.

  • @eclair4151
    @eclair4151 Před 5 měsíci +1

    Just a heads-up, you will need to make sure your fan actually accepts 3.3v for the PWM logic. Certain fans like Noctua require a 5v PWM signal, so you will need a 3.3v -> 5v I2C Logic Level Shifter

  • @nilsal7442
    @nilsal7442 Před 2 dny

    Wow! what an easy to follow and high-quality tutorial! Thanks this was exactly what i need 😊😁 would that also work with an 24v powered noctua fan? If i have the right stepdown converter?

  • @RonUSMC
    @RonUSMC Před 4 měsíci

    I followed the tutorial and the fan would do all kinds of powering up and down. I thought it was because the pwm voltage was low, but Noctua said that 3v pwm is fine. Then I finally read the warning at the beginning of the "logs" command in ESPHOME about GPIO12 being a pin you should avoid. I switched it to GPIO15, the 3rd post on the other side and it worked like a charm.

  • @bestgoprovideo
    @bestgoprovideo Před 9 měsíci

    Really nice tuto, thanks for sharing this with us. I would really appreciate another video about the temperature sensor integration. What is the name of the adaptor for connecting the DC connector to the breadboard?

  • @vonwerderc
    @vonwerderc Před 8 měsíci

    Fantastic video. Would this work with daisy-chained arctic P14 fans? I saw designs for making a corsi rosenthal box with pc fans instead of a box fan for more silent operation. This seems like an absolutely perfect implementation for powering the fans.

  • @hundsboog
    @hundsboog Před rokem

    Great great great!! Thank you for that video! Question: Is there a way to control an array of more fans as well? I mean not controlling one by one individually but that whole array? It is for blowing air against an area of an basement where mold gets up easily. Thank you!

  • @wilk36
    @wilk36 Před měsícem

    This is great for my mini pc home server/nas/router cabinet!! And u were saying we can add in a Temp sensor, my question is, since my HA is running on my mini pc server(pve), and HA can read the pc cpu temp, is it possible for HA to auto adjust the fan speed according to the temp of my mini pc?

  • @bigbronx
    @bigbronx Před 7 měsíci +2

    Isn't the PWM signal expected to be 5V? But the ESP32 outputs 3.3V right?
    Same with the rev counter signal coming from the fan, isn't that 12V? And you are putting that directly into the 3.3V ESP32, ain't that a bad idea?

  • @giollaliddy5817
    @giollaliddy5817 Před 3 měsíci

    great video. id like to do this project but have multiple fans (15 total). They dont need to be indivual speed control. If I wanted to connect multiple fans and have all speed controlled together as one fan. . . is it a case of using fans that can be daisy chaimed. . such as phanteks T30-120??? assuming of course that power supply is capable of enough amperage

  • @youham7066
    @youham7066 Před 8 měsíci +2

    Do we need to lower the tach pin down to 3.3V with two voltage dividers resistor? Does straight connect tach pin to esp32 safe?

  • @MyGoogleYoutube
    @MyGoogleYoutube Před rokem +1

    Could this be used to control a brushless 12v fan?

  • @lethuer
    @lethuer Před 9 měsíci +1

    Why you connected tachosignal directly to an esp gpio? If I‘m right tachosignal is a 12v pulse and max voltage for gpio pin is VDD (max 3.6v) + 0.3v… so you possibly could destroy the pin.

  • @RND-USA
    @RND-USA Před 3 měsíci

    Hi, this is so cool! Do you know if there are any Home Assistant or Homekit (or smart device) diy projects that support pwm for monochromatic LEDs that only have the two pins (ground and positive) and no data? I have some LED signs that only have about 120 leds on each one of them but they are super bright! I’m dying to use one of my extra microcontrollers. I bought some mosfet modules just in case I can find a project. Any thoughts would be very appreciated.

  • @lavacat720
    @lavacat720 Před rokem

    Are we nerds on the same brain wavelength? I was thinking about this yesterday and saw this today!

  • @nicolapevere968
    @nicolapevere968 Před 4 měsíci +1

    No pull up resistor?

  • @theusuario-pb5xk
    @theusuario-pb5xk Před 8 měsíci

    do yoy know if this can be done with a Wemos D1 mini or a esp8266?

  • @mrbeats4065
    @mrbeats4065 Před 2 měsíci

    and how does it work to make an own app that can be controlled via phone

  • @bestgoprovideo
    @bestgoprovideo Před 7 měsíci

    Does someone have a blueprint or an automation to make the RPM fluctuate in relation with the increase/decrease of a temperature sensor. (Just an idea for a future video)

  • @J0stik
    @J0stik Před 11 měsíci

    in next video can you tell us how to control L298N with esp32 in home assistant ? for example to control peristaltic pumps, and make very simple automation of dosing few ml of liquid ? would probably save my sanity ......

  • @martenkl-71
    @martenkl-71 Před 5 měsíci +1

    I am looking for any solution that follows PC-fan-specs which this sadly do not, the PWM clock should be @25kHz, anyone know if this is possible with ESP32?

  • @lordtyroxx
    @lordtyroxx Před 4 měsíci

    I’m guessing these computer fans don’t have the physical capability of running in reverse? I thought I could avoid my engineering jank just this once, but alas. Guess I’ll just have to manually flip the fan around if I want it blowing the other way for more flexible ventilation

  • @nathanwalledge368
    @nathanwalledge368 Před 9 měsíci

    My fan never fully turns off it slowly spins, at full ramp HA displays 55000 RPM?

  • @Gawkowy
    @Gawkowy Před 2 měsíci

    great tutorial!
    im tring to make fan control for rack cabinet. for me control of pwm is not possible :( i can only turn off and on. i see actual pwm value, it is always maximum 2400 rpm. when i move slider nothing happens.
    would be great to have also temperature controlled pwm fan!

    • @Gawkowy
      @Gawkowy Před 2 měsíci

      i found that there was missing "" in the code on frequency: "10000 Hz". but now rpm are fluctuating if i set other value than 100%. any help?

  • @user-oo1oy2qr5u
    @user-oo1oy2qr5u Před 8 měsíci +2

    Hi, I have a question. Why are you able to completely stop the fan? When I try to do that, the fan continues to run even when turned off. In other videos, they use a relay in between. Why does it work for you without one :-) Thanks

    • @ThomasKlinder
      @ThomasKlinder Před 8 měsíci

      In this video he doesn't show the relay. Without a relay, the fan continues to run at the minimum speed because with PWM control there is always 12V on the fan.

  • @g.s.3389
    @g.s.3389 Před 5 měsíci

    just one question:
    why? filters:
    - multiply: 0.5

  • @EmilePolka
    @EmilePolka Před rokem +3

    that 12v to 5v regulator is not needed, all ESP32 devboard comes with ASM1117 voltage regulator, it can accept 5v - 24v via VCC pin.

    • @Bytemybits
      @Bytemybits  Před rokem

      Well damn.. I thought they could only do 5v. 😂 oops

    •  Před 6 měsíci

      is that true for *ANY* ESP32? The internet seems to be not sure about this and you read a lot of "should work" :D

  • @elmonte7834
    @elmonte7834 Před 11 měsíci +1

    @bytemybits I followed your video and have added a esp32 to Home Assistant. I can see fan switch and rpm reading in my discovered entity. Changing fan speed works but off/on does not. What can I do to turn off the fan from HA?

    • @vanDyk101
      @vanDyk101 Před 11 měsíci

      @Bytemybits Same here. It always spins minimal speed when turned off.

    • @ThomasKlinder
      @ThomasKlinder Před 8 měsíci +1

      In this video he doesn't show the relay. Without a relay, the fan continues to run at the minimum speed because with PWM control there is always 12V on the fan.

    •  Před 6 měsíci +1

      @@ThomasKlinder in which video is the relay shown?

  • @keramssj3
    @keramssj3 Před 2 měsíci +1

    I can control my fan but I can't turn off :(

  • @moldo.cel.barbos
    @moldo.cel.barbos Před měsícem

    cant the VIN pin take up to 20v or so you wouldn't need any converting? Im a noob as well so this is a legit question not a corection

  • @MarkusBurrer
    @MarkusBurrer Před rokem +2

    The typical PWM ferquency for PWM fans like this is 25kHz. Maybe your 10kHz might be to low for some fans

  • @enriqueenrique-hd7zj
    @enriqueenrique-hd7zj Před 5 měsíci

    Dear friends, I have assembled two Noctua NF-A8 PWM fans and apparently everything works as expected. I can turn the fans on and off and change the speed all with an ESP32 without a TTL converter board.
    I have connected them directly, 12V power supply for the fans and the 2 control signals directly from the fans to the ESP32. I use 2 different power supplies, 5v for the esp32 and 12v for the fans. I have joined the gnd of both feeders together with that of the esp32 so that everything works ( It works more or less well, from 0% to 9% the fans are stopped and from 10% to 100% the speed varied perfectly, I don't understand this error range from 1% to 100% but it more or less meets my expectations )
    I have found a bug. While the fans are spinning, if I disconnect the power from the esp32 and reconnect it, the esp32 protects itself and does not start, the esp32 feeder making noise. I have to turn off the power to the fans, wait for the esp32 to start and then plug in the power to the esp32 and everything works fine again. Another option to solve the problem is to disconnect the Output pwm pin of the esp32, then the esp32 boots correctly. It seems that some noise is sneaking through the output control pin.
    It's not a big problem but it makes it impossible for me to use a single 12v power supply for the fans with a 12v to 5v converter to power the esp32. Has anyone had this problem and how to solve it?
    I would greatly appreciate the help. I have tried with some filtering capacitors connected from the output pwm to gnd pin but the operation of the fans varies although the esp32 starts correctly depending of the capacity of capacitors. Thanks everyone for your help. Kind regards

    • @petervidic1301
      @petervidic1301 Před 4 měsíci

      Did you solve this issue? I'm planning to assemble controller for 2 of my Noctua industrial pwm 3000 fans. I need something reliable.

  • @scubieman
    @scubieman Před rokem +3

    First.... Hell with you nate!

  • @shephusted2714
    @shephusted2714 Před 11 měsíci

    cut out the breadboard

  • @timmyfingaz100
    @timmyfingaz100 Před 11 měsíci

    cough *mosfet*

  • @CGGC0202
    @CGGC0202 Před rokem

    Whats with this new informative format video ? totally not your style, its almost professional video

  • @EvoPortal
    @EvoPortal Před 2 měsíci

    Just use a 555 timer... why bother with all this nonsense?

    • @kukumalu255
      @kukumalu255 Před měsícem

      can you connect it to home assistant ?

    • @EvoPortal
      @EvoPortal Před měsícem

      @@kukumalu255 You sure can but who the heck use all that home assistant garbage?

  • @jonathan.sullivan
    @jonathan.sullivan Před rokem +2

    First, S**k it Nate

    • @bigbigspoon
      @bigbigspoon Před rokem +2

      I look forward to this comment on all BMB videos! SAhk it NATE!

    • @TechySpeaking
      @TechySpeaking Před rokem +2

      Yeah, fuck that guy.

  • @rallygallery
    @rallygallery Před rokem +3

    First