Holybro Kakute F4¶
above image and some content courtesy of Holybro
STM32F405RGT6 32-bit processor
InvenSense ICM20689 IMU (accel, gyro) on vibration isolating foam
7V ~ 42V input power directly from battery
4x PWM outputs
1x RC input PWM/PPM
5x UARTs/serial for GPS and other peripherals
1x I2C port for external compass
micro USB port
Where to Buy¶
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 -> UART6 (Telem1)
SERIAL2 -> UART1 (FrSky S.Port)
SERIAL3 -> UART4 (GPS)
SERIAL4 -> UART5 (ESC Telemetry, RX only)
SERIAL5 -> UART3 (RX is used for RC input, TX only)
The R3 pin, which by default is mapped to a timer input, can be used for all ArduPilot supported receiver protocols, except CRSF/ELRS and SRXL2 which require a true UART connection. However, FPort, when connected in this manner, will only provide RC without telemetry.
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.
The KakuteF4 supports up to 4 PWM outputs. The pads for motor output M1 to M4 on the above diagram are for the 4 outputs. All 4 outputs support DShot as well as all PWM types. The M5 and M6 outputs are not currently available with ArduPilot.
The PWM is in 2 groups:
PWM 1 and 2 in group 1
PWM 3 and 4 in group 2
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 AIO 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.
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.
Once the initial firmware is loaded you can update the firmware using any ArduPilot ground station software. Updates should be done with the xxxxxxxxxx.apj firmware files.
If you are using a Kospi1 you may wish to load the default parameter file found here or if you are using the Mission Planner it can be conveniently loaded from the Config/Tuning >> Full Parameter Tree screen. Select “Holybro-kospi1.param” from the drop-down and then push the “Load Presaved” button.