I'm trying to build a small sized ultrasonic cleaner. I bought a couple ultrasonic transducers (ranging between 40kHz - 102kHZ and 15 - 35 watt) which I want to play around with.

There are already quite some driver boards and transducers out there, but I really want to keep a small form factor. Also I try to make a setup where I can easily play around with different transducers, so be able to change the frequency and supply voltage with little effort

I was thinking about creating a setup with Arduino so I can easily and precisely change the PWM frequency. I found the circuit below as a starting point from Ultrasonic schematic source:

Ultrasonic schematic

I'm trying to control a 35W 40khz transducer which is widely available: transducer link

Now I changed the first 555 timer part of the circuit with the Arduino. Resulting in the following:

Arduino ultrasonic cleaning circuit

But for one reason it's not working properly. It's drawing some current but not very much and seems not to do so much. As a power supply I'm using a simple bench-top power supply (0-30v, 5A)

What am I doing wrong and is there otherwise another way I could drive the Ultrasonic transducer using an Arduino?

  • 1
    \$\begingroup\$ This is most likely a wiring or software problem. Also, you don't need the CD4013, the Arduino can output two 180° phase shifted PWM signals by itself. \$\endgroup\$
    – Janka
    Commented Aug 8, 2018 at 14:44

1 Answer 1


enter image description here

Figure 1. Poor bridge driver circuit.

The problem is that of a badly designed bridge driver. The CD4013 is driven from a 5 V supply so the outputs (1) and (2) can only switch between 0 and +5 V. T1 and T2 are configured as voltage followers so the emitter can only reach 5 V less 0.7 V, the voltage drop across the base-emitter junction. The highest voltage at (3) or (4) is 4.3 V despite being powered from 25 V.

Note that the original circuit is all 12 V so the bridge may be able to switch between about 1 and 11 V.

You'll need to use a proper H-bridge driver circuit.

  • \$\begingroup\$ Okay, good to know. Do you have a good reference to start with? I was already planning on trying to replace the BD679 and BD680 with NPN and PNP mosfets: IRL520 and IRF9530, would that maybe do the trick? \$\endgroup\$
    – Ruben
    Commented Aug 8, 2018 at 15:14
  • \$\begingroup\$ I'm afraid not. I've never built one but have read much about them over the years. The problem you are facing is common on stepper motor drivers and H-bridges are available with TTL (5 V) control inputs so I would start looking there. Make sure that snubbers are built-in. Read up on shoot-through too. A readymade bridge shouldn't have this sort of issue though. \$\endgroup\$
    – Transistor
    Commented Aug 8, 2018 at 15:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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