Power Module Current Sensing


I am powering up my system using a benchtop DC supply, to double check the voltage and current sensors. Screenshot below in APM Planner, selected “Pixhawk Power Module 90A”.

Voltage is measured correctly at 11.28V, but current is 2.18A instead of 0.54A, around 4 times bigger.

In Mission Planner, I can see there is no “Measured current”, only Current (Calced), which explains the higher current using the Amperes per volt constant. I tried to select other options but I can’t seem to get the “Measured current” to work. Any pointers?


Setting “Amperes per volt” to 4.8 appears to give the correct amp usage, just not sure if this is what I should be doing. If this is correct, is it because Navio+ ADC requires a different constant?

Current sense at low amps is not accurate, take the props off and run it up to about 10 amps then take measurements again to calculate the amps per volt. That is documented on the APM Web site. I don’t think Navio is any better at this (the original Pixhawk and APM compatible PDB I use both have the same limitation and the Navio power cable appears to be identical to the Pixhawk cable).

Hmm, yes the accuracy improves as the Amp goes up.

Because the code (in addition to voltage monitoring) monitors the current usage and triggers the failsafe on low battery, I found the the current calculations may be tripping things up much earlier than expected. I am going to change it to monitor just the voltage for failsafe, until I test a bit more on the current side of things.

Setting the PM to a predefined type automatically enters the calibration values for those modules. Select “other” as your power module and you can enter the meassured values.

From my screenshot, you can see I am already on “other”, the problem is that the code calculates the battery remaining when arducopter starts. So, if you stayed idle for a while, you can see the battery % dropping quite quickly. I think it is because (from the videos I have seen on youtube) the APM hardware draws about 0.1A on idle, which records as 0A in the code, which is fine. But on my Navio+, it is 0.5A on idle, which translates to 2.5A, which will quickly make the % remaining calculations drift/incorrect on idle.

Sorry. I wrote on my smartphone and did not notice the setting in the screenshot.

I agree but this is an APM problem not Navio. I never take the percentage of battery remaining seriously, just the voltage (same conclusion as you).

If I remember correctly there were one or two feature/suggestions to DIY Drones/APM that, in end effect, would not only make APM smarter with batteries but also add features the capability to track usage/history of each battery (saving $$$ of risk for professionals and very interesting for hobbyists).

Maybe there is some trick to getting accurate battery percentage which I don’t know. But in my experience it’s junk and I concur with you that the only sensible value coming out of the system is the voltage. Besides that the amps are useful in a passive way for flight/log review, e.g. to calculate efficiency and check you’re in the safety range of your chosen ESCs and battery higher discharge time specifications.