Compilation du firmware CAN version 103
Démarrer la compilation
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ébut de la compilation du firmware
Voici comment compiler le firmware :
-
Après vous être connecté via SSH, entrez 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/outsert à supprimer les données de compilation et le firmware précédents. -
make menuconfigpermet de compiler le firmware. Après exécution, l'interface suivante devrait apparaître.Loading... -
Sélectionnez Enable extra low-level configuration options et appuyez sur Entrée.
Loading... -
Accédez au menu Micro-controller Architecture puis sélectionnez STMicroelectronics STM32 et appuyez sur Entrée.
Loading... -
Accédez au menu Processor model, sélectionnez STM32F103 et appuyez sur Entrée.
Loading... -
Sélectionnez Bootloader offset, choisissez : 8KiB bootloader
Loading... -
Sélectionnez Communication interface, choisissez : CAN bus (on PB8/PB9)
Loading...
- Sélectionnez GPIO pins to set at micro-controller startup, entrez : !PC13 Veuillez noter que c'est en majuscules
Loading...
- Appuyez sur la touche
Q, l'option Save configuration apparaît, puis appuyez sur la toucheY.Loading... - La configuration est maintenant enregistrée et vous êtes revenu à l'interface de ligne de commande.
- Entrez la commande suivante pour commencer la compilation. Cela prend un certain temps.
make -j4
- La compilation réussit si le résultat suivant s'affiche à la fin.
- En fonction de la version de Klipper, il suffit que
out/klipper.binapparaisse pour que ce soit un succès.Linking out/klipper.elfCreating bin file out/klipper.bin
Câblage
- Avant de flasher le firmware, connectez la carte outil à l'UTOC ou à la carte mère flashée en bridge à l'aide d'un câble XT30. Ci-dessous se trouve le schéma de câblage de référence.
- Veuillez vérifier si les interrupteurs DIP sont correctement positionnés.
Loading...
- Assurez-vous que la résistance entre CAN H et CAN L est d'environ
60Ωmesurée avec un multimètre hors tension. Si elle est de120Ω, vous devez connecter le cavalier120Ω. Si elle est d'environ40Ω, retirez le cavalier.Loading...
Rechercher l'ID et flasher
Interroger l'UUID CANBus
- Il est recommandé d'effectuer la requête d'ID et la mise à jour du firmware en dehors de l'état d'impression pour éviter toute interférence avec le processus d'impression.
- Le firmware Katapult (CANBoot) et le firmware Klipper d'une même carte mère/carte outil utilisent le même ID CAN.
Assurez-vous que les conditions suivantes sont remplies, sinon la recherche d'ID CAN pourrait échouer :
- Le réseau CAN de l'hôte est correctement configuré
- Le débit CAN de la carte outil est exactement le même que celui de l'hôte (des débits différents empêcheront la communication)
- L'exécution de la commande
lsusbdoit afficher le périphérique1d50:606f(adaptateur USB-CAN)
Commande de recherche (selon le système)
- Commande de recherche pour hôte standard
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
- Commande de recherche pour hôte FLY
python3 ~/klipper/scripts/canbus_query.py can0
Explication des résultats de recherche
Cas 1 : Carte mère/carte outil avec firmware Klipper installé
- Affichage: Affiche un ID CAN, avec l'indication
Application: Klipper - Explication: Le périphérique exécute déjà le firmware Klipper et peut être utilisé directement. Cet ID peut être celui de la carte mère ou de la carte outil.
- Méthode de distinction: Débranchez le câble de connexion CAN de la carte outil, puis relancez la recherche. Si cet ID disparaît, il appartient à la carte outil ; s'il persiste, il appartient à la carte mère.
Cas 2 : Carte mère + carte outil à flasher
- Affichage: Affiche deux ID CAN
- Explication: La carte mère exécute le firmware Klipper, la carte outil exécute le firmware CanBoot, en attente de flash.
Cas 3 : UTOC + carte outil à flasher
- Affichage: L'UTOC lui-même n'affiche pas d'ID, seul l'ID de la carte outil est affiché
- Explication: L'UTOC sert uniquement de pont. Assurez-vous que la carte outil est en mode CanBoot.
Cas 4 : Aucun ID affiché
- Affichage: Aucun ID n'est affiché
- Causes possibles :
- Le bus CAN est occupé par Klipper
- La configuration du débit CAN0 de l'hôte est incorrecte
- Anomalie de câblage physique
- Le périphérique n'est pas entré en mode CanBoot
- État prêt à flasher : Lorsque la carte outil est en mode CanBoot, elle affiche
Application: CanBootet sa LED de firmware clignote. Le flash du firmware est alors possible. - Gestion d'occupation d'ID : Si le périphérique exécute déjà Klipper et que son ID est renseigné dans le fichier de configuration, l'ID ne sera pas affiché (occupé par Klipper). Pour le réafficher, il faut masquer cet ID dans la configuration et redémarrer complètement en coupant l'alimentation.
Si vous ne parvenez pas à trouver l'UUID, veuillez consulter : Guide de dépannage CAN
Flash du firmware
Commande de flash
- Remplacez
241696050c56dans la commande ci-dessous par l'UUID que vous avez récupéré - Remarque : Un espace est requis après le paramètre
-u
python3 ~/klipper/lib/canboot/flash_can.py -u 241696050c56
Confirmation de la réussite du flash
L'apparition du message CAN Flash Success indique que le flash a réussi :
Mise à jour du firmware
Méthode de mise à jour
Pour mettre à jour le firmware, il suffit de :
- Recompiler le firmware
- S'assurer que l'ID CAN du périphérique est visible (ou que Klipper est connecté au périphérique)
- Exécuter la même commande de flash
python3 ~/klipper/lib/canboot/flash_can.py -u <ID MCU>
Exemple de mise à jour réussie
Vérifier si le firmware démarre
- Si le firmware démarre normalement, la LED s'allumera.
Loading...