0
\$\begingroup\$

I am trying to make a hotplate with an ESP32 and I use MC34063 for buck/boost converters. The hotplate itself require 12-30V to operate and the ESP32 and LEDs need 3.3V.

Here is the circuit:

DC-DC Converter Circuit

When the circuit is powered, I hear (almost) nothing while the ESP32 is booting but after that, I can hear an annoying audible noise. I tested with an oscilloscope and the output of the MC34063 seemed to have a frequency between 10 and 15kHz.

I have already checked this question but it does not seem to have a complete solution for my case.

You can find the complete schematic here and the PCB here

Does anyone knows how to solve this?

\$\endgroup\$
7
  • \$\begingroup\$ Are you able to scope an inductor current by placing a shunt in series with L? Or measure it with current probe. \$\endgroup\$ Commented Mar 14 at 23:22
  • \$\begingroup\$ Sometimes 1 nF parallel to R7 helps here. \$\endgroup\$
    – Jens
    Commented Mar 14 at 23:41
  • \$\begingroup\$ @MichalPodmanický Could you explain me how to do this? \$\endgroup\$ Commented Mar 14 at 23:54
  • \$\begingroup\$ I found this; maybe it can help with my problem? : e2e.ti.com/cfs-file/__key/… \$\endgroup\$ Commented Mar 15 at 0:21
  • \$\begingroup\$ Is there a reason to use such an ancient DCDC? A modern DCDC will run at 500KHz or higher and use an inductor that is 10x or even 100x smaller. Because the switching frequency is far out of the audio band you won't hear it. Or replace the DCDC with a chunky linear regulator which will be silent. \$\endgroup\$ Commented Mar 15 at 8:37

1 Answer 1

4
\$\begingroup\$

When the ESP32 is booting up, it draws enough current to keep the MC34063's switch on for part of every MC34063 cycle. When the ESP32 becomes idle, the amount of current it draws falls, and the MC34063 starts to "skip" cycles. That is, there are MC34063 cycles in which the switch is never turned on. The effective frequency of the switch, thus falls, and may fall into the audio range, as in your circuit.

When the effective frequency of the switch is in the audio range, the inductor (or possibly the capacitor) may make an audible noise, especially if the turns are not wound tightly to the core.

There are a number of steps you can take to mitigate this noise, each having its own benefits and downsides.

  • You can try to find an inductor with less tendency to whine
  • You can try to fix the inductor turns in place with some kind of conformal coating or glue, provided the inductor does not get too hot as a result.
  • You can add a dummy load to the output of the buck converter to ensure that the frequency stays above the audible range even when the ESP32 is idle. The upside is this is very easy to implement. The downside is that it will waste power, which may or may not be a concern for you.
  • You could use a converter IC chip that uses "forced CCM" (FCCM) also known in TI's literature as "Forced Pulse Width Modulation" (FPWM). The idea behind FCCM/FPWM is to never skip switching pulses, even when the load is very light. Instead, excess charge at the output is "recycled" back to the input during part of a switching cycle. This trades efficiency at light loads for a constant frequency at light loads. Since the switching frequency is set above the audible range, there is no audible coil whine.

Note that the available chips for this last option (for example TI's LMR50410XFDBVR) generally run at much higher frequencies than a typical MC34063A circuit. This requires care in choosing the inductor and capacitors and in the layout of the circuit. However, as you have been successful in implementing a MC34063A circuit, I believe you will be successful at these higher frequencies. Note that the inductance and capacitance of inductors and capacitors at high frequencies may be very different from their low frequencies values. So, not just any inductor or capacitor will serve.

\$\endgroup\$
12
  • \$\begingroup\$ Do you think that changing the Timing Cap as shown here could help? : e2e.ti.com/cfs-file/__key/… \$\endgroup\$ Commented Mar 16 at 20:14
  • \$\begingroup\$ You can try making the timing cap smaller. It may not solve your problem. Does the whine go away when you give your power supply a load? Does the pitch change? \$\endgroup\$ Commented Mar 16 at 22:33
  • \$\begingroup\$ The whine seems to go away when the ESP32 is using the wifi. \$\endgroup\$ Commented Mar 16 at 22:41
  • 1
    \$\begingroup\$ A resistor of the right size between the output of the converter and ground should make the whine go away. A larger resistor will make the whine have a higher pitch, but still be audible. What happens when you put, say a 1K resistor from converter output to ground? A 560 ohm resistor? A 330 ohm? A 220 ohm? \$\endgroup\$ Commented Mar 16 at 23:06
  • \$\begingroup\$ Also, if the components are not too hot, can you make the whine go away by pinching either the output cap or the output inductor? \$\endgroup\$ Commented Mar 16 at 23:20

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