Pixhawk leveling in fuselage and accelerometer calibration before or after mounting

I am putting together my first Arduplane using a pixhawk and a Bix3. I have made several ArduCopters, where I did all the calibrations after assembly. With the bix3 fuselage shape I am need of some advice regarding the proper way of doing this, and I am even having a hard time phrasing these questions due to my lack of knowledge on planes.

With the copter it was easy, mount the pixhawk flat on the frame, put the frame on a level surface and do the 3-axis calibration.

On the plane I have no idea on what the pixhawk should be parallell to. The underside of the wing is pretty flat, should this be parallell to the pixhawk? The inside of the bix3 is all tilted forwards or backwards, so it would be best to mount the pixhawk inside the fuselage and then do the calibration, but in that case I can only do the 1-axis calibration, and what part of the plane should be level when doing that?. I can do the 3-axis calibration before mounting, and then use AHRS_TRIM_Y to level the horizon until it is level with some part of the plane, but what part?.

I don’t know if any of this make sense, does the Arduplane use the 3-axis calibration at all?
Can someone please tell me the correct way of doing this?

If it were me? I’d calibrate the accel before mounting it. It’s really no different than calibrating when mounted. It’s actually easier and I’m sure would be WAY easier than doing it when mounted to a plane. Disclaimer: I’ve never used Arduplane; only Arducopter.

But if i calibrate it before mounting i would guess that it will give false readings when I mount it on some un-level surface on the plane. That being said, I don’t understand what part of the plane is to be defined as level.


The first thing you need to define is the center of gravity and perhaps the center of lift. Generally speaking the 3 axis of motion are about the center of gravity. The same principles apply to an airplane as to copter. The pixhawk should be aligned with the longitudinal axis of the airplane. The next question is little more tricky: do you want to pixhawk to be parallel to the flight path angle or the longitudinal axis. I don’t know the correct answer. Instinctively, it seem like paralleling the longitudinal axis the right answer, but people smarter than me will have to chime in.


Mounting the pixhawk parallell to the longitudinal axis is one of the possibilities that i feel make sense, that way the pixhawk will know which way the plane is pointing. I didn’t realize that “the longitudinal axis” was a thing, which is why I though that the underside of the wings would be a good indicator for the planes level position.

As I understand from wikipedia I can just draw a line from the tail to the nose and from there find the axis. Take a look at the attached photo and give me your comments.

From other bix3 arduplane setups I have seen on the web I have noticed that people usually just mount the FC directly to the upper or lower internal deck underneath the wings. Both of which deviate from this longitudinal axis, but it seems to be working for them.

I don’t know if it is just me asking difficult questions on a matter that is straight forward, but I find it a bit strange that the arduplane documentation doesn’t mention this at all. It seems that this part of the documentation is just copied from the ArduCopter documentation. In the detailed build documentation for the Bixler (which is added in the documentation appendix) it is stated that the FC should be parallell to the “line of flight”, but how do I know where that is?

As I said, I haven’t found any other questions related to this, making me think that I am missing some basic fundamental knowledge.

Hello Remi,

Technically the longitudinal axis should pass through the center of gravity. From your picture I am guessing the line you drew is close.


1 Like

Thanks. I have made myself a surface inside the fuselage that is level to that line, so I am hoping that will be satisfying for the Arduplane software.

In case anyone else will be reading this in the future, I have a recommendation: Don’t worry about mounting the pixhawk pitch level inside the fuselage, do the accelerometer calibration after mounting it.

I calibrated the accelerometer outside of the fuselage, since it was easier that way, and then spent a lot of time manufacturing a level surface inside the fuselage. When I finally got to the point where I was to power everything up, the pixhawk insisted on doing another accelerometer calibration (I did test it several times before mounting it, and it worked every single time). So all the work I had spent leveling the pixhawk inside the fuselage was for nothing.


Hi Remi! Thank you for your informations. I have a Bix3 and an Ardupilot too and never finished my build, because of the same questions/problems. If I understood you correctly, it is possible to mount the ardupilot directly to the fuselage and calibrate? Have you build some kind of stand or support to fix your plane in the right position? Or did you hold it in your hands and eye measured the position? Thank you in advance!

I moumted it directly to the fuselage using some vibration damping pads. I plased it just behind the slot for the landing gears, between where the two servos are meant to be placed. I have mine mounted in in the tail. Had to cut out some foam that where meant to hold those servos in place to make it wide enough.

There is no need for a platform or anything like that. Just place it pointing forwards (measure by eye). For the accelerometer calibration I leveled the fuselage in such a way that the base of the fuselage that supports the wings (between motor hub and fpv tray) is level. I know that a lot of people have different opinions on what part of the airplane should be take as level, but in my head that place should be level. For my system, 3S 1250kV 9x6, it was a perfect fit with no gain or loss of altitude at 50% throttle.

I fly a Bix3 with a PixHawk. I mounted the PixHawk via foam pads on a thin wooden board, then wedged the board into the foam just behind the tail/rudder servos, with a small bit of velcro on the bottom to keep it from “sliding backwards and out”. My goal was to locate the pixhawk near the CoG of the aircraft… it’s actually 5cm or so in front of the CoG. (which is, no doubt, another 5cm or so in front of the CoP)

I fly successfully with this configuration, but have not done any analysis to demonstrate the quality of this setup.

One thing not really addressed here is the necessity of doing a 6 point IMU calibration. In reality here, can we not just set AHRS correctly and do a one point level calibration? The errors you introduce trying to do a 6-point calibration with a plane are going to be far greater than just doing a good level calibration I would have thought. Same with most multi-rotors. Surely the IMUS cannot be that poorly mounted that we have to be concerned about this.

Am I right? Can any developers confirm?

Remi, Historically the APM autopilots have been mounted to the bixlers on a shelf on top of the battery compartment opening. This is level with the base that the bixler sits on(without landing gear). I have mounted several APM autopilots like this and find that the multiaxis leveling procedure can be completed using that bottom surface as a reference surface. Typically I do not have to use AHRS_TRIM_Y with the autopilot mounted like this. But you can check after your first flight to see what angle of attack the plane is flying and use AHRS_TRIM_Y to make that zero.

And i thaght I’m the only one with this weird question.:sweat_smile:
Tnx for the info Though.


I’ve proposed an update to the documentation about this. Am I wrong?