Compilation du microprogramme CAN
Démarrage de la compilation
- Ordinateur hôte sur lequel le service 
klipperest installé Connexion SSH via le réseau - Et le périphérique doit être correctement connecté à l'ordinateur hôte
 - Remarque : veuillez utiliser un ordinateur hôte standard, comme un Raspberry Pi, une carte FLY, etc. Si vous utilisez un ordinateur hôte modifié (par exemple, une clé WiFi, un Redmi, etc.), ces ordinateurs hôtes présentant trop de problèmes, nous ne pourrons pas vous fournir d'assistance technique.
 
- Tutoriel de compilation du firmware pour ordinateur hôte standard
 - Tutoriel de compilation du firmware pour système FAST
 
- S'applique à la plupart des systèmes d'ordinateurs hôtes standards comme Raspberry Pi, carte FLY, etc.
 - Veuillez ne pas utiliser l'utilisateur 
ROOTpour effectuer n'importe quelle opération sur ce type d'ordinateur hôte - Veuillez effectuer les opérations en tant qu'utilisateur standard
 - Méthode pour changer d'utilisateur : par exemple, dans le système 
FlyOS-Armbian, veuillez utiliser la commandesu flypour passer à l'utilisateur standard - Pour les autres systèmes, veuillez utiliser la commande 
su <nom d'utilisateur de votre ordinateur hôte>pour passer à l'utilisateur standard 
su <nom d'utilisateur de votre ordinateur hôte>
- Remarques importantes concernant le système 
FlyOS-FAST- Le nom d'utilisateur par défaut du système 
FASTestroot, et le mot de passe estmellow - La compilation du firmware ne peut être effectuée qu'en tant qu'utilisateur 
root - Le système 
FASTne possède que l'utilisateurROOT, il est donc inutile de changer d'utilisateur !!! 
 - Le nom d'utilisateur par défaut du système 
 
- Assurez-vous que l'hôte peut se connecter normalement à Internet
 - Avant de compiler le firmware, vous devez utiliser SSH pour vous connecter à distance via le réseau à l'hôte
 - Veuillez ne pas utiliser d'outil de terminal série pour vous connecter à l'hôte
 
Instructions d'utilisation pour la compilation et la configuration du firmware Klipper
Assurez-vous que le mode de saisie du clavier est en mode demi-largeur, c'est-à-dire en mode anglais
- La touche 
↑(haut) et la touche↓(bas) du clavier sont utilisées pour déplacer le curseur verticalement afin de sélectionner les éléments du menu - La touche 
Entréeou la toucheEspaceest utilisée pour cocher une option de menu ou entrer dans un sous-menu - La touche 
Échapest utilisée pour revenir au menu précédent - La touche 
Qpermet de quitter la page de configuration du firmware Klipper - La touche 
Y, lorsqu'on quitte la page de configuration du firmware Klipper et qu'une invite apparaît, appuyez surYpour enregistrer le fichier de configuration 
Si le nombre d'options de la page de configuration est limité, activez d'abord [ ] Activer les options de configuration de niveau inférieur supplémentaires pour afficher certaines options masquées
Voici comment compiler le firmware :
- 
Connectez-vous via SSH, puis entrez la commande suivante et appuyez sur Entrée :
cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig - 
Où
rm -rf ~/klipper/.config && rm -rf ~/klipper/outest la suppression des données de compilation précédentes et du firmware, etmake menuconfigest la compilation du firmware ; après exécution, l'interface ci-dessous devrait apparaître :
 - 
Sélectionnez Activer les options de configuration de bas niveau supplémentaires et appuyez sur Entrée

 - 
Allez dans le menu Architecture du microcontrôleur puis sélectionnez Raspberry Pi RP2040/RP235x et appuyez sur Entrée

 - 
Sélectionnez Offset du bootloader, puis choisissez : 16KiB bootloader

 - 
Sélectionnez Interface de communication, puis choisissez : BUS CAN

 - 
Sélectionnez
(4) Numéro de broche RX CAN, effacez4et tapez1 - 
Sélectionnez
(5) Numéro de broche TX CAN, effacez5et tapez0
 
- Sélectionnez GPIO pins to set at micro-controller startup, entrez : !gpio5,!gpio19,!gpio24
 
Veuillez entrer !gpio5,!gpio19,!gpio24 en mode d'entrée anglais

- Appuyez sur la touche 
Q, vous verrez Save configuration, appuyez ensuite surY - Vous devriez maintenant avoir enregistré la configuration et être retourné à l'interface de ligne de commande
 - Entrez la commande suivante pour commencer la compilation, cela prendra un certain temps
 
make -j4

- 
Lorsque le message suivant s'affiche, la compilation est réussie
Linking out/klipper.elf
Creating bin file out/klipper.bin 
Connexion
- 
Avant de programmer le microprogramme, connectez la carte d'outils à UTOC ou à une carte mère ayant été programmée avec le microprogramme de pont, voici un schéma de connexion de référence
 - 
Veuillez noter que les commutateurs doivent être positionnés correctement

 - 
Assurez-vous que la résistance entre CAN H et CAN L est d'environ
60Ωlorsqu'elle est mesurée à l'aide d'un multimètre lorsque l'alimentation est coupée, si elle est de120Ω, il faut activer le commutateur120Ω, si elle est d'environ40Ω, il faut désactiver le commutateur
 - 
Après avoir connecté la carte d'outils à UTOC ou à une carte mère ayant été programmée avec le microprogramme de pont à l'aide d'un câble de données XT30, les LED de la carte mère clignotent.
 
- Si aucune LED ne clignote, réprogrammez le microprogramme katapult : Programmer le microprogramme katapult
 - Si aucune LED ne clignote, exécutez la suite des étapes après avoir programmé le microprogramme katapult
 
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.
 
 - 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 d'ID et programmation
- Il est déconseillé de rechercher l'ID ou de flasher le firmware pendant l'impression
 - Les firmwares CAN de Katapult et de Klipper pour la même carte mère ou la même carte d'outil ont exactement le même ID
 
- Veuillez vous assurer que le réseau CAN de l'ordinateur hôte est correctement configuré
 - La commande de recherche de l'
ID CANci-dessous ne peut être utilisée que si1d50:606fapparaît après la commande lsusb - Le débit en bauds CAN de la carte d'outil doit correspondre à celui de l'ordinateur hôte, sinon l'
IDne sera pas trouvé et le flashage échouera 
- 
Utilisez la commande suivante pour rechercher l'UUID du CANBus :
- Méthode de recherche pour Fly-Armbian et ordinateur hôte standard
 - Méthode de recherche pour Fly-FAST
 
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0python ~/klipper/scripts/canbus_query.py can0 - 
Plusieurs cas peuvent apparaître selon votre machine après l'exécution :
- Premier cas : carte mère avec firmware de pontage, affichage d'un seul ID avec le message 
Application : Klipper
 - Deuxième cas : carte mère avec firmware de pontage associée à une carte d'outil nécessitant un firmware à flasher, affichage de deux ID

 - Troisième cas : utilisation de 
UTOCavec une carte d'outil à flasher - Remarque : 
UTOCne montre aucun ID
 - Quatrième cas : aucun ID affiché, généralement dû au fait que Klipper est en cours d'utilisation, au mauvais débit en bauds CAN0 de l'ordinateur hôte ou à un câblage incorrect
 
 - Premier cas : carte mère avec firmware de pontage, affichage d'un seul ID avec le message 
 - 
Normalement, lorsque la carte d'outil à flasher est en mode CANBOOT, le message
Application : CanBootapparaît et la LED du firmware clignote. À ce moment-là, vous devez flasher le firmware Klipper, sinon la connexion sera impossible !!! - 
Remarque : Si la carte est déjà flashée avec le firmware Klipper et que l'ID a été saisi dans la configuration, l'ID ne s'affichera plus car il sera utilisé par Klipper. Vous devez masquer l'ID correspondant, couper complètement l'alimentation de la carte mère, puis redémarrer.
 
- Si aucun UUID n'est trouvé, veuillez consulter le document ci-dessous
 - Problèmes CAN courants
 
Flashage du firmware
- 
Remplacez
241696050c56dans la commande ci-dessous par l'UUID trouvé précédemment. Veuillez noter qu'il y a un espace après-upython3 ~/klipper/lib/canboot/flash_can.py -u 241696050c56 - 
Comme indiqué sur l'image ci-dessous, si
CAN Flash Successapparaît, le flashage est réussi
 
Mise à jour du firmware
- Pour mettre à jour le firmware, il suffit de recompiler le firmware puis de réexécuter la commande de flashage pour mettre à jour
 - Mais veuillez vous assurer de pouvoir trouver l'ID correspondant ou que Klipper soit déjà connecté
python3 ~/klipper/lib/canboot/flash_can.py -u <MCU ID>
 
Vérification du démarrage du microprogramme
- Si le microprogramme démarre correctement, la LED s'allumera
