Compilation du Firmware CAN
Avant de flasher
Vérifier le mode actuel et le chemin d'opération
- Note importante : Si la carte outil est déjà en mode Klipper-CAN, vous pouvez directement flasher via une commande après avoir compilé le firmware. La commande la réinitialisera automatiquement en
Katapultet effectuera le flash. - État d'usine : La carte est pré-flashée avec le firmware
Katapulten mode CAN, à une vitesse de 1M. - Vérification de l'état (via LED) : Si la LED clignote (comme ci-dessous), cela indique qu'elle est en mode
Katapultet prête pour le flash.Loading... - Mode anormal : Si la LED ne clignote pas, cela signifie que le firmware n'est pas
Katapult. Vous devez d'abord reflasher en suivant le lien ci-dessous : Cliquez ici pour flasher le firmware Katapult
Configurer les interrupteurs DIP et la connexion physique
-
Configuration DIP : Quel que soit l'état actuel, veuillez d'abord régler l'interrupteur DIP de la carte en mode CAN, et activer l'interrupteur
120Ω(comme illustré ci-dessous).Loading... -
Connexion de l'appareil : Utilisez un câble CAN pour connecter la carte outil à un UTOC ou à une carte mère déjà flashée avec le firmware de pont. Reportez-vous au schéma de câblage ci-dessous :
Loading... -
Vérification clé (résistance de terminaison) : En coupant complètement l'alimentation, utilisez un multimètre pour mesurer la résistance entre les broches CAN_H et CAN_L.
Appareil Instructions Carte outil Trouvez et insérez le cavalier marqué 120Ω.Carte mère Si connecté à une carte mère, insérez également son cavalier 120Ω.Module UTOC Résistance intégrée. Comment vérifier :
- Assurez-vous que l'alimentation est complètement coupée.
- Utilisez un multimètre pour mesurer la résistance entre CAN-H et CAN-L du port CAN de la carte outil.
- Interprétation des résultats :
- Environ 60Ω : Normal, les résistances aux deux extrémités sont correctement connectées.
- Environ 140Ω : CAN-H et CAN-L sont peut-être inversés.
- Environ 120Ω : Le cavalier
120Ωn'est pas installé ou il y a une rupture de ligne. - Environ 40Ω : Il y a peut-être une résistance supplémentaire, vérifiez les nœuds intermédiaires.
Commencer la compilation
Notes et guide d'opération pour la compilation du firmware
Notes importantes
- Connexion réseau : Assurez-vous que l'ordinateur hôte (Raspberry Pi, etc.) est connecté au réseau.
- Méthode d'accès : Vous devez vous connecter à l'ordinateur hôte via SSH en utilisant le réseau. L'utilisation d'outils de communication série est interdite.
- Permissions utilisateur : Utilisez le compte utilisateur approprié en fonction du type de système de l'ordinateur hôte.
- Méthode de saisie : Assurez-vous que la méthode de saisie du clavier est en mode demi-largeur (mode anglais).
Connexion SSH et changement d'utilisateur
Connexion SSH à l'ordinateur hôte
Utilisez un outil SSH (comme MobaXterm, PuTTY, etc.) pour vous connecter à l'ordinateur hôte via le réseau : Voir le tutoriel détaillé pour la connexion SSH
Changer d'utilisateur selon le type de système
- Ordinateur hôte standard (Armbian)
- Ordinateur hôte FLY
Systèmes applicables :
- Système officiel Raspberry Pi
- Autres systèmes avec Klipper déjà installé
Exigences de permissions utilisateur :
- Il est interdit d'utiliser l'utilisateur
rootpour toute opération. - Vous devez passer à un utilisateur standard pour effectuer les opérations.
Commande de changement :
-
Autres systèmes (remplacez
<username>par votre nom d'utilisateur)su <username>
L'utilisateur standard dispose généralement des permissions de compilation nécessaires. L'utilisation de l'utilisateur root peut entraîner des problèmes de permissions.
Systèmes applicables :
- Système FlyOS-FAST
Informations de connexion :
- Nom d'utilisateur :
root - Mot de passe :
mellow
Le système FAST ne possède que l'utilisateur root.
Explications sur la compilation du firmware
1. Guide d'utilisation du clavier
- Dans la page de configuration du firmware Klipper, vous ne pouvez utiliser que les raccourcis clavier suivants :
- Il est impossible d'utiliser directement la souris !
| Touche | Fonction |
|---|---|
| Flèches ↑ ↓ | Déplacer le curseur vers le haut/le bas pour sélectionner les éléments du menu |
| Entrée ou Espace | Confirmer la sélection/cocher l'élément du menu ou entrer dans un sous-menu |
| Échap | Retourner au menu précédent |
| Q | Quitter la page de configuration du firmware Klipper |
| Y | Si une confirmation apparaît à la sortie, appuyez sur Y pour sauvegarder la configuration |
Afficher les options cachées
Si la page de configuration présente peu d'options, veuillez d'abord cocher :
[ ] Enable extra low-level configuration options
Cette option permet d'afficher certaines options de configuration cachées.
Commencer la compilation du firmware
Voici comment compiler le firmware :
-
Après la connexion SSH, entrez la commande suivante et appuyez sur Entrée :
cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig -
Ici,
rm -rf ~/klipper/.config && rm -rf ~/klipper/outsupprime les données et le firmware de compilation précédents. -
make menuconfigcompile 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 et sélectionnez Raspberry Pi RP2040/RP235x, puis appuyez sur Entrée.
Loading... -
Sélectionnez Bootloader offset, choisissez : 16KiB bootloader.
Loading... -
Sélectionnez Communication interface, choisissez : CAN bus.
Loading... -
Sélectionnez
(4) CAN RX gpio number, supprimez4et entrez1. -
Sélectionnez
(5) CAN TX gpio number, supprimez5et entrez0.Loading...
- Sélectionnez GPIO pins to set at micro-controller startup, entrez :
!gpio5noteVeuillez saisir en mode de saisie anglais
!gpio5Loading...- Veuillez vérifier en comparant avec l'image ci-dessus, assurez-vous que cela correspond, puis passez à l'étape suivante
- Appuyez sur la touche
Q, Save configuration apparaît, puis appuyez sur la toucheY.
- La configuration devrait maintenant être enregistrée et vous devriez être revenu à l'interface de ligne de commande.
- Entrez la commande ci-dessous pour commencer la compilation, cela prendra un certain temps.
make -j4
- Si la sortie finale est la suivante, la compilation a réussi.
- En raison des versions de Klipper, il suffit que
out/klipper.binapparaisse pour indiquer le succès.Linking out/klipper.elf
Creating bin file out/klipper.bin
Rechercher l'ID et flasher
Recherche de périphériques
- Maintenant que vous êtes correctement connecté à l'ordinateur hôte, vous pouvez entrer la commande
lsusbpour rechercher les périphériques. Plusieurs cas peuvent se présenter :- Si la commande
lsusbaffiche un message indiquant quelsest introuvable, vous pouvez installer les utilitaires nécessaires en utilisant la commande suivante :sudo apt-get install usbutils - Si la commande
lsusbne donne aucune réponse, cela indique un problème système pour lequel nous ne pouvons rien faire. Vous devez changer de système ou utiliser un système dont vous savez qu'il fonctionne correctement. - Si vous voyez apparaître les informations comme sur l'image ci-dessous (à titre d'exemple), vérifiez simplement que
1d50:606fs'affiche bien.Loading...
- Si la commande
1d50:606fest le périphérique que vous devez utiliser lors de cette étape.- S'il y a plusieurs périphériques
1d50:606f, vous devez en éliminer un, sinon cela affectera le processus d'écriture du firmware et la connexion à ce dernier. Par exemple, si vous avez unFLY MINI PAD, il est recommandé d'utiliser leUTOCintégré à la carte et non d'autres périphériques de pontage CAN. - Si aucun périphérique n'apparaît, vérifiez que le câble USB est correctement branché et que le firmware approprié a été gravé.
La recherche de l'ID CAN ne doit être effectuée que lorsque le périphérique 1d50:606f est détecté.
Recherche de l'UUID CANBus
- Il est recommandé d'effectuer les opérations de recherche d'ID et de flashage du firmware en dehors de l'impression, pour éviter d'interférer avec le processus d'impression.
- La carte mère / la carte outil utilise le même ID CAN pour le firmware Katapult (CANBoot) et le firmware Klipper.
Assurez-vous que les conditions suivantes sont remplies, sinon la recherche de l'ID CAN pourrait échouer :
- Le réseau CAN de l'ordinateur hôte est correctement configuré
- Le débit CAN de la carte outil est strictement identique à celui de l'ordinateur hôte (une différence empêcherait la communication)
- La commande
lsusbaffiche le périphérique1d50:606f(adaptateur USB-CAN)
Commandes de recherche (selon le système)
- Ordinateur hôte standard
- Système Fly-FAST
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
python ~/klipper/scripts/canbus_query.py can0
Explication des résultats de recherche
Cas 1 : Carte mère / carte outil avec firmware Klipper déjà flashé
- Affichage : Un ID CAN est affiché, avec l'indication
Application: Klipper - Explication : L'appareil exécute le firmware Klipper et est prêt à l'emploi. Cet ID peut être celui de la carte mère ou de la carte outil.
- Méthode de distinction : Débranchez le câble CAN de la carte outil et relancez la recherche. Si l'ID disparaît, il s'agit de la carte outil ; s'il reste, c'est celui de la carte mère.
Cas 2 : Carte mère + carte outil à flasher
- Affichage : Deux ID CAN sont affichés
- Explication : La carte mère exécute Klipper, la carte outil exécute CanBoot et attend le flashage.
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 agit uniquement comme un 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
- Le débit CAN0 de l'ordinateur hôte est mal configuré
- Problème de câblage physique
- L'appareil n'est pas en mode CanBoot
- État prêt au flashage : Lorsque la carte outil est en mode CanBoot, elle affiche
Application: CanBootet la LED du firmware clignote. Elle est alors prête pour le flashage. - Gestion des ID occupés : Si un appareil exécute déjà Klipper et que son ID est renseigné dans le fichier de configuration, l'ID ne s'affichera pas (il est occupé par Klipper). Pour le réafficher, il faut masquer cet ID dans la configuration et redémarrer complètement après une coupure de l'alimentation.
Si l'UUID ne peut pas être trouvé, consultez : Guide de dépannage CAN
Flashage du firmware
Commande de flashage
- Remplacez
241696050c56dans la commande ci-dessous par l'UUID que vous avez réellement trouvé - Remarque : Un espace est requis après le paramètre
-u
python3 ~/klipper/lib/canboot/flash_can.py -u 241696050c56
Confirmation de flashage réussi
Le message CAN Flash Success indique que le flashage 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 de l'appareil est détectable (ou que Klipper est connecté à l'appareil)
- Exécuter la même commande de flashage
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...