the FC should be mounted horizontally and close to the CoG
It’s rather “the default orientation is horizontal”, and if it is not, AHRS_ORIENTATION
is the parameter you need to adjust. In all of my coax builds, the FCs are mounted vertically. It seems that at least in the prototyping phase, the best position is on the back wall of the machine, so that you can do the easy line-of-sight piloting and see all the status LEDs. It appears that in some FCs with an integrated compass, that compass would feel worse if the FC is not in the default horizontal orientation, but you can always use an external one coming with a GPS module - or even no compass at all, and manual modes will still be OK.
The CG offsets can be set up with INS_POSn_{X,Y,Z}
, where the small n
is the number of an IMU (just 1 if the flight controller does not have redundant IMUs). It will still work in the basic scenarios if you don’t, but altitude hold may get confused, so in the case of a reasonably large coax, it’s better to set it correctly.
The drawback of a non-CG location will then be increased measured vibrations along the axis which is far from CG and less sharp tuning in that axis. In a coax, a non-CG location for the entire FC would rather mean it’s above the motors, and the battery is even higher, which is definitely not a dronut design. In a big costly project I would probably use an external IMU chip positioned close to where the CG really is, but I don’t do big costly projects. So, in short,
to be mounted vertically and roughly 50mm away from the central axis
is OK.
Think of a dronut size and shaped thing (without the $10k price tag) with the two fans inside a duct one above the other and everything else distributed inside the walls of the duct.
Exactly the way I did things before SN1, and this works. There are aerodynamic quirks to it, such as the inflow variation of the Coanda effect, which wants to re-orient the machine back to vertical. Unless you have a better airflow simulation capabilities than I am, and unless you know what to do, you would need really sizable flaps. You may see the flap sizes in latest CX7 and SN1 videos - even these are not quite enough (probably for slightly different reasons though).
is any particular flavor of FC a best starting point?
I would say “go H743”. CX7 uses one of Matek H743 wing controllers, which is small enough and does a very good job, and its PDB will have a good choice of power for your servos.
For smaller builds, any Ardupilot-capable AIO with enough current and enough servo pins would also do. SN1 flies FlywooF745-AIO, but it’s explicitly not the best choice, because the 2nd revision you can buy lacks servo outputs, and I had to play with pad assignments and sacrifice a UART for a pair of servo outputs. If the machine is really small, some whoop boards, such as FlywooF405S-AIO, can do the trick, and this one has a plenty of pads for everything. These are not H743, however, so you might (eventually) feel constrained on flash size, RAM and CPU speed.
(I assume you are not afraid of soldering. For small machines, you kind of have to, because connectors etc become a huge overhead)