Building an H Frame

Greetings everyone and thank you for reading.

What are the main challenges and considerations when building and H Frame quad?

The frame must be stiff.

1 Like

The H frame must be in the shape of an X then select X in parameters :grinning:

2 Likes

Yes that is intent of the design

Is this really the intent? Note how the arms are connected to the frame for an actual “H”.


Many mistakenly choose this when X is actually correct for what they have.

Yes this is the really. What is the issue?

Rigidity is usually terrible, and there is rarely a practical reason to choose this configuration over a simple X.

2 Likes

You can also build it sideways if you re-configure the motors. The real question is how big and how much you want to spend?

As far as ArduCopter is concerned, does it really care if the physical layout of the quad is X or H? The motor geometry is the same if you ignore the frame, isn’t it? I’ve been running an X quad set up as H in ArduCopter for the last several years because I wanted “motors out” and didn’t know how to make a custom motor config. It’s one of the best flying Ardu quads I own.

Yeap, it doesn’t matter.

Why specifically motors out?

When you fly through trees and catch the edge of the quad on a stray branch/leaves, props-out kicks the branch/quad away from each other rather than sucking them together and pulling the quad into the tree/large weed/race gate/etc… If you are proximity flying, you are much more likely to get away with an edge strike running props out.
If you aren’t flying proximity, then there is no advantage. In fact, I’ve heard some smaller quads fly better with props in for handling prop-wash. I can’t confirm that.

1 Like

Use Betaflight-X Reversed then.
Arducopter H Frame has different arm to frame geometry than X and it doesn’t make sense to use H on an X for motor direction purposes.

Betaflight-X Reversed wasn’t an option when I built the quad. If it was, it was my first ArduCopter build and I couldn’t find that option or I would have used it. (5+ years ago)

What’s the difference in the geometry? Will I need to retune everything if I make that change? Thanks.

Just looking above, one of the Devs says it doesn’t matter? Maybe once Spring is here, I’ll save all my current settings and try a fresh firmware and tune on this quad on the Betaflight-X Reversed.

It’s in the Docs Motors Note how the arms are connected to the frame thru a common link with H. This is not a common Frame type and there are no good reasons to build one like it that I can think of.
BF-R
Q-H
F-Type
Yes, you may have to re-tune.

It does matter between Quad H and Quad X or BetaFlight Reversed X.

From the motor matrix source:

MOTOR_FRAME_TYPE_H: {
        // H frame set-up - same as X but motors spin in opposite directions

I took a pretty decent dive through the source code and couldn’t find anywhere that a Quad H frame type differs from an X other than motor direction, so it seems the decision is mostly semantic. @dkemxr, if you know of a functional difference I’m missing, I’m happy to be corrected.

I do agree that the physical setup of a true H frame is ungainly and likely never truly practical, but I don’t see an issue with choosing the H frame type parameter on an X frame.

If your Copter is flying well, I’d suggest not changing it unless further info comes to light.

Only anecdotally Yuri so the code is definitive. Having built frames in various geometries and trying X, H and V for some of them I thought I perceived a difference. But perception isn’t fact so I think your advice is sound.

Sorry Dave. I should have said, what is the difference in geometry between the motors. I know the frame is physically different between and X and an H. My point is that the motors are all equidistant from the center point of the frame, and from each other around the “box” or through the center point of the frame. Other than motor assignment and direction settings in Ardu and the ESC, I don’t see any difference in how Ardu will control the motors to get the desired responses from the quad.

Not trying to argue here. I just don’t think we are on the same page yet. The only thing I could think of is that the default tune on an H might be “softer” because the design is likely not as rigid as an X design?

EDIT: Thanks Yuri. I was going to switch over to see if I felt anything different…but it requires rewiring the motor channels…so I’ll hold off until Spring.

I think I’ve read similar on the forum, and it might be a misperception of a developer comment that H frames tend to be less rigid than X, creating different frame resonance/harmonic mode characteristics, which could have led us to collectively believe that H frames are somehow handled differently behind the scenes.

Practically speaking, ArduPilot doesn’t care how the motors are physically attached to the frame - only what their positions are relative to the center of mass. All of the ensuing resonance issues would be handled by the same filters, and one would expect a proper tune to differ wildly from a similar size/weight X frame with identical motors and props.

The V frame type motor matrix does differ and places the rear motors closer to the longitudinal axis, so selecting “V” would be a critical step in configuring a Copter with that physical layout. Depending on how asymmetric the frame is, it might actually be more appropriate to select “X,” as well, though!

If you wanted to make the change, you don’t have to rewire. You just change the positions of the Motor1-Motor4 servo outputs to match the BETAFLIGHT_X order. Should be fairly trivial (make use of Mission Planner’s motor test!), and my bet is that the tune will otherwise remain identical.

I thought of that after I saved the edit, but I think I’ll just wait until Spring and do a fresh firmware and fresh setup from scratch on this quad. I have some of the parameters outside of suggested values, so I want to do a fresh attempt on the latest firmware and see what I get without as much custom tweaking. Thanks though.