Docs directory
Table of contents

MicoAir743v3 Flight Controller User Manual

Product Overview

MicoAir743v3 is MicoAir Tech's next-generation flagship H7 flight controller for multirotors and autonomous flight platforms, building on the MicoAir743v2. It features a 480 MHz STM32H743VIT6 MCU, dual high-performance IMUs (BMI088 + ICM45686), a SPA06 barometer, an onboard IST8310 magnetometer, an AT7456E analog OSD chip, and a microSD card slot for flight logs.

The controller provides 7 UARTs, 11 PWM outputs, 1 CAN interface, 1 I²C interface, two BEC outputs, a digital video transmitter (VTX) interface, and onboard dual-mode Bluetooth telemetry. It supports open-source firmware including ArduPilot, PX4, INAV, and Betaflight.

MicoAir743v3 flight controller

Compared with v2, MicoAir743v3 features upgraded sensors for improved performance and adds a CAN interface for the growing range of CAN peripherals. The SD card interface has been optimized to meet the high-speed storage requirements of certain firmware platforms. The onboard Bluetooth module now supports both SPP and BLE for more convenient connectivity. The power circuitry has also been refined, with switchable 9 V power for the VTX.

MicoAir743v3 features

Key Features

  • STM32H743VIT6, 480 MHz, 2 MB Flash
  • Dual IMUs: BMI088 + ICM45686
  • SPA06 barometer and onboard IST8310 magnetometer
  • AT7456E analog OSD and MSP DisplayPort support for digital FPV systems
  • 7 UARTs, 11 PWM outputs, 1 CAN interface, 1 I²C interface, and 1 SWD interface
  • microSD card slot for flight log storage
  • Onboard SPP/BLE dual-mode Bluetooth telemetry, internally connected to UART8 at a default baud rate of 115200
  • Two BEC outputs: 4.6 V / 2 A and 9 V / 2 A; the 9 V output supports GPIO-controlled switching
  • 2–6S battery input, 6–27 V
  • Support for ArduPilot, PX4, INAV, and Betaflight firmware

Purchase

MicoAir Tech Store

Hardware Specifications

Processor and Sensors

ItemSpecification
MCUSTM32H743VIT6, 480 MHz, 2 MB Flash
IMUsDual IMUs: BMI088 + ICM45686
BarometerSPA06
Onboard magnetometerIST8310
Analog OSDAT7456E
Log storagemicroSD card slot

Interfaces and Outputs

ItemCount / Description
UART7; UART8 is internally connected to onboard Bluetooth, and UART7 exposes RX only for ESC telemetry
PWM11 outputs; PWM1–PWM8 support DShot and bidirectional DShot, subject to firmware support
CAN1
I²C1
SWD1
ADC2 inputs: battery voltage and current sensing
USBUSB Type-C
Digital videoDJI O3/O4-compatible interface with MSP DisplayPort support
ReceiverUART6 is the default RC input; other UARTs can also be used with ArduPilot
OtherBuzzer, addressable LEDs, and BOOT button/pads

Power and Dimensions

ItemSpecification
Battery input2–6S, 6–27 V
4.6 V BECUp to 2 A for receivers, GPS modules, optical flow sensors, and other peripherals
9 V BECUp to 2 A for VTXs, cameras, and other peripherals; GPIO-controlled switching supported
Mounting hole spacing30.5 × 30.5 mm
Mounting hole diameter4 mm
Dimensions36 × 36 × 8 mm
Weight10 g

Dimensions and Installation

MicoAir743v3 dimensions

Follow these guidelines when installing the flight controller:

  1. Use the 30.5 × 30.5 mm mounting pattern. Ensure that screws and washers do not contact components on the board.
  2. Use vibration-damping mounts where possible. Tighten them evenly without bending the board.
  3. Point the arrow on the flight controller toward the front of the aircraft. If the installation requires a different orientation, set the corresponding board orientation parameters in the firmware.

Interfaces and Power Supply

Connector Pinouts

MicoAir743v3 interface reference

Typical Wiring

MicoAir743v3 wiring diagram

Power Connections

PinVoltageTypical UseNotes
VBAT6–27 VMain power input for the flight controllerConnect only a 2–6S battery or an equivalent power supply
4V64.6 VPower for receivers, GPS modules, optical flow sensors, rangefinders, and other peripherals
9V9 VPower for DJI air units, cameras, and other peripheralsDo not connect devices rated for 5 V only
GND0 VCommon ground for power and signals

Pin 1 of the digital video connector supplies 9 V. Before connecting a DJI O3/O4 air unit or another VTX, verify the pin order and the device's input voltage requirements. Do not connect 9 V to a receiver, GPS module, or camera rated for 5 V only.

Serial communication usually requires TX, RX, and GND. Connect the flight controller's TX to the peripheral's RX, and its RX to the peripheral's TX. For a unidirectional protocol, connect only the signal line required by that protocol, along with the appropriate ground connection.

Serial Port Mapping

ArduPilot Serial Port Mapping

ArduPilot PortPhysical InterfaceDefault Function / Features
SERIAL0USBUSB virtual serial port
SERIAL1UART1MAVLink2, DMA supported
SERIAL2UART2DisplayPort, DMA supported
SERIAL3UART3GPS, DMA supported
SERIAL4UART4MAVLink2, DMA supported
SERIAL5UART6RC input, DMA supported
SERIAL6UART7ESC telemetry, DMA supported
SERIAL7UART8Onboard Bluetooth telemetry, DMA supported

PX4 Serial Port Mapping

PX4 DevicePX4 Port NamePhysical Interface
ttyACM0USBUSB virtual serial port
ttyS0TELEM1UART1
ttyS1TELEM2UART2
ttyS2GPS1UART3
ttyS3TELEM3UART4
ttyS4RCUART6
ttyS5URT6UART7
ttyS6TELEM4 / SERIAL4UART8

UART8 is used by the onboard Bluetooth module. Its default baud rate is 115200.

PWM Outputs

MicoAir743v3 provides up to 11 PWM outputs: 10 motor outputs and one output shared with the LED function. PWM1–PWM8 have hardware support for DShot and bidirectional DShot; availability depends on the installed firmware and its version.

PWM Timer Groups

GroupChannelsNotes
Group 1PWM1, PWM2, PWM3, PWM4Channels in the same group generally require compatible output protocols and rates
Group 2PWM5, PWM6The same timer-group restrictions apply
Group 3PWM7, PWM8, PWM11PWM11 is also used for addressable LEDs
Group 4PWM9, PWM10The same timer-group restrictions apply

Different output protocols generally cannot be mixed arbitrarily within the same timer group. When changing the PWM protocol, output rate, or addressable LED configuration, check all channels in that group together.

When PWM11 is configured for addressable LEDs, PWM7 and PWM8 are subject to the same timer-group restrictions and may also be limited to LED-compatible configurations. Follow the output grouping rules for your installed firmware.

ESC Protocol Recommendations

  • Standard PWM ESCs: select a standard PWM protocol supported by the firmware.
  • DShot ESCs: DShot300 is generally a good starting point, balancing reliability and bandwidth.
  • Bidirectional DShot: both the flight controller firmware and ESC firmware must support it.

Remove all propellers before testing motors. Verify motor numbering, rotation direction, and failsafe behavior before reinstalling the propellers and proceeding with controlled ground tests.

Receivers

UART6 is the default RC input. With ArduPilot, other available UARTs can also be configured according to the receiver protocol's requirements.

ProtocolRecommended WiringNotes
SBUSReceiver signal → RX6Usually requires one signal wire, plus ground and power
DSM / SRXLReceiver signal → RX6Supply power at the voltage required by the receiver
FPortReceiver signal → TX6Single-wire, half-duplex protocol
CRSF / ELRSReceiver TX → RX6; receiver RX → TX6Supports telemetry over CRSF when correctly configured
SRXL2Receiver signal → TX6In ArduPilot, set SERIAL5_PROTOCOL = 23 and SERIAL5_OPTIONS = 4
PPMNot supportedUse a serial receiver protocol instead

If a CRSF/ELRS receiver is not detected, first check that TX and RX are crossed correctly, the supply voltage is correct, and UART6 is not assigned to another function. Do not identify pins by wire color alone.

OSD and Video Interfaces

MicoAir743v3 provides both AT7456E analog OSD and MSP DisplayPort support for digital FPV systems such as DJI O3/O4.

