I have both F-405 and F-765 wing FC from Matek Systems.
Both are flashed with Ardupilot FW 4.0.5, and connect to MP without any problem; however, I want to flash them with 4.1.0. FW
So far I had no luck upgrading F-765. I disconnected all the peripherals before flashing. Before connecting to the PC, I press and hold boot button, plugs in and than release the boot button.
When I use load custom FW it goes into reading mode and than fails.
Are there any tricks, or could be my driver issue?
This message is miss leading in DFU mode because if I don’t press boot button and just simply plug in usb, it recognizes the com port but won’t connect since it is running Arduplane FW 4.0.5. So I don’t think I need Zadic.
The FC connects with Mission Planner but even in MP, I cannot load the latest FW.
you need to do the DFU-procedure just once to get ArduPilot bootloader and firmware onto your board for the first time. see https://ardupilot.org/plane/docs/common-loading-firmware-onto-pixhawk.html for reference.
as you already have done that successfully, you can upgrade your ardupilot firmware using missionplanner only, keeping your stored settings. however, it is recommended to backup your params to a file before tackling the upgrade procedure.
connect your board to MP via USB in the usual way, click the “SETUP” tab and choose “Install Firmware”.
MP will ask you to hit the disconnect button eventually. do that to enable the firmware loading screen. pick your desired firmware version and follow the instructions from there.
mind there’s three basic three types of boot:
1.: system boot (DFU) uses the MCU’s hardcoded internal bootloader. this boot type is required to flash ArduPilot firmware AND bootloader for the first time onto fresh hardware using the Arduxxx_with_bl.hex file, usually downloaded from firmware.ardupilot.org
2.: ArduPilot bootloader is loaded on every boot (fast blinking LEDs) and tells the board how and where to boot actual firmware. this boot phase allows firmware upgrade handling through MP while keeping your previously stored param settings.
3. runtime is your actual ardupilot firmware running with full functionality.
in a nutshell, windows driver handling uses specific com-port assignments for each of those boot types. so being able to connect your board to MP with ArduPilot running doesn’t necessarily mean your DFU drivers are setup correctly. check your device manager for “STM32 BOOTLOADER” for correct DFU device handling.
fwiw, the wiki page linked above has been updated to suggest using a generic tool for DFU flash handling (STM32CubeProgrammer).
yes, its 4.0.5 runs on ardupilot, connects with mission planner, and fly. But one it comes to installing 4.1.0, it just does not want to upgrade.
Basti pointed out potential issue with the driver, and I am looking into it.
Does anyone have link to stm32 driver? Driver on my pc at the moment is stmicroelectronics and I think this is the problem. My PC is running windows 7
4.1 is a Dev version, is that what you want? If so and Arduplane of any version is on the FC now, select Cntrl-Q from MP update screen and the dev version will populate. Pick the craft style you want. Don’t press the DFU button, as stated that only has to be done to move between Flight stacks (BF, Inav, Ardupilot)
I got the 4.1.0 dev FW on the F405 and it is connecting now. However, there seems to be a bug that might worth looking into, when connecting to MP, it will hang up at this stage of the parameter read “Got param STAT_RunTime”. I waited for ~5min before canceling. Once canceled board is connecting and reporting all values as far as I can tell.
I am using FrSky R9 mini OTA.
Yes, I did read few months back the link you send which got me started on the F.port and that is exactly the reason I was trying to flash F405 with 4.1.0.
My ultimate goal is to have f.port telemetry on Taranis and have Taranis linked to MP thus eliminating the need for 3DR type radio. I have seen people talking about it (Painless360) but I am certainly not there yet.
I don’t have any electronics background and don’t quite understand the term “inverted F.port”.
On my other Pixhawk based plane I am using Yaapu cable to get telemetry.
So I got the GPS and receiver R9 connected and working on Matek F405-wing using f.port protocol. I can see all the channels and flight modes moving in mission planner. I am also getting receiver battery voltage on the Taranis. But I cannot get Yaapu to work or any of the sensors to discover. The screen is displaying “No telemetry”.
I have setup parameters as follows:
Configure SERIAL7 as above for F4 autopilots
F4 based autopilots using an “inverted FPort” output from the receiver can connect it to any UART’s TX pin with the configuration: