Incorrect voltage readings from power module and/or pixhawk

After a recent crash, I am now getting low voltage (3S < 10.2) battery failsafe conditions after only 2-3 minutes which can be seen in the logs. The real time telemetry also reported low voltage of around 9.5 volts. A few minutes after landing, the volt meter shows at least 1-1.5v higher. Calibrating the voltage in Mission Planner using a voltmeter gives good readings before take-off.

Initially I thought the batteries were faulty but have now come to the conclusion the voltage level is being incorrectly calculated after a few minutes of flight.

I have come to this conclusion after a test with a mini G.T. Power watt meter connected in series between the PDB and PM and observed the minimum voltage & maximum amps after landing. The watt meter recorded expected levels, based on the flight times, of around 11 volts min and 16 amps max. The I tried a replacement cable between the PM and the Pixhawk power port but that made no difference. So the prime suspect is now the PM or Pixhawk.

Until I get this solved, I have disabled the low voltage failsafe parameter in Mission Planner and now rely on a timer and mAh consumed, which still seems accurate based on comparing CurrTot and the LiPo charger numbers.

Any ideas on finding the exact cause of this discrepancy between the watt meter and the pixhawk?

it’s unlikely there would be anything going on with the firmware here, nor the pixhawk hardware.

Does it do the same thing with a different battery pack?

As a controlled way to observe the reported voltage, I’d setup the rotors as if you were doing a compass mot calibration, then throttle up on the ground and watch the voltage levels using the telemetry link. It is of course completely normal for a LiPo to rise 1-2V higher once load is removed.

This occurs with 3 new and different model 3S batteries. The telemetry during a flight shows the voltage dropping rapidly in approx 3 minutes from 12.5 to around 9.5 volts. However, the small watt meter I have hooked up between the power module output and the power distribution board, records the minimum voltage around 11.5 volts and max amps around 18A.

So it seems to me that the power module could be providing bad data to the pixhawk and/or the pixhawk is calculating the voltage incorrectly. I have of course calibrated the voltage parameter to match the at-rest reading using a multimeter and mission planner.

I am using a Hobbyking pixhawk and PM. This strange behaviour started after a recent crash when the 5v power cable came out of the power module connector and a LiPo got battered.

Robin

Hi. It is not a pixhaw or software problem, is a power lay-out problem. What happens, especially in big frames like hexacopter F550, with long power wiring, is that the return of part of the currents from the ESCs, they do it by the thin cables that come from the Power Module to the pixhaw. This generates an inverse voltage on the negative cable, which is subtracted from the voltage measurement, which is 1/10 of the actual voltage, so if the battery has 11.3 volts, the sensed voltage will be 1.13 volts, per This is that a voltage of 0.1 or even 0.2 volts generated in this return, produce the effect that the pixhawk detects 1 to 2 volts less of the real, The effect is proportional to the total drone current
This I solved by modifying the place where the sensed voltage is generated, “translating” the output resistance of the voltage divider of the Power Module. The small 1.5Kohm resistor in the Power Module, which is connected in parallel between the V sense pin and earth, must be removed. Then connect a 1.5 khom resistor between the same wires, but very close to the pixhaw connector. (You must be very careful in this operation). With this the voltage generated in the cable, due to the return of the ESC current, is subtracted from the voltage of the battery and not of the sensed voltage, becoming negligible its effect. The same can be done with the current sensor, but in this case the resistance is usually 110khom or 72khom, depending on the size of the PM. (The value is the one that is measured with a multitester, between Isense and Earth.

After this modification, the voltage and current readings proved to be very reliable and accurate

Good luck

1 Like

I installed a Mauch PM. Problem solved :slight_smile:

[quote=“rsilk, post:5, topic:8796”]
Mauch PM
[/quote

Yes, The mauch PM is a very good product.
For those looking for an elegant solution, without modifying the power module, at all, I tell you a simple solution, elegant and excellent performance, (better than the previous)
I comment that the phenomenon of voltage generated by the return of high currents (when they are small, it is not noticed, but if they exist), will always produce a change in the measurement, dependent on the acceleration Of the engines. An excellent solution, that prevents a flow of current from the ESC’s through the pixhawk,and which results in an accurate voltage and current measurement, consists of intercalating a small resistence (on the order of 3.3 to 12 ohms,I have used 10 ohms) on the negative signal cables or ground that goes from the pixhawk to each of the ESCs. NOT ON THE SIGNAL CABLE, ONLY ON THE NEGATIVE CABLE. This causes the return current of the ESC to find an a relatively large impedance along this path. This resistance is negligible for effects of the command signal to the ESC and everything works perfectly.
After several tests, it is concluded that the measurements are very precise, in the whole range of accelerations (0 to maximum trhottle) and independent of the lay-out of the power connections.

I hope it will be you useful

2 Likes

Hi Patricio

I had the same problem and I’ve done what you explain. I’ve intercalated a resistence of 10 ohms in the black cable, and it seems it works. I’ve been testing it today, hovering my quad until the voltage failsafe (10.5) have been triggered. After landing the voltage was 11.1, more or less 0.6v over the failsafe level. Anyway it is much better than before (1.6).
But after consuming three batteries doing the test, I have had some problems. The drone was unable to take off. Each time I tried, the front of the quad hit the floor, because the rear motor seemed to rotate faster than the front ones, unbalancing the quad.
Do you have any idea about what could happened?.
Has it anything to see with the impedances added?.
I keep waiting for your news.
Thanks in advance.
Joan

Hi Joan,
The battery voltage is normal to rise when the quad is grounded, since the current is very low and there is no voltage drop to the inside of the battery due to the internal resistance. The internal resistance of the battery increases with the discharge and is much worse when it is old or abused. Therefore you must be confident that with this change you are measuring the correct voltage.

Regarding your other problem, if everything is well connected, this should not be the cause. As indicated above, the effect on the command signal to the ESCs is nothing. I have tried and tested it on 7 different quads, with Pixhawk and APM2.5, with the same good results.

The problem that you indicate, but seems to be a problem of incorrect rotation of the propellers. Check if the connection sequence is correct and also the direction of rotation. Another possible cause, but less probable, if you have not intervened in the programming, can be a problem of calibration of the ESC. ESC without calibration and high vibration are the cause of most stability problems. When assembling, all motors must rotate smoothly and at the same speed. You should also check if the calibration of the accelerometers is correct, especially the leveling. Otherwise the controller “thinks” that it is uneven and tries to level itself correctly.
I hope you can solve the problem

1 Like

When sending the arm command, all propellers must rotate smoothly and at the same speed.
Did you make any changes after the tests? Is everything solidly connected and welded?

Somethings similar happen when use hexa sftware in a quad. Check this. If in motor test you see 6 motors, the you are under this wrong situation

Thank you very much Patricio. I didn’t do any change after the first test, but I think that you probably are right with the ESC. I’m goig to calibrate them again, because I remember that they didn’t rotate at the same speed, and even two of them started to rotate a little bit later than the other two. I’ll do it and tell you someething later on.

Hi Patricio
I’ve done some test this weekend.
You were right, the problem was the ESC’s.
But, even I calibrated them with the mission planner it didn’t help. The problem still remained.
As the ZTW Black Widow motors have BlHeli ESC’s inside, I did it also with the BlHeli Suit, and it solved the problem.
Today everything was fine. I could flight without problems.
Thank you very much for your help.

Now it’s time to make another step, trying to avoid vibrations, in order to have smooth movies, but this is another question.

you’re welcome.

If the camera is fixed and small, try to install it in the same “bed”, of the flight module. Which must be isolated from vibrations. I have a camera stuck in the pixhawk and it works very well. It also adds mass to the pixhawk by further decreasing vibration.

Patricio,

Thank you!! This is exactly what I have been looking for. I am going to try the resistors on the ESC negative cables. Will this work on ESCs with built-in BECs?

-Wade

Only If you are using that BEC, will be a diferent solution

Hi all,
if you find any Incorrect voltage readings from power module and/or pixhawk

Case 1: Recalibrate the battery monitor settings. Battery and Power Module Setup | PX4 User Guide

Case 2: Check the power port jsw connector continuity with help of multimeter and if you identify any continuity error replace with new connector.

Case3: Verify the battery calibration parameters Parameter Reference | PX4 User Guide

Regards,
Yoga

Those links are for PX4 firmware. This forum is mostly for Ardupilot firmware.

But thanks for the info anyways