I have a battery powered device with a PCB wich control a small DC motor (3V). With a little bit of "reverse engineering" I darw this schematic: enter image description here

So there's an 8-bit IC (STM8L052C6) that drive the motor via H-Bridge (the transistor have DH and EH printed and some other unreadable chars... the device is chinese).

Can you explain me what is the R10-R11-C1 section?

The device is capable to 'understand' when motor reach two endpoints but without endstops, so can it be a sort of current sensing circuit to detect stall current?

  • \$\begingroup\$ Stall detector for sure. It detects a short circuit through the motor.😵 \$\endgroup\$ – JRE Sep 20 '19 at 15:44
  • \$\begingroup\$ @JRE so with voltage divider it detects around 1.5V while normal moving and 0V on stall? And C1 is a sort of de-bouncing system? \$\endgroup\$ – Noisemaker Sep 20 '19 at 15:51
  • \$\begingroup\$ It looks like it can detect when the PWM applied produces precisely half the voltage on both limbs of the H bridge and thus the motor can be assumed to be undriven in one direction or the other. I wouldn’t say it’s a stall detector because there’s more elegant and incisive ways of measuring stall. Of course, the 3 volt supply needs to be also monitored. \$\endgroup\$ – Andy aka Sep 20 '19 at 17:14
  • \$\begingroup\$ What are the values of R6, 7, 8, and 9? \$\endgroup\$ – Bruce Abbott Sep 20 '19 at 18:23
  • \$\begingroup\$ And what does the device do? \$\endgroup\$ – Bruce Abbott Sep 20 '19 at 18:25

The two resistors (R10 and R11) provide a voltage that the processor uses to detect when the motor is stalled.

When running normally, the voltage at the junction of R10 and R11 will be around half the supply voltage. Probably have to subtract voltage drops across the transistors from that.

When the motor stalls, it becomes basically a short circuit. The voltage at R10 and R11 will drop.

The processor is probably using an ADC to monitor the voltage. The engineers might also have been real tricky and arranged it so that they could use a digit input to detect a stall. They could jigger it so that the normal operating voltage is above the level for "high" on the processor, and below the level for "low" when the motor stalls.

C1 smooths the stall detect signal. It forms a low pass filter together with R10 and R11. The cutoff will probably be way lower than the PWM frequency. It also cleans up "trash" from the motor brushes.

I'm not going to try to guess the real voltages present at R10 and R11. That's going to depend on the transistors, the power supply, the motor, and how "hard" the processor is driving the transistors (whether they are in saturation or not.)

Not everything you'd need to calculate is there, and I'm not sure I could do it anyway.

Low voltage when stalled, somewhat higher when running normally.


Pin32 is an ADC (pg26), they are monitoring the voltage. The only way to really know what they are doing is to look at the software.


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.