Hello everyone. I am currently developing a custom flight controller. I want to setup an IO board to connect with the FMU, but I couldn’t understand how to setup the IO controller. Do I need to program it separately or are the programs included in the FMU firmware? Where can I get the bootloader for the IO firmware?
There are a couple of pieces:
- You need to flash the IO bootloader (PX4-Autopilot/boards/px4/io-v2/extras/px4_io-v2_bootloader.bin at a294e011ab1aac3fc3a2239c33eaa1326b914dab · PX4/PX4-Autopilot · GitHub) I’m not sure how to create this binary. (Check also the make target
make px4io_update
.) - The IO binary is built as part of the FMU firmware and included as a .bin. Have a look at e.g. PX4-Autopilot/boards/px4/fmu-v6x/extras/px4_io-v2_default.bin at a294e011ab1aac3fc3a2239c33eaa1326b914dab · PX4/PX4-Autopilot · GitHub.
You can flash the IO firmware doing px4io update
in the Nuttshell.
Hope that helps for a start.
Hi Julian, I apologise for my late reply.
I found out that the bootloader for the IO MCU can be built from the PX4-Bootloader repository.
And the firmware can be built from running the make px4_io-v2
command and we need to copy the binary from the build folder to the extras folder of our target.
Currently I don’t have stm32f100 to test all these things.
And I highlighted all my issues when tried to change the MCU of the IO in this thread How to use another MCU rather than stm32f100 as IO processor?