Flash Contrôleur de vol
Pour flasher la bonne version de Px4 on doit d’abord changer le bootloader sur le flight controller. La première section explique comment flasher le bootloader et la deuxième comment changer de version de px4. Enfin la derniere section propose de recompiler px4 complètement. Toutes ces informations sont également disponibles ici.
Flasher le bootloader
Un bootloader (chargeur d’amorçage) est un petit programme qui s’exécute juste après l’allumage d’un ordinateur ou d’un smartphone.
Son rôle principal est de :
- Initialiser le matériel de base.
- Trouver le système d’exploitation.
- Charger le système d’exploitation en mémoire et lui transmettre le contrôle.
On part du principe que le contrôleur est sous betaflight. Dans un premier temps on vas devoir changer le bootloader pour pouvoir flasher PX4.
Deux méthodes sont possibles, la première en passant via le logiciel Betaflight et l’autre en ligne de commande.
Première méthode: Via le logiciel Betaflight
Téléchargez le bootloader asocié à votre carte. Banque de bootloader pour différentes cartes : Banque
Suivez le procédure de flashage. Procédure de flashage via Betaflight : Procédure
Deuxième méthode: Ligne de commande
Pour la deuxième méthode on devra compiler px4 pour avoir un fichier bin
On récupère le fichier px4 de cette adresse en faisant la commande suivante dans un terminal linux :
git clone --recursive --branch tirrex_uav https://github.com/gipsa-lab-uav/PX4-Autopilot.git
On vas dans le dossier où les fichiers sont clonés (px4-autopilot)
on tape la commande suivante (à adapter en fonction de la carte)
make holybro_kakuteh7_bootloader ou make holybro_kakuteh7mini_bootloader
en faisant un ls on pourra trouver le fichier bin que l’on veut flasher. Il est aussi disponible ici : holybro_kakuteh7_bootloader.bin
On débranche la kakute et on la rebranche en “DFU” en appuyant sur son bouton.
Il sera alors possible de la flasher en ligne de commande en connectant la kakute au PC et en entrant les commandes suivantes :
dfu-util -a 0 --dfuse-address 0x08000000:force:mass-erase:leave -D build/holybro_kakuteh7_bootloader/holybro_kakuteh7_bootloader.bin
débrancher le drone et rebrancher en mode DFU.
dfu-util -a 0 --dfuse-address 0x08000000 -D build/holybro_kakuteh7_bootloader/holybro_kakuteh7_bootloader.bin
Une fois que le bootloader est changé, on peut installer px4.
Il faut alors débracher le drone et le rebrancher pour qu’il ne soit pas en DFU
Flasher PX4
Maintenant que le bootloader est en PX4 on peut mettre à jour le firmware avec deux méthodes.
Ensuite on peut flasher les paramètres dans la FC (décrit dans la partie configuration).
Première méthode
On récupère le bon firmware ici
En connectant le FC à l’ordinateur avec un câble USB, on ouvre Qgroundcontrol et on va dans “flash firmware”. Il suffit de téléverser le fichier px4 précédemment téléchargé. Le code source est également disponible dans le fichier zip.
Deuxième méthode
On peut aussi recompiler PX4 avec une console linux à l’aide des commandes suivantes (dans le dossier cloné avec le bootloader ci-dessus) :
make holybro_kakuteh7 ou make holybro_kakuteh7mini
Et on le transfert avec :
make holybro_kakuteh7 upload
Pour charger les paramètres, le plus simple est de copier les paramètres d’un autre drone à l’aide de qgroundcontrl.
Ensuite on change les valeurs dans px4 et dans tools on fait reset all parameters to firmware.
