Holybro Kakute F4 Mini¶
above image and some content courtesy of Holybro
STM32F405RGT6 32-bit processor
MAX7456 OSD chip
MPU6000 IMU (accel, gyro)
7V ~ 42V input power directly from battery
5x PWM outputs
1x RC input PWM/PPM
5x UARTs/serial for GPS and other peripherals
1x I2C port for external compass
micro USB port
Camera and Video TX
128Mb flash for logging
The UARTs are marked Rn and Tn in the above pinouts. The Rn pin is the receive pin for UARTn. The Tn pin is the transmit pin for UARTn.
The pin labeled Rx on each corner of the board is a common pin for ESC telemetry input.
SERIAL0 -> USB
SERIAL1 -> USART1 (TX only for Frsky Telem, no ext inverter needed)
SERIAL3 -> USART3 (RC Input protocols by default. PPM not supported.)
SERIAL4 -> UART4 (GPS/Telem1)
SERIAL5 -> UART5 (RX only, ESC Telemetry protocol by default)
SERIAL6 -> USART6 (GPS2/Telem2)
RC input is configured on the R3 (UART3_RX) pin. It supports all RC protocols except PPM. See Radio Control Systems for details for a specific RC system. SERIAL3_PROTOCOL is set to “23”, by default, to enable this.
SBUS/DSM/SRXL connects to the R6 pin.
SBUS FPort requires connection to T3 and an external bi-directional inverter, see FPort Receivers.
CRSF also requires a T3 connection, in addition to R6, and automatically provides telemetry.
SRXL2 requires a connection to R3 and T3 and automatically provides telemetry. Set SERIAL3_OPTIONS to “4”.
Any UART can be used for RC system connections in ArduPilot also, and is compatible with all protocols except PPM. See Radio Control Systems for details.
The SERIAL5 port (UART5) is for ESC telemetry. It is connected through the motor connector and works out of the box with the Tekko32 F3 Mini which is commonly paired with this autopilot.
FrSky Telemetry is supported using the SmartPort pad (UART1). You need to set the following parameters to enable support for FrSky S.PORT. It has built-in inverters and a diode to allow for operation from a single pin with no special adapters.
SERIAL1_PROTOCOL 4 or 10
The KakuteF4 supports up to 5 PWM outputs. The pads for motor output M1 to M6 on the above diagram are for the 5 outputs. M1-4 outputs support DShot and Bi-Directional DShot, as well as all PWM types. The M5 is defaulted to support serial LEDs instead of PWM but can be changed by changing its default function using SERVO5_FUNCTION and supports Dshot.
The PWM is in 2 groups:
PWM 1 and 2 in group 1
PWM 3 and 4 in group 2
PWM 5 in group 3 (defaulted as serial LED)
Channels within the same group need to use the same output rate, whether PWM or Dshot. If any channel in a group uses DShot then all channels in the group need to use DShot.
The board has a built-in voltage and current sensor. The voltage sensor can handle up to 6S LiPo batteries.
The correct battery setting parameters are:
The KakuteF4 Mini does not have a built-in compass, but you can attach an external compass using I2C on the SDA and SCL pads.
The KakuteF4 supports on-board data flash logging. Use LOG_BACKEND_TYPE = 2)
Loading ArduPilot onto the board¶
Initial firmware load can be done with DFU by plugging in USB with the bootloader button pressed. Then you should load the “with_bl.hex” firmware, using your favourite DFU loading tool. See Loading Firmware onto boards without existing ArduPilot firmware
Once the initial firmware is loaded you can update the firmware using any ArduPilot ground station software. Updates should be done with the KakuteF4Mini firmware files. See Loading Firmware.