The Holybro Kakute F4 and F7 flight controllers now support Ardupilot firmware for more advanced and reliable GPS capability. Features include “Return to Home”, “GPS Way-Point” and “Position hold” etc. In this tutorial I will show you how to flash Ardupilot firmware on the Kakute F4 and F7 FC.
Make sure to check out our reviews of the Kakute F4, and Kakute F7 FC.
Further Reading:
How to Flash Ardupilot on Kakute F4 / F7 FC
Simply flash the FC with the Ardupilot firmware using Betaflight Configurator. You can download the firmware on this page:
- Kakute F4: http://firmware.ardupilot.org/Copter/latest/KakuteF4/
- Kakute F7: http://firmware.ardupilot.org/Copter/latest/KakuteF7/
The file you need is: arducopter_with_bl.hex
Depending on what application, the firmware required is different – ArduXXX (Copter. Plane, etc.)_WITH_BL.HEX
Open Betaflight Configurator, go to the firmware flash tab.
Enable “Full chip erase”.
Click on “Load Firmware [Local]” button, and choose the firmware hex file you just downloaded.
Hardware Connection
Kakute F4:
- Connect GPS module to UART 4
- Receiver to UART 3
- Telemetry to UART 6
Kakute F7:
- GPS module to UART 4
- Receiver to UART 6
- Telemetry to UART 1 or 2
No need to press the boot button, just flash it. Then you can forget about Betaflight Configurator. In the future you flash the FC with the .apj files.
Mission Planner Setup
Find “Full Parameter List” and set up as shown in the following. The only thing you need to confirm is the GPS module baud rate, and change “serial4_baud” to the same baud rate. For example, if your GPS baud rate is 38400, you should select 38.
F4:
F7:
After that’s done, setup your radio and sensors and it’s ready to go!
How to Revert Back to Betaflight?
Hold down the boot button while powering up, this will enter DFU mode, then flash the BF firmware for your particular FC.
Credit: Holybro
24 comments
Hi Oscar,
Trying to flash arducopter as suggested with the arducopter_with_bl.hex firmware through betaflight but keep on getting error message – firmware image contains addresses not found on target device.
flashing Betaflight works.
Flashing ardocopter_hex works but keeps the board in DFU mode.
Any ideas on what’s going wrong?
Thanks!
Anyone have a Mission Planner Param List for Kakute F7 hdv I’m having trouble making everything to work
I had trouble using Betaflight Configurator (v 10.7.0) to flash on my non-AIO v1.5 board – after clicking “Flash Firmware” with the local file it went through the erase successfully and then would just hang… It wasn’t working at all and wouldn’t connect to anything (BF or MP), but was able to reflash back to Betaflight after using the button to get into DFU mode. Tried a few times with no luck.
I then tried with STM Cube Programmer (see ardupilot.org/copter/docs/common-loading-firmware-onto-chibios-only-boards.html). Booted in DFU mode and it connected, then flashed with the arducopter_with_bl.hex file per instructions above. Mission Planner was able to recognize the board.
YMMV, but great writeup!
Hola oscar.tengo una kakute f4 v2 aio le cargo el firmaware ardupilot pero sale BRD type _…..
Baro:unable to initiale driver
How would I connect to a crossfire nano and get telemetry? CRSF Rx and Tx to UART 6 for RC link, but what would I connect to UART 1 or 2?
Thanks for the how-to, here my experience:
When I tried to flash ardupilot_with_bl.hex betaflight-configurator did nothing when I clicked on Flash.
However, cleanflight-configurator (2.4.0) did the trick, no idea why ^^
tested with mint20 and win10 -> same behavior
I had the same issue with DFU mode after flashing Ardupilot.
To be able to enter DFU you need to disconnect the GPS / Compass module from the serial port and I2C ! This prevented me to enter in DFU.
I was able to reflash BF after
Anyone know if the mavlink (sik radio) works straiggt out ofthe box? With the f4 version it took me ages to work out , you must remove the resistor asi thought it only applied to receiver signal, as seemsgps into uart3 works fine but telemtry wouldnt unless i unpluggged the gps, anyway any advice about thisnewboard will behelpful- cheers Tim M
When I click the arudbopter_with_bl.hex nothing comes up to download just displays a page with random numbers so how do I go about downloading that hex file for the Kakute F4?
Is it possible to flash PX4 to the KakuteF7?
Hello, I am trying to build a small Hexa with this setup. How do I get the ESC calibration done? The method that is mentioned in the Ardupilot page does not seem to work with the KakuteF7. Also the Motors mapping seem to be wrong. I have connected M1-Motor 1 and so on as shown here ardupilot.org/copter/docs/connect-escs-and-motors.html
Thanks
I’m the only one that can’t have current current measurement? If show alvays 0,39 Ah, this is my setup :
BATT_MONITOR 4
BATT_VOLT_PIN 13
BATT_CURR_PIN 12
BATT_VOLT_MULT 10,98264
BATT_AMP_PERVLT 17.0
*** WARNING ***
Oscar,
Please update your post to WARN people that it is a ONE-WAY street if you flash ChibiOS and Ardupilot onto the Kakute F7. Holybro’s comments are incorrect. YOU WILL NOT BE ABLE TO ENTER DFU IN BETAFLIGHT TO FLASH BACK TO BETAFLIGHT !!!!!! I now have a Kakute F7 running Ardupilot fine BUT it’s useless to me since I am wanting to revert to Betaflight. Sigh ….
I have been able to revert it bud.
Just hold the dfu button on power up and flash betaflight again.
Oscar,i got the Kakute f7 running arducopter this weekend. I can’t get frsky telemetry working though. Any info on how to get it to work? Ardupilot docs have no info on the Kakute f7 for telemetry.
Hi, very helpful. I too can’t get frsky telemetry working with the non AIO F7. The radio is receiving the telemetry there is just no data. I’m guessing the the 4InOne ESC is not communications to the FC because the associated USRT is not set up. Oscar, did you get voltage and current data to the radio? Can you publish your Full Parameters? Thx
Hello Oscar, thanks for this article. Does this FC have an onboard compass and if not won’t I need to connect an external one to the I2C (SCA/SCL) ?
No compass on the Kakute F7. Use external GPS with compass on SDA/SCL i2c.
I’m trying to use external GPS/Compass (mRo uGPS+Compass) and it is not being recognized in MissionPlanner. Did you do that or have some tip?
Great information Oscar, thanks for your help! Can you proporcionate information about other fc, for example matek f405 y f722?. Thanku
I am not sure if their FC supports Ardupilot, best to check with Matek directly.
Hi Oscar,
A timely article, I was just planning to give this a shot as ardupilot is becoming more available on f4.
Any particular reason for the uarts as they are suggested? I suppose they can be remapped in ardupilot?
Thx
those are just suggestions form Holybro for beginners, you can change the connections.
For me GPS only worked on UART 3 (F7 AIO). For current and voltage measurement, I just had to set “batt monitor = 4” (voltage pin 13, current pin 12). OSD workes as well. Thank you for your How-to!