I did a quick prototype of a plotter (two motors for x and y axes, one servo for the pen up/down).

I'm using a L9110 module (dual H bridge board) to control the x and y motors. The power supply for the motors is a 2S Lipo battery.

Everything is working as expected, except that once in a while (let's say, on average, twice per hour), one of the two H-bridges of the L9110 module starts to smoke (and no longer works afterwards). I destroyed four of these modules without managing to find out why.

I already excluded the most obvious reasons:

  • inverted polarity: not possible because the circuit was running fine when it happened (I didn't plug/unplug any wire at that moment)
  • over-current: seems quite unlikely: the motors draw a maximum of 300 mA each (when output of reductor is blocked), which is well below the 800 mA per motor allowed in continuous operation. And when I touch the drivers, they are not hot. In addition, it's not always the same one of the two H-bridges that burns.

Do you have any idea? Maybe a bad contact on the connection between the Arduino ground and the LiPo/driver ground (but why would this burn the driver)?

Additional information: *the motor driver is an "L9110" module I bought here (nb: page in French). There is a "datasheet" in English for the module here and a poor datasheet for the H-bridge itself here. Note that on the H-bridge it says L9110S and not L9110, but I couldn't find out whether this S has any meaning, or if it is just the SOP8 package (vs DIP8).

For the circuit in more detail:

  • an Arduino Uno Clone is connected to the USB port of the laptop
  • the servo is powered directly from the Arduino (GND, +5 V, PWM pin 11), as it is a small 9g servo (SG90) that doesn't need much current
  • the 4 signal pins of the driver are connected to PWM pins 3, 5, 6 and 9 of the Arduino
  • the ground of the driver is connected on a breadboard with the ground of the Arduino and the ground of the 2S Lipo
  • the Vcc pin of the driver is directly connected to the + of the 2S Lipo
  • the motors are connected on the motor outputs of the driver

EDIT: as asked, I add the schematics of my circuit: schematics of circuit

  • \$\begingroup\$ Try lowering the voltage supply of the driver. Or try first with a power supply with max current adjustable and ammeter included. Try to glue a radiator on each component. \$\endgroup\$
    – Antonio51
    Dec 24, 2021 at 14:16
  • \$\begingroup\$ With such poor documentation, I'm wondering what would be the motivation to choose this device at all. Nothing in what I quickly read gave any indication that shoot-through control was implemented. \$\endgroup\$
    – Andy aka
    Dec 24, 2021 at 14:24
  • \$\begingroup\$ Lowering the voltage won't do (I can't afford to loose any torque), but I'm well within the limits (2S = 2*4.2=8.4V max, the circuit is given for up to 12V). And I have no supply with current limit at hand. \$\endgroup\$
    – Sandro
    Dec 24, 2021 at 14:43
  • 1
    \$\begingroup\$ As stated in the last picture, applying only a signal for one direction on IA pin, low for IB, and vice-versa, the signal on IB pin, 0 for IA? NB : 100% immediately, and not progressively? Remember that it can be a peak current that L9110 would not like. \$\endgroup\$
    – Antonio51
    Dec 24, 2021 at 14:58
  • 1
    \$\begingroup\$ I hadn't thought of current peaks : i'm indeed going directly to 100%. I would expect that 1.5A peak current shouldn't be reached, but it's worth checking. And anyway, an acceleration ramp can't harm. What surprises me if it is current peaks, is that it occurs that late : I'm working mainly with very short displacements, so I do hundreds of starts/stops before failure \$\endgroup\$
    – Sandro
    Dec 24, 2021 at 15:08

1 Answer 1


From this ... https://www.elecrow.com/download/datasheet-l9110.pdf

Use this table, only the first three lines.

When using one input as high (PWM), change duty from 0 to 100% slowly (depending from motor specifications). So, current motor will not exceed specification "current limit" of L9110.

enter image description here

As stated in this picture, applying only a signal for one direction on IA pin, low for IB, and vice-versa, the signal on IB pin, 0 for IA.

enter image description here

NB : not 100% immediately ON, but progressively.

Remember that it can be a big "peak current" that L9110 would not like when motors are switched ON.

Example of servo-motor without armature current limiting.

One can see the peak current vs the steady state current ... between the two pulses.

enter image description here


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.