I want to control the speed of the AC motor based on the temperature set on the Nextion HMI. Right now I have my ESP32 Microcontroller and Solid-state relays which supply the maximum output power of 10 amperes. My Wilo Motor requires the power of 0.03 to 0.66Amps. I am in a state of confusion about what component is required in the middle to connect my ESP32 Controller to send the analog PWM control signals of 0 to 10V to my Wilo Para Motor for the speed control. I searched in Google and I got few data like H-Bridge, PWM Speed control manual module. I'm stuck in this work and I'm looking for help.

Below I have attached the link of the datasheet. On page number 34 is my WILO Para Motor and the model name is Wilo Para 25-180/9-87/IPWM1 in the table


Thanks in Advance.

  • What's a Wilo Motor? Links to datasheets please. – Majenko Feb 14 '20 at 10:18
  • @Majenko As far from my knowledge Wilo is a smart AC Synchronous Motor. wilo.cdn.mediamid.com/cdndoc/wilo164576/1544113/wilo164576.pdf – Abhishekh Aaron Feb 14 '20 at 10:26
  • This is the link of the datasheet and on page number 34 is my WILO Para Motor and the model name is Wilo Para 25-180/9-87/IPWM1 in the table – Abhishekh Aaron Feb 14 '20 at 10:28
  • 1
    Pretty useless datasheet that. It doesn't contain any real information. I hate when companies do that. But one thing I did glean: the phrase used in the datasheet is "0-10V or PWM". The PWM is probably a TTL compatible input, so LOW is 0V and HIGH is >2V. The 0-10V is something completely different. – Majenko Feb 14 '20 at 10:32
  • @Majenko Yes this was the datasheet I got from the WILO heat pump website. Now I need a component to send the control signal from ESP32 to the Motor. – Abhishekh Aaron Feb 14 '20 at 10:35

Page 6 of this doc explains, what is iPWM and its electrical characteristics.

Manual page

So, you need some low-power PNP transistor and the resistor (about 5-10k).

  • Thanks for the information – Abhishekh Aaron Feb 14 '20 at 11:19
  • Lowest voltage for iPWM is 3.6 volt, so, you need the voltage amplifier. – gbg Feb 14 '20 at 11:20
  • Yes, the lowest voltage for iPWM required is 3.6 Volt. But the problem is I am not getting the exact information of my motor model Wilo Para 25-180/9-87/IPWM1 – Abhishekh Aaron Feb 14 '20 at 11:35
  • You don't need this. Wilo refers to its standard, the iPWM. So, any Wilo device, that use iPWM, will use the same electrical characteristics for it. – gbg Feb 14 '20 at 11:40
  • Thank you so much – Abhishekh Aaron Feb 14 '20 at 11:48

You do not want a "0-10V PWM signal". There is no such thing.

There are generally 2 methods of controlling motors like these:

  • Through a variable analog voltage between 0V and 10V, where the voltage given is proportional to the speed, and
  • Using a digital PWM signal where the duty cycle is proportional to the speed.

You are getting confused and combining the two together (and to be honest that datasheet, which is really little more than a sales brochure, doesn't help matters).

Typically a PWM input on a motor uses a standard TTL signalling method. This specific motor, as detailed in this document uses a slight modification on the standard. It requires a minimum of 3.6V for a HIGH, and the ESP32 gives 3.3V maximum.

Because of that you will need to amplify, or "boost" the signal to a slightly higher voltage. The simplest way to do that is with an off-the-shelf logic level translator (3.3V to 5V). There are cheap MOSFET based ones on eBay etc that will do the job.

If you want to create your own the circuit is quite simple, and requires one N-channel MOSFET and two resistors. I use the BSS138:


simulate this circuit – Schematic created using CircuitLab

  • I will try and I will let you know. – Abhishekh Aaron Feb 14 '20 at 11:13
  • 1
    @gbg Can you reference a page number? I scoured that document looking for that information but it's such a terrible document I failed. – Majenko Feb 14 '20 at 11:19
  • 1
    No wonder I couldn't find the info - that's a completely different document. – Majenko Feb 14 '20 at 11:23
  • 1
    @gbg Thanks for that info. I have updated my answer accordingly. – Majenko Feb 14 '20 at 11:31
  • 1
    @Majenko I saw it and thanks for your help. – Abhishekh Aaron Feb 14 '20 at 11:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.