Programmation du firmware USB vers CAN
Connexion à l'ordinateur hôte
La carte Fly-D8 ne peut communiquer avec l'ordinateur hôte pour Klipper que via le port USB Type-C.
Guide concis de compilation du firmware
Notes importantes
- Réseau : Assurez-vous que l'ordinateur maître (Raspberry Pi, etc.) est connecté au réseau.
- Méthode de connexion : Utilisez obligatoirement SSH via le réseau pour vous connecter, désactivez la liaison série.
- Méthode de saisie : Gardez le clavier en mode anglais demi-chasse.
Connexion SSH et changement d'utilisateur
Connectez-vous à l'ordinateur maître via SSH avec des outils comme MobaXterm, PuTTY, etc.
Changer d'utilisateur :
- Système standard (système officiel Raspberry Pi, etc.)
Interdiction d'utiliserroot, basculez vers un utilisateur standard :su <nom_utilisateur> - FLY ordinateur maître (système FlyOS-FAST)
Seul l'utilisateurrootest autorisé à se connecter (mot de passe :mellow).
Guide d'opération de compilation du firmware
Dans l'interface de configuration du firmware Klipper, seul le clavier est pris en charge, la souris est inutilisable.
| Touche | Fonction |
|---|---|
| ↑ / ↓ | Déplacer le curseur vers le haut/bas, sélectionner une option de menu |
| Entrée / Espace | Confirmer la sélection, cocher une option ou entrer dans un sous-menu |
| Échap | Revenir au menu précédent |
| Q | Quitter l'interface de configuration |
| Y | En quittant, appuyer sur Y pour sauvegarder la configuration si demandé |
Démarrage de la compilation du firmware
Voici comment compiler le firmware :
-
Après vous être connecté via SSH, saisissez la commande suivante et appuyez sur Entrée :
cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig -
La partie
rm -rf ~/klipper/.config && rm -rf ~/klipper/outsupprime les données de compilation et le firmware précédents. -
make menuconfigcompile le firmware. Après exécution, l'interface ci-dessous devrait apparaître. -
La partie
rm -rf ~/klipper/.config && rm -rf ~/klipper/outsupprime les données de compilation et le firmware précédents,make menuconfigcompile le firmware. Après exécution, l'interface ci-dessous devrait apparaître.Loading... -
Sélectionnez
Enable extra low-level configuration options, appuyez sur la toucheEntrée.Loading... -
Entrez dans le menu
Micro-controller Architecturepuis sélectionnezSTMicroelectronics STM32, appuyez sur la toucheEntrée.Loading... -
Entrez dans le menu
Processor model, sélectionnezSTM32H723, appuyez sur la toucheEntrée.Loading... -
Sélectionnez
Bootloader offset, choisissez :128KiB bootloaderLoading... -
Sélectionnez
Clock Reference (8 MHz crystal), choisissez :25 MHz crystalLoading... -
Sélectionnez
Communication interface, choisissez :USB to CAN bus bridge (USB on PA11/PA12)Loading...
- Appuyez sur la touche
Q, puis lorsque Save configuration apparaît, appuyez sur la toucheY.Loading... - La configuration devrait maintenant être sauvegardée et vous revenez à l'interface en ligne de commande.
- Saisissez la commande ci-dessous pour démarrer la compilation, cela prend un certain temps.
make -j4
- Enfin, si le résultat suivant s'affiche, la compilation est réussie.
- En raison des versions de Klipper, il suffit que
out/klipper.binapparaisse pour indiquer la réussite.Linking out/klipper.elfCreating bin file out/klipper.bin
Entrée en mode de programmation
- Après avoir connecté la carte à l'ordinateur hôte avec un câble Type-C, appuyez deux fois sur le bouton RST. Une LED sur la carte clignotera alors.
Programmation du firmware
Début de la gravure
- Les hôtes non officiels de Fly doivent installer Katapult
- Installer Katapult
Obtenir l’ID de la carte mère
Exécutez la commande suivante pour rechercher l’ID de l’appareil. Normalement, un ID similaire à celui ci-dessous devrait s’afficher (Attention : l’ID de chaque carte mère est différent) :
ls /dev/serial/by-id/*
Si l’ID trouvé contient
usb-katapult_stm32xxxxxxxx, cela signifie que vous pouvez passer à l’étape suivante
Graver le firmware
- Assurez-vous que le fichier du firmware est déjà compilé
- Remplacez
<ID_DE_VOTRE_CARTE_MÈRE>dans la commande ci-dessous par l’ID réel obtenu à l’étape précédente
- Pour un hôte ordinaire, utilisez le code suivant
~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -d <ID_DE_VOTRE_CARTE_MÈRE>
- Pour un hôte FLY, utilisez le code suivant
python3 ~/katapult/scripts/flashtool.py -d <ID_DE_VOTRE_CARTE_MÈRE>
Référence du processus de gravure :
Référence d’une gravure réussie :
Mise à jour du firmware
- Mise à jour du firmware USB
- Mise à jour du firmware CAN ponté
Étapes de mise à jour du firmware USB
- Rechercher l’ID de la carte mère
ls /dev/serial/by-id/*
/dev/serial/by-id/usb-katapult_rp2040_E662549553642032-if00 dans l’image ci-dessous est l’ID de la carte mère
- Mettre à jour le firmware
cd ~/klipper/ && make flash FLASH_DEVICE=<ID_DE_VOTRE_CARTE_MÈRE>
- Remplacez
<ID_DE_VOTRE_CARTE_MÈRE>par l’ID réellement obtenu
Étapes de mise à jour du firmware CAN ponté
- Réinitialiser pour entrer en mode de gravure
<ID_DE_VOTRE_CARTE_MÈRE> est l’UUID CANBUS de la carte mère dans le fichier de configuration printer.cfg
- Pour un hôte ordinaire, utilisez le code suivant
~/klippy-env/bin/python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <ID_DE_VOTRE_CARTE_MÈRE>
- Pour un hôte FLY, utilisez le code suivant
python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <ID_DE_VOTRE_CARTE_MÈRE>
f95cee90e1f9 dans l’image ci-dessous est l’UUID CANBUS de la carte mère (à titre d’exemple uniquement)
- Rechercher le nouvel ID de l’appareil
ls /dev/serial/by-id/*
- Ceci est juste une référence !
/dev/serial/by-id/usb-Klipper_stm32f072xb_38001B000551324752333720-if00dans l’image ci-dessous est le nouvel ID de la carte mère
- Graver le nouveau firmware
cd ~/klipper/ && make flash FLASH_DEVICE=<ID_DE_VOTRE_CARTE_MÈRE>
Solutions en cas de gravure erronée
Méthode 1 : Entrer rapidement en mode de gravure
- Coupez l’alimentation de la carte mère
- Après avoir remis sous tension, appuyez deux fois rapidement sur le bouton RESET
- Réentrez en mode de gravure
Méthode 2 : Re-gravure du firmware Katapult
Cliquez pour voir le guide de gravure du firmware KatapultRecherche de l'ID CAN après la programmation
Une fois le firmware programmé et la carte remise sous tension, veuillez rechercher l'ID CAN.