Skip to main content

MicoAir H743 AIO — User Manual

An AIO puts the flight controller and the 4-in-1 ESC on a single board. One board instead of a stack, one battery connection, no ribbon cable between the two halves, and a 25.5 × 25.5 mm mounting pattern that fits frames a 30.5 × 30.5 stack will not.

Both boards pair an STM32H743 flight controller with dual BMI088 + BMI270 IMUs and a 32-bit AM32 4-in-1 ESC.

MicoAir H743 V2 AIO with 45A AM32 ESC

The two boards

MicoAir743-AIO-35AMicoAir743v2-AIO-45A
ESC current35 A × 445 A × 4
BarometerDPS310SPL06
ArduPilot targetMicoAir743-AIOMicoAir743v2
UARTs1, 2, 3, 4, 6, 7, 8 (UART7 = ESC telemetry, internal)1, 2, 3, 4, 5, 6, 8
ESC firmwareAM32_MICOAIR_743_AIO_F421_2.17AM32_F4A_4IN1_F421_2.19
ESC MCUAT32F421

Everything else is shared:

ItemSpecification
MCUSTM32H743VIH6, 480 MHz, 2 MB flash
IMUBMI088 + BMI270 (dual)
CompassNone on board — external via I2C
Analog OSDNone — HD only, over MSP DisplayPort
LoggingmicroSD card slot
OutputsM1–M8, DShot and bi-directional DShot in hardware
Other1× I2C, 1× SWD, 2× ADC, LED strip pad, buzzer, BOOT button
USBType-C
ESC48 kHz PWM; PWM / DShot300 / DShot600 / bi-directional DShot
Battery input3–6S (≈ 10–27 V)
BEC5 V 2 A + 12 V 2 A
HD VTXSH1.0-6P, MSP DisplayPort on UART2, 12 V on pin 1
Mounting25.5 × 25.5 mm, Φ3 mm
Dimensions / weight36 × 36 × 8 mm / 10 g
FirmwareArduPilot, PX4, INAV, Betaflight, Skybrush
Two boards, two different ArduPilot targets

The 743-AIO-35A has its own ArduPilot target, MicoAir743-AIO. The 743v2-AIO-45A does not — it shares MicoAir743v2 with the standalone flight controller, so there is no AIO-named target to pick for it.

That means the obvious instinct is wrong in both directions: on one board you must use the AIO target, and on the other there is no AIO target and choosing something AIO-shaped would be a mistake. Read the target name character by character. See the Firmware Flashing Guide.

Where to buy

Ships from Canada with free Canada-wide shipping:

MicoAir H743 AIO with 35A AM32 ESC, 25.5 x 25.5 mm

What an AIO trades away

Worth knowing before you choose one over a stack.

No compass. The standalone H743 V2 has a QMC5883L on board; these do not. For GPS flight you need an external compass on the I2C pads — which is what most serious builds use anyway, since a compass next to power wiring is a compromised compass.

This has a second consequence that catches people: ArduPilot's automatic compass orientation detection cannot work, because it deduces the external compass's rotation by comparing it against a working internal compass. With no internal compass there is nothing to compare against. Set COMPASS_ORIENT by hand — see External Compass Orientation, which covers the AIO case specifically.

No analog OSD. There is no AT7456E, so an analog video feed gets no overlay. These boards are built for HD: MSP DisplayPort on UART2 to a DJI O3/O4 or similar. ArduPilot's default OSD type on these boards is already MSP DisplayPort (OSD_TYPE = 5).

Less BEC current. 5 V at 2 A, against 3 A on the standalone H743 V2. Enough for a receiver, GPS and a sensor or two; worth checking if you plan to hang much off the 5 V rail.

Repairs are all-or-nothing. A damaged ESC channel on a stack means replacing the ESC. On an AIO it means replacing everything.

In exchange you get a smaller, lighter, simpler build with one less connector to come loose.

Mounting

  • 25.5 × 25.5 mm, Φ3 mm holes, on insulated soft standoffs. Do not let a screw or a carbon plate touch pads or components.
  • Board arrow toward the nose, component-marked side up. Mounted any other way, set the board orientation — see Flight Controller Board Orientation.
  • Keep the ESC MOSFET area ventilated. Do not cover it with foam, double-sided tape or a wiring loom. The continuous current rating assumes the board can shed heat, and on an AIO the ESC is sitting directly under your flight controller.

Power

PadVoltageForWatch out
VBAT3–6S (≈10–27 V)main power for board and ESCNever reverse polarity — check before the first connection
5V5 Vreceiver, GPS, optical flow, rangefindertotal load ≤ 2 A
12V12 VDJI O3 / O4 / O4 Pro, camerasnever to a 5 V-only device
GND0 Vpower and signal ground
Pin 1 of the HD VTX connector is 12 V

Check the plug direction and pin order against the interface diagram before connecting a video transmitter. Getting it wrong can destroy the video transmitter and the board together.

UART mapping (ArduPilot)

MicoAir743v2-AIO-45A:

ArduPilotPhysicalDefault use
SERIAL0USBground station
SERIAL1UART1MAVLink2
SERIAL2UART2DisplayPort (HD VTX)
SERIAL3UART3GPS
SERIAL4UART4MAVLink2
SERIAL5UART5general purpose
SERIAL6UART6RC input
SERIAL8UART8general purpose

MicoAir743-AIO-35A:

ArduPilotPhysicalDefault use
SERIAL0USBground station
SERIAL1UART1MAVLink2
SERIAL2UART2VTX-HD / DisplayPort
SERIAL3UART3GPS
SERIAL4UART4MAVLink2
SERIAL5UART6RC input
SERIAL6UART7ESC telemetry — internal, already wired
SERIAL7UART8general purpose

Note the 35A board wires ESC telemetry internally on UART7. That is a genuine AIO advantage: on a stack it is a wire you have to remember.

Outputs

M1–M8, all supporting DShot and bi-directional DShot in hardware — whether you can use bi-directional DShot depends on the flight controller firmware (ArduPilot and Betaflight yes; PX4 and INAV not currently).

Timer groups, which must share a compatible protocol and frequency:

GroupOutputs
11, 2, 3, 4
25, 6
37, 8 (plus the LED pad, PWM11, on the 45A board)

On the 45A board, configuring the LED pad for serial LEDs constrains outputs 7 and 8 to compatible settings.

ESC protocol

Start with DShot300. The integrated AM32 ESC does not accept the flight controller's default PWM output — set the protocol before you wonder why nothing spins.

Frame type: these boards do not default to plain "X"

ArduPilot's hardware definition for the MicoAir743-AIO target sets the default frame type to BetaFlightX, not standard X. The two put every output on a different corner:

OutputStandard XBetaFlightX
M1front right, CCWrear right, CW
M2rear left, CCWfront right, CCW
M3front left, CWrear left, CCW
M4rear right, CWfront left, CW

Choose whichever matches how you actually wired the motors, then confirm it with the motor test before fitting propellers.

Receiver

UART6 is the default RC input.

ProtocolWiringNotes
SBUSsignal → RX6one-way signal, plus power and GND
CRSF / ELRSreceiver TX → RX6, receiver RX → TX6telemetry supported
FPortsignal → TX6single-wire bidirectional
DSM / SRXLsignal → RX6check the receiver's supply voltage
SRXL2signal → TX6set the serial options ArduPilot requires
PPMnot supporteduse a serial receiver protocol

To move RC to another UART on ArduPilot, set that port's SERIALn_PROTOCOL = 23 and change the original RC port's protocol to something else — then re-check failsafe behaviour before flying.

Battery monitoring

Both boards ship with the same scaling:

ParameterArduPilot / PX4Betaflight / INAV
Voltage factor21.12211
Current factor14.14707
These defaults actually match — unlike a flight controller plus a separate ESC

On a stack, the flight controller's default current scaling is a guess about an ESC it has never met, and is usually wrong. Here the ESC is part of the board, so the default describes the sensor that is genuinely fitted. Still verify it: compare the mAh the flight controller reports with what your charger puts back in, and scale the current factor by the ratio.

Firmware

FirmwareTarget
ArduPilotMicoAir743-AIO (35A) · MicoAir743v2 (45A) — official from 4.6.0
PX4micoair_h743-v2 — official from 1.16.0
INAVMICOAIR743V2_EXTMAG — from 8.0.1 RC1
BetaflightMicoAir743v2 builds
SkybrushArduPilot-derived, for drone light shows

Note the INAV target ends in _EXTMAG — the external-magnetometer build, which is the correct choice here precisely because these boards have no internal compass. An intmag build would never see your GPS module's compass.

Flashing procedure, DFU mode and file formats: Firmware Flashing Guide.

Easily confused points

The two AIOs use different ArduPilot targets. MicoAir743-AIO for the 35A; MicoAir743v2 for the 45A. There is no MicoAir743v2-AIO target.

No compass means no compass auto-detection. Set COMPASS_ORIENT manually.

INAV needs the _EXTMAG build, for the same reason.

No analog OSD. HD DisplayPort or no overlay.

5 V is 2 A here, not 3 A. Less headroom than the standalone board.

"X" and "BetaFlightX" are different frame types and this board defaults to the second.

The ESC is under the flight controller. Its heat has nowhere else to go — leave the MOSFET area uncovered.

Troubleshooting

SymptomWhere to look
Motors do nothingESC protocol not DShot300; flight battery not connected (USB does not power the ESC).
Motors on the wrong cornersFrame type — standard X vs BetaFlightX. Confirm with the motor test.
Compass not detectedExternal compass wiring on I2C; on INAV/Betaflight, the wrong build (intmag instead of extmag).
Heading wrong by a constant angleCOMPASS_ORIENT — auto-detection cannot work on this board.
No OSD on an analog feedThere is no analog OSD chip. HD only.
USB not recognisedCharge-only cable, or an under-powered hub. Try a data cable in a direct port.
Board runs hot under loadESC ventilation — check nothing covers the MOSFET area.

Written and maintained by the Robofusion engineering team.