Compilation du firmware USB
Connexion à l'ordinateur hôte
La carte mère Fly-D5 ne peut communiquer avec Klipper sur l'ordinateur hôte que via le port USB Type-C.
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, saisissez 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 de compilation et le firmware 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, puis sélectionnez STMicroelectronics STM32 et appuyez sur Entrée.
Loading... -
Accédez au menu Processor model, sélectionnez STM32F072 et appuyez sur Entrée.
Loading... -
Sélectionnez Bootloader offset, puis choisissez : 8KiB bootloader.
Loading... -
Communication interface, sélectionnez : USB (on PA11/PA12) et appuyez sur Entrée.
Loading... -
Veuillez vérifier en comparant avec l'image ci-dessous, assurez-vous qu'elle correspond avant de passer à l'étape suivante.
Loading...
- Appuyez sur la touche
Q, l'option Save configuration apparaît, puis appuyez sur la toucheY.Loading... - La configuration devrait maintenant être sauvegardée et vous devriez être revenu à l'interface de ligne de commande.
- Saisissez la commande ci-dessous pour commencer la compilation, cela prendra un certain temps.
make -j4
- La compilation est réussie si la sortie finale correspond au contenu ci-dessous.
- En raison de la version de Klipper, l'apparition de
out/klipper.binindique le succès.Linking out/klipper.elf
Creating bin file out/klipper.bin
Entrer en mode programmation
- Après avoir connecté la carte mère à l'ordinateur hôte avec un câble de données Type-C, double-cliquez sur le bouton RST. À ce moment, une LED clignotera sur la carte mère.
- Si aucune LED ne clignote, veuillez reprogrammer le firmware katapult : Programmer le firmware katapult
- Si aucune LED ne clignote, après avoir programmé le firmware katapult, passez à l'étape suivante.
- Assurez-vous que la machine supérieure peut se connecter normalement à Internet et que le câble de données du périphérique inférieur connecté à la machine supérieure a une fonction de transmission de données.
- Après avoir établi une connexion SSH avec la machine supérieure, entrez la commande
lsusbet appuyez sur Entrée. Si l'information entourée dans l'image ci-dessous est affichée, vous pouvez passer à l'étape suivante.- Si aucune information n'est retournée, il s'agit d'un problème système de la machine supérieure, nous ne pouvons rien faire. Vous devez remplacer un système confirmé comme fonctionnel ou changer la machine supérieure.
- Si la commande
lsusbne fonctionne pas, vous pouvez exécuter la commande suivante pour l'installer :sudo apt-get install usbutilsLoading...
1d50:6177appartient à l'appareil que vous utiliserez cette fois.- Certaines machines supérieures peuvent ne pas afficher correctement ou ne pas afficher du tout en raison de problèmes système.
- Si vous pouvez voir l'appareil après avoir entré la commande
lsusb, mais que1d50:6177n'est pas affiché, essayez de changer de câble de données et connectez le contrôleur mère à un autre port USB de la machine supérieure.
- Si vous avez effectué les étapes mentionnées précédemment et que la mise à jour du firmware Klipper a réussi, et que le contrôleur mère fonctionne normalement, mais que vous souhaitez uniquement mettre à jour le firmware Klipper, veuillez consulter la section
Mise à jour du firmwaredu menu latéral droit de cette page.
Il est obligatoire de trouver le périphérique 1d50:6177 avant de poursuivre.
Programmer le firmware
Début de la programmation
- Une connexion Internet est nécessaire pour installer le plugin de programmation, assurez-vous que votre ordinateur hôte est connecté à Internet
- Si le plugin de programmation est déjà installé, il n'est pas nécessaire de le réinstaller
Installation des dépendances de programmation
Si vous utilisez un ordinateur hôte non officiel de Fly, veuillez absolument exécuter la commande suivante pour installer le package de dépendances de programmation du firmware !
- Dépôt GitHub
- Miroir domestique
cd && git clone https://github.com/Arksine/katapult.git
cd && git clone https://gitee.com/MrCakeFuck/katapult.git
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 de l'image ci-dessous devrait s'afficher (Remarque : chaque carte mère a un ID différent) :
ls /dev/serial/by-id/*
Programmer le firmware
- Assurez-vous que le fichier du firmware a été compilé
- Remplacez
<Votre ID de carte mère>dans la commande ci-dessous par l'ID réel obtenu à l'étape précédente
- Ordinateur hôte standard
- Tutoriel de programmation de l'ordinateur hôte Fly
~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -d /dev/serial/by-id/<Votre ID de carte mère>
python ~/katapult/scripts/flashtool.py -d /dev/serial/by-id/<Votre ID de carte mère>
Référence du processus de programmation :
Référence de programmation réussie :
Mise à jour du firmware
- Mise à jour du firmware via USB
- Mise à jour du firmware via CAN bridge
Étapes de mise à jour du firmware via USB
- Rechercher l'ID de la carte mère
ls /dev/serial/by-id/*
Dans l'image ci-dessous, /dev/serial/by-id/usb-katapult_rp2040_E662549553642032-if00 est l'ID de la carte mère
- Mettre à jour le firmware
cd ~/klipper/ && make flash FLASH_DEVICE=<Votre ID de carte mère>
- Veuillez remplacer
<Votre ID de carte mère>par l'ID réellement obtenu
Étapes de mise à jour du firmware via CAN bridge
- Réinitialiser pour entrer en mode programmation
<Votre ID de carte mère> est l'UUID CANBUS de la carte mère dans le fichier de configuration printer.cfg
- Fly-Armbian/Ordinateur hôte standard
- Système Fly-FAST
~/klippy-env/bin/python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <Votre ID de carte mère>
python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <Votre ID de carte mère>
Dans l'image ci-dessous, f95cee90e1f9 est l'UUID CANBUS de la carte mère (exemple uniquement)
- Rechercher le nouvel ID de l'appareil
ls /dev/serial/by-id/*
- Ceci est juste une référence !
- Dans l'image ci-dessous,
/dev/serial/by-id/usb-Klipper_stm32f072xb_38001B000551324752333720-if00est le nouvel ID de carte mère détecté
- Programmer le nouveau firmware
cd ~/klipper/ && make flash FLASH_DEVICE=<Votre ID de carte mère>
Solution en cas de programmation incorrecte du firmware
Méthode 1 : Entrer rapidement en mode programmation
- Mettre la carte mère hors tension
- Après la remise sous tension, appuyer rapidement deux fois sur le bouton RESET
- Revenir en mode programmation