Analog OSD

  • Onboard chip: AT7456E
  • In ArduPilot, set OSD_TYPE = 1 to enable the MAX7456-compatible driver.
  • Before use, check the camera's video standard, video input/output wiring, and firmware support.

MSP DisplayPort / DJI O3/O4

  • Connect the digital VTX using the SH1.0-6P connector.
  • UART2 is used for MSP DisplayPort by default.
  • The video connector supplies 9 V.
  • OSD features and configuration procedures vary by firmware version. Refer to the documentation for your installed firmware.

Before connecting the VTX, confirm again that pin 1 supplies 9 V. Incorrect wiring can damage both the VTX and the flight controller.

Battery Monitoring, Magnetometer, and I²C

Battery Voltage and Current Monitoring

The flight controller has onboard voltage sensing and receives the current sensor signal through the ESC connector. It supports batteries up to 6S.

The default parameters in the official ArduPilot hardware definition are listed below:

ParameterDefault ValueFunction
BATT_VOLT_PIN10Voltage-sensing ADC input
BATT_CURR_PIN11Current-sensing ADC input
BATT_VOLT_MULT21.2Voltage divider multiplier
BATT_AMP_PERVLT40.2Current sensor scaling factor (A/V)

The current sensor scaling factor depends on the sensor circuitry in the ESC. The values above are MicoAir743v3 defaults and are not suitable for every ESC. Adjust them for the hardware you are using.

Magnetometer

  • Onboard magnetometer: IST8310
  • An external magnetometer can be connected to the I²C SDA / SCL pins.
  • High-current wiring, buzzers, magnets, and motors can cause magnetic interference.

For applications requiring greater heading accuracy, use an external GPS/compass module mounted away from the power system, and recalibrate the compass after completing the aircraft assembly.

Connecting via Bluetooth

The onboard Bluetooth telemetry module is internally connected to UART8 at a default baud rate of 115200. It supports both SPP and BLE. SPP offers broad compatibility and can be used with apps such as QGroundControl on Android. BLE provides a quick, convenient connection but requires compatible software. Both MicoConfigurator and MicoPilot support BLE connections to MicoAir743v3, making BLE the generally recommended option.

Bluetooth can be used for ground-based parameter configuration and flight controller status monitoring.

Enabling Bluetooth Power (Enabled by Default)

  1. Power on the flight controller normally and wait at least 3 seconds.
  2. Check the blue Bluetooth power LED.
  3. If the LED is off, press and hold the BOOT button for approximately 2 seconds to turn Bluetooth on.
  4. Press and hold the button again to turn Bluetooth off. The on/off state is retained after power is removed.

Connecting via BLE in MicoConfigurator

In the connection dialog, select Bluetooth BLE, then click Select Device. In the Bluetooth device picker, select the device named MicoAir743v3-xxxxx and click Pair.

Selecting MicoAir743v3 in the Bluetooth device picker

Once paired, the device name appears in the connection dialog. Click Connect. MicoConfigurator will establish the Bluetooth connection and begin loading the flight controller parameters.

Connecting to the selected Bluetooth device in MicoConfigurator

The green Bluetooth status LED on the flight controller stays on once the Bluetooth connection is established.

Connecting via BLE in MicoPilot

Open MicoPilot, tap Connect in the upper-right corner, and select Bluetooth as the connection method.

Selecting Bluetooth in MicoPilot

The Bluetooth connection dialog automatically scans for nearby devices. Wait a few seconds, then select MicoAir743v3-xxxxx from the list to pair with it. MicoPilot will automatically connect to the flight controller and begin loading its parameters. This typically takes 4–5 seconds with ArduPilot firmware. Actual connection time may vary.

Selecting MicoAir743v3 from the MicoPilot Bluetooth device list

Flight Controller Firmware

MicoAir743v3 supports ArduPilot, PX4, INAV, and Betaflight.

MicoConfigurator is a browser-based flight controller configuration tool for Windows, macOS, and Linux. It can be used to configure and troubleshoot the flight controller, and to update firmware using online downloads, local files, or DFU mode.

MicoConfigurator interface

Open MicoConfigurator in Chrome or Edge. After entering DFU mode, select the board and firmware in the browser to flash the flight controller. Windows requires a DFU driver.

ArduPilot

PX4

INAV

Betaflight

Firmware Flashing and Recovery

Updating Firmware

  1. Back up the current parameters.
  2. Use MicoConfigurator or Mission Planner to update to stable firmware online.
  3. After flashing is complete, power-cycle the flight controller.

Entering DFU Mode

  1. Disconnect the flight controller from its power supply and USB.
  2. Press and hold the BOOT button.
  3. While holding the button, connect the USB Type-C cable.
  4. Release the button once the computer detects the DFU device.
  5. Select the correct firmware target on the firmware/DFU page in MicoConfigurator and flash the firmware.

In DFU mode, the flight controller does not appear as a serial port in Device Manager as it does when normal firmware is running, and the LED indicators do not operate. This is normal.

Appendix A: MCU Pin Assignments

This table is primarily intended for low-level driver development and hardware debugging. It is generally not needed for routine assembly or parameter configuration.

CategoryDevice / FunctionBus / PeripheralSignalMCU Pin
IMUICM45686SPI3MOSIPC12
IMUICM45686SPI3MISOPC11
IMUICM45686SPI3SCLKPC10
IMUICM45686SPI3ICM45686_CSPA15
IMUICM45686GPIOICM45686_DRPD2
IMUBMI088SPI2MOSIPC3
IMUBMI088SPI2MISOPC2
IMUBMI088SPI2SCLKPD3
IMUBMI088SPI2BMI088_GYRO_CSPD5
IMUBMI088SPI2BMI088_ACCEL_CSPD4
IMUBMI088GPIOBMI088_GYRO_DRPC15
IMUBMI088GPIOBMI088_ACCEL_DRPC14
BarometerSPA06I2C2SCLPB10
BarometerSPA06I2C2SDAPB11
BarometerSPA06GPIOSPL06_DRPD0
MagnetometerIST8310I2C2SCLPB10
MagnetometerIST8310I2C2SDAPB11
Motor outputPWMTIM1/CH4M1PE14
Motor outputPWMTIM1/CH3M2PE13
Motor outputPWMTIM1/CH2M3PE11
Motor outputPWMTIM1/CH1M4PE9
Motor outputPWMTIM3/CH4M5PB1
Motor outputPWMTIM3/CH3M6PB0
Motor outputPWMTIM4/CH1M7PD12
Motor outputPWMTIM4/CH2M8PD13
Motor outputPWMTIM15/CH1M9PE5
Motor outputPWMTIM15/CH2M10PE6
LED stripPWMTIM4/CH3—PD14
BuzzerGPIO——PD15
VTX power controlGPIO——PE15
OSDAT7456ESPI1MOSIPA7
OSDAT7456ESPI1MISOPA6
OSDAT7456ESPI1SCLKPA5
OSDAT7456ESPI1OSD_CSPB12
External crystalExternal8 MHzOSC_INPH0
External crystalExternal8 MHzOSC_OUTPH1
Status LEDGPIO_OUTPUTRED—PE3
Status LEDGPIO_OUTPUTBLUE—PE4
Status LEDGPIO_OUTPUTGREEN—PE2
Button—BOOT—BOOT0
CAN—CAN1TXPB9
CAN—CAN1RXPB8
I2C—I2C1SDAPB7
I2C—I2C1SCLPB6
UART—UART1TXPA9
UART—UART1RXPA10
UARTVTX-HDUART2TXPA2
UARTVTX-HDUART2RXPA3
UARTGPSUART3TXPD8
UARTGPSUART3RXPD9
UART—UART4TXPA0
UART—UART4RXPA1
UARTRCINUART6TXPC6
UARTRCINUART6RXPC7
UARTESC_TelemetryUART7RXPE7
UARTBluetooth TelemetryUART8TXPE1
UARTBluetooth TelemetryUART8RXPE0
USB—USBUSB_DMPA11
USB—USBUSB_DPPA12
SD card—SDMMC2D0PB14
SD card—SDMMC2D1PB15
SD card—SDMMC2D2PB3
SD card—SDMMC2D3PB4
SD card—SDMMC2CLKPD6
SD card—SDMMC2CMDPD7
Debug interface—SWDSWDIOPA13
Debug interface—SWDSWCLKPA14
Battery sensingVoltage divider ratio 1:21ADCVoltagePC0
Battery sensing—ADCCurrentPC1