BTN7971b PWM

Why is my PWM efficiency about 50%?

Ask QuestionAsked 2 days agoActive todayViewed 169 times2

I’m using a BTS7960 module with an Arduino to adjust the voltage for my DC motor.

When I check efficiency there is a problem. PWM efficiency is supposedly about 90% but mine is only about 50%.

I have a 7S3P 29V li-ion battery and a 12V DC motor. While I was using it 50% PWM mode, I calculated the efficiency of power consumption and I realized that I almost lost half power in PWM.

How I measured the efficiency:

  • I put a clamp meter between the battery and the BTS7960 and I have check voltage “B +” and “B-” terminals. Voltage is 29V and current is 11 amperes so my battery is giving 320 watts.
  • Then I checked the consumption of the DC motor. I put a clamp meter between the BTS7960 and the DC motor and I measured voltage “M+” to “M-” terminals. Voltage is 13,6 and current is 13,8 amperes so as I understand my DC motor consumes 187 watts.

Either my PWM module efficiency is very bad or I’m doing something wrong.

The BTS7960 module became really hot while testing.

If you ask why I dropped 29 volts to 13 volts and drive the DC motor, it is because I have a 7S3P li-ion battery and I have a 12 volt Dc motor. If I can overcome the problem, I will drive a 24 volt DC motor with a 7S3P battery.

What is the reason for the high power loss?

(edit)Additional information: My clamp meter is Unit UT210E. Also you can reach datahseet this link:

UT210E English Manual

Also I measured current with multi meter(Unit UT39C)

Lastly I made same circuit with dc-dc convertor. The energy loss in the measurement was very low and I saw this as normal aslo With dc-dc converter, the battery and cables was not very hot, but in pwm modulation, the battery, cables and bts7960 integrated was very hot.

enter image description here

arduinopwmpower-electronicsdc-motorShareCiteEditFollowFlagedited yesterdayStainlessSteelRat6,22022 gold badges1313 silver badges2828 bronze badgesasked 2 days agooğuz kaan çomoğlu2144 bronze badges

Add a commentStart a bounty

2 Answers


Your multimeter and your clamp meter are both not meant to observe PWM going through an inductive devices.

You need an oscilloscope with a high-bandwidth method of sensing current. I don’t know your PWM frequency, but rule of thumb: estimate how fast the transition from fully on to fully off has to be, take the inverse of that time (yielding a frequency), and take 5, better at least 7 times that frequency as minimum bandwidth if you really want to see what happens on that cable. It’s not DC, by any meaning of that word.

Current measurements can be quite tricky, so you might end up getting a hall effect sensor IC with something like 400 kHz or 1 MHz of bandwidth, and just live with current components that you cut off through that not-really-sufficient bandwidth.ShareCiteEditFollowFlaganswered 2 days agoMarcus Müller67.3k44 gold badges100100 silver badges179179 bronze badges

  • 1I check the pwm frequency with oscilloscope and it was 500HZ and duty cycle was %50. I just want know what is my real power consumption ? Or can I say is my real power consumption can measure between the battery and the BTS7960 (29 volt * 11 amper) because there is no modulation on this cable. And lastly how I can measure current after pwm modulation ? – oğuz kaan çomoğlu yesterday 
  • 11. 500 Hz sounds very low for a PWM frequency. 2. it’s not about the frequency, but about the bandwidth, which is defined (mostly) by how steep the edges between on and off are. – Marcus Müller yesterday
  • 11- Yes I read somewhere about this, it’s making noise and I check my hedge trimmer it’s working with 50KHz pwm(%75 duty cycle). 2- You mean duty cycle ?(I’m sorry I am asking because I do not have enough information. Maybe I can bother you) – oğuz kaan çomoğlu yesterday
  • 1no, I don’t mean duty cycle. I mean edge speed (as I said three times now), the time it takes to go from “on” to “off” (and vice versa). – Marcus Müller yesterday

Add a comment0


How come my BTS7960 DC Motor Driver using PWM has efficiency of only 50%?


Well, there are many possible reasons. Perhaps we can do some research to find out the reason.

1. I would suggest to wire up a test rig for testing the motor driver with a DC motor, as shown below.

btn7971b test rig


1. The OP’s BTS7971 driver has been replaced by the newer model BTN7971B. They have very similar characteristics and operation. So I have taken the liberty to test the newer driver. I think the OP can compare and contrast the two devices and modify my suggested test accordingly.

2. Now I am going to test the motor driver, measuring the voltage across the motor coil and the current passing through it.

btn7971 pwm test

3. The OP might have initialized his clamp meter with “VFC”

I googled to find that “VFC” introduces a low pass filter for AC measurements – cutting off above 400 Hz.

VFC might be good for AC measurement of mains frequency of 50Hz/60Hz. However, if the OP is measuring PWM frequency 400Hz or above, signals should be much attenuated by the VFC low pass filter.


(1) UNI-T UT210E Pro Mini Digital Clamp Meter, Auto Ranging TRMS Backlit VFC NCV Meter, AC/DC Current Voltage Frequency Resistance Capacitance Diode Tester

(2) UT210E Mini Cloamp Meters Operation Manual 2018may Rev.2 – UNI-T


Appendix A – UNI-T UT210E Pro Mini Digital Clamp Meter

clamp meter

ShareCiteEditDeleteFlagedited 7 mins agoanswered 5 hours agotlfong011,68411 gold badge66 silver badges1111 bronze badges

  • 1The OP’s problem is most likely due to inadequate instrumentation that can not handle PWM. The OP doesn’t need to test with another driver as the one s/he’s got is not burning out so it can’t be dissipating that much heat. – Transistor 5 hours ago
  • 1″Now I am going to test the motor driver …” As explained before, SE is not a blog site. If you think you know why the efficiency calculations are so low then just answer that question. There’s no need for a photo of another board or a schematic. – Transistor 4 hours ago

Add a commentAdd Another Answer

Q: Why is my PWM efficiency about 50%?

oğuz kaan çomoğluI’m using a BTS7960 module with an Arduino to adjust the voltage for my DC motor. When I check efficiency there is a problem. PWM efficiency is supposedly about 90% but mine is only about 50%. I have a 7S3P 29V li-ion battery and a 12V DC motor. While I was using it 50% PWM mode, I calculated t…arduinopwmpower-electronicsdc-motorKartmanYour clamp meter may not like reading pwm and will lie to you. The BTS7960 is expected to get hot if there’s 11Amps flowing. It is not a perfect switch. TransistorDoes your clamp-on meter measure DC amps? Please edit to include the make, model and link to datasheet. oğuz kaan çomoğlu@Kartman Yes, I thought so, but then I measured it with a multimeter. The result turned out to be the same. John BirckheadAgree with @Kartman, you must be making an errant measurement. I can’t think of any scenario where you could be this inefficient. You would have to be dissipating 320-187 or 133 watts in your circuitry. oğuz kaan çomoğlu23@Transistor My clamp meter is “Unit ut 210e”, also I measured current with multimeter(Unit ut39c)@Transistor drive.google.com/file/d/0B4Jyby-tjH5oNnlQQmY1RktSUnc/view datasheet for clamp meter brhans13:55If you were dissipating all of that extra 133W in the driver circuit then it would be hot enough to cook on. It’s far more likely that you clamp meter is not capable of giving accurate current readings on the PWMed motor side. TransistorPlease edit all the information into the question. Don’t sprinkle it through the comments where people have to search for it. oğuz kaan çomoğlu23@JohnBirckhead I want to tell you about a situation I observed, I tried the same circuit with a dc-dc converter. The battery and cables didn’t get too hot but when I used pwm modulation battery and cables became really too hot. So if the measurement was wrong in the first method, wouldn’t the battery be at the same temperature when I used a converter? Marcus Müller@oğuzkaançomoğlu again, please edit your question to include all information you gave here in the comments into your question. Thank you!@oğuzkaançomoğlu no, battery temperature has little to nothing to do with all this. Andrew Morton1) Cables getting hot can be cured by using thicker cables – what gauge wires are you using for the high-current paths? 2) What is the current rating of the DC-DC convertor that you used? Did you check its output voltage during the test? tlfong015530#oğuz kaan çomoğlu, I found your question interesting. I happen to have a BTN79xx driver module and a Rigol DS1054 50MHz scope to display the V-I waveforms. So perhaps I would spend this gloomy lock down Saturday afternoon to do some PWM efficiency evaluation. Now a couple of questions: (1) I read the UT201 clamp meter manual and I am surprised to read that it is for both V-I of AC and DC, as accurate to the order of 1mA. / to continue, …/ continued, …Or please let me know how you calibrate you meters. (2) I only have US$5 cheapy multimeters with the max current range of only 10A. So I will be doing small currents tests under 10A. I wonder if you have already done low current tests OK, and only found problem with bigger currents? Comments and counter suggestions welcome. Cheers.#oğuz kaan çomoğlu, (3) BTN79xx handles huge current, so it is important to sense current for alarm and security, (also for speed feedback control). You might like to skim my answer to the following question, to get a rough idea of how to do hardware fiddling for current sensing. (3a) Anything wrong with connecting L298Ns in parallel? electronics.stackexchange.com/questions/556772/…. (3) Are you OK to do DIY soldering work, like what described in the above question?#oğuz kaan çomoğlu, Your yr2004 7960 is similar to my yr2008 7971b, except a couple of years older. (4) Do you have any reason to prefer one over the other? If not, I would write an generic answer applicable to both drivers. (5) 7971B’s PWM freq is max 25kHz. I usually start off with a very low frequency, say 1kHz. (5) Do you have any particular preference on PWM frequency? If not, I will start with 1kHz, 50% dc. BTW, I for reliability/repeatability, I will us a cheapy manual/uart control digital sq wave sig gen for PWM test. Ah, lock down lunch time. See you later. Cheers.#oğuz kaan çomoğlu, just now I casually googled for more 7971b things that I don’t know that I don’t know. (6) I read that many Infineon devices seem manufactured in ShenZhen, and this might be a problem, because MIC products usually more easily fall off the truck and go to the grey market. I see that 7971b IC prices on TaoBao varies in a big range, sometimes double or higher, so I usually go to a reputable shop for which I have a VIP account. Is your 7960 module from eBay? You might have be a quality assurance problem! 🙂#oğuz kaan çomoğlu, (7) I also read TaoBao shops’ ads saying the my BTN7971B has replaced your BTS7960. So now I wouldn’t care much about 7960 and focus on 79711b. Sorry about that.  8 hours later… tlfong01553022:05@oğuzkaançomoğlu Your Uni-T UT 210E has a “VFC” feature which is a low pass filter, cutting off at 400Hz. So if you are measuring VI values of PWM frequency above 1kHz, say, signal might be much attenuated, and thus causing wrong reading you got. But I am just guessing, only 20% sure. Anyway, you can (1) Disable VFC mode, or (2) set PWM frequency much below 400Hz. 


Categories: Uncategorized

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.