One of the most heavily used features in the Betaflight is probably battery voltage monitoring. While most of the times it is more or less correct out of the box, there are times you have to calibrate it. If it’s displaying the wrong voltage in Betaflight OSD, here is how to fix it.
We rely on voltage sensing to decide when we should land. If the warning happens too late, you can risk over-discharging your battery, or too early, you could have shortened flight time by “leaving too much fuel in the tank”. Calibrate voltage ensure this won’t happen.
Step 1 – Measuring Battery Voltage
Take a LiPo battery that you normally use on the quad, doesn’t matter if it’s charged or not. Use a multimeter to measure voltage of the battery. Do this while the battery is connected to the quad, because when it’s powering the quad, there will be a small voltage drop.
A common mistake people tend to make is measuring the battery voltage before connecting it to the quad. And when they read it from Betaflight, it would of course be a bit lower and they assume Betaflight is reading it too low, which is incorrect.
You can test the voltage by either touching the battery lead solder pads with the probes as shown below, or touch the balance lead terminals at each end. It doesn’t matter if you are testing it backward, your multimeter will just report a negative voltage which is fine.
This will be our reference voltage.
If you’ve never used a multimeter before, or not sure which multimeter to buy, see my tutorial.
Step 2 – Checking Voltage Reading in Betaflight
Leave the LiPo plugged in to the quad, and connect flight controller to computer.
Do this as soon as you can because your quad is draining the battery. If this is going to take you a while to do, unplug battery first, and only plug it in when you are ready.
Open Betaflight Configurator, go to the “Power and Battery” tab, under “Power State” section (on the right), you should see “Voltage” displayed there. This same value is what get displayed in Betaflight OSD as well.
If this value is roughly the same as what you got from the multimeter, then you are good, no adjustment is needed and you can close this page now.
But if this is different, it probably means voltage sensing needs to be calibrated, and here is how.
Step 3 – Voltage Sensing Calibration
If Betaflight is reporting voltage too high, reduce the number “scale” under “Voltage Meter”.
Initially, you can go up or down by 3-5 at a time and press the save button in the bottom right corner, you should see voltage changes instantly.
Continue this process and gradually reduce scale changes until you get voltage reading the same as what you got from the multimeter, or as closest as possible. Sometimes it’s impossible to get the 2nd decimal place exactly the same, that’s totally fine, just make sure the 1st decimal place is correct and that’s sufficient.
Now you can fly more confidently knowing your voltage reading in the OSD is dead on :)
If you have a current sensor in your flight controller, you might also want to calibrate it as well.
14 comments
my problem is the voltage does not change during flight…
Older Lumenier Micro Lux with Frsky receiver displays 9 v when hooked up to USB. No voltage change when hooked up to 3s battery? Updated older firmware and can not get it to read battery when hooked up. Everything else function and is ready to fly. Need voltage for battery warnings to function.
If you’re going to do this, I highly recommend using a smoke stopper.
Using a Clracing F4s flight controller, it reads “wrong cell count” when using a 4s battery it reads 3, cells with 6s, it reads 4, cells, is there any way to fix this problem or do I need to buy a new flight controller ?, please help
My battery voltage keeps reading 0 can u Plse help me!!
You could be on the wrong version of Beta Flight on the quad. I had that issue on Betaflight 4.5 and had to go to 4.4 to see voltage.
My OSD goggle battery voltaqge is constantly 0.5 V leass than the actual measured voltage. This is shortening my flights and ending filming. How can I calibrate this?
My OSD suddenly shows voltage at 0.00 and the number is flashing. Tried several full batteries and it stays the same.
I first noticed it right after I was using smart audio to change vtx output. I opened the “power” menu that is all about voltage scaling etc by accident, but I don’t think I changed anything.
Please help!
The FC I’m using, mamba f405 power tower, was displaying only 3.5V for a fully charged 4s in BF and only recognizing it as a 1s battery. Voltage meter showed 16.78 at the vcc/gnd pads on the FC. I upped the scale and it maxed out at 255. So then I dropped the multiplier down to 5 and the scale at 197. It’s displaying voltage properly for a variety of batteries and now recognizing 4s as well. My question: Is scaling this extreme a bad thing or is it perfectly fine? This may be a fix but is it one I can rely on or is this scenario indicative of future problems?
What about the other settings on the Power & Battery tab? How should they be setup?
99% of the times you don’t need to change those settings
Does this work on the big 12S quads too? Still having problems showing correct Vbatt on my 12S quad
Yes
I have a Piro FC board on which the voltage is incorrect. On this board, the scale value maxes out before the voltage goes up to the correct reading. This is in spite of the fact that on their retail pages they provide a scale value that is supposed to work (but in my case still reads too low. I’m not doing anything fancy, just giving the FC vbat from the ESC. Is this where I need to tweak divider or multiplier values? How do I go about doing that if that is the case?