Programme de la mise à jour du firmware USB vers CAN
Début de la compilation
- Vous devez utiliser une station supérieure avec le service
klipper
installé Connexion via SSH par réseau - Assurez-vous que l'appareil est bien connecté à la station supérieure
- Attention : Veuillez utiliser une station supérieure ordinaire, comme un Raspberry Pi ou un FLY Pi. Si vous utilisez une station supérieure modifiée (par exemple, une clé WiFi, Redmi, etc.), ces stations présentent trop de problèmes et nous ne pouvons pas vous fournir de support technique
- Pour passer de l'utilisateur
ROOT
à un utilisateur normal, vous pouvez entrer la commande ci-dessous - N'utilisez pas l'utilisateur
ROOT
- L'utilisateur fly peut simplement entrer :
su fly
, si vous n'êtes pas l'utilisateur fly, veuillez remplacer<Votre nom d'utilisateur sur la station supérieure>
par votre nom d'utilisateur sur la station supérieure !
su <Votre nom d'utilisateur sur la station supérieure>
- 请确保上位机可以正常联网
- 固件编译前需要使用SSH通过网络登录上位机
- 请不要使用串口工具登录上位机
Klipper固件编译和配置页面操作说明
请确保键盘输入法为半角模式,即英文模式
- 键盘上键
↑
,下键↓
,用于上下移动光标来选中菜单项 - 确认键
Enter
或 空格键Space
,用于勾选菜单或进入子菜单 - 退出键
ESC
,用于返回上一级菜单 Q
键,用于退出Klipper固件配置页面Y
键,在退出Klipper固件配置页面时,如果有提示,则点击Y
键保存配置文件
如果配置页面选项比较少,请先勾选[ ] Enable extra low-level configuration options
,用于显示部分隐藏选项
Voici comment compiler le firmware :
-
Connectez-vous à SSH puis entrez la commande suivante et appuyez sur Entrée :
cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig
-
Parmi les commandes
rm -rf ~/klipper/.config && rm -rf ~/klipper/out
suppriment les données de compilation et le firmware précédents,make menuconfig
compile le firmware, après quoi l'interface suivante 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 STMicroelectronics STM32 et appuyez sur Entrée
-
Allez dans le menu Modèle de processeur, sélectionnez STM32F407 et appuyez sur Entrée
-
Sélectionnez Décalage du bootloader, choisissez : 32KiB bootloader
-
Sélectionnez Interface de communication, choisissez : Pont USB vers bus CAN (USB sur PA11/PA12)
- Appuyez sur la touche
Q
, une fenêtre Save configuration apparaît, puis appuyez surY
- Vous devriez maintenant avoir sauvegardé la configuration et être revenu à l'interface de ligne de commande
- Entrez la commande suivante pour commencer la compilation, cela prendra un certain temps
make -j4

-
Si le message ci-dessous s'affiche, la compilation a réussi
Linking out/klipper.elf
Creating hex file out/klipper.bin
Vérification du mode de mise à jour
- 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
lsusb
et 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
lsusb
ne fonctionne pas, vous pouvez exécuter la commande suivante pour l'installer :sudo apt-get install usbutils
1d50:6177
appartient à 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:6177
n'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 firmware
du menu latéral droit de cette page.
Il est obligatoire de trouver le périphérique 1d50:6177
avant de poursuivre.
Mise à jour du firmware
- Il est recommandé de ne pas effectuer la recherche d'ID ou la mise à jour du firmware pendant le processus d'impression.
- Le CAN firmware du même carte mère ou de la carte d'outil Katapult et le CAN firmware de Klipper ont complètement les mêmes IDs.
- Veuillez vous assurer que le réseau CAN de l'ordinateur principal a été configuré.
- Lorsque
1d50:606f
apparaît après la commandelsusb
, vous pouvez utiliser la commande ci-dessous pour rechercher l'ID CAN. - Le taux de transmission CAN de la carte d'outil doit être identique à celui de l'ordinateur principal, sinon il sera impossible de trouver l'ID et de procéder à la programmation.
-
Exécutez la commande suivante pour rechercher l'UUID du CANBus :
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
Pour le système
fast
, utilisez cette commande pour la programmation, remplacez<votre ID de carte mère>
par l'ID trouvé à l'étape précédente.python ~/klipper/scripts/canbus_query.py can0
-
Après avoir entré la commande, plusieurs situations peuvent se produire en fonction de votre machine, voici des références :
- Première situation : Si la carte mère a un firmware bridge, un ID apparaîtra avec le message
Application: Klipper
. - Deuxième situation : Si la carte mère a un firmware bridge et qu'elle est associée à une carte d'outil nécessitant une programmation, deux IDs apparaîtront.
- Troisième situation : Utilisation de UTOC avec une carte d'outil nécessitant une programmation.
- Indication : UTOC n'affiche pas d'ID.
- Quatrième situation : Pas d'ID affiché, généralement c'est parce que Klipper occupe l'ID, le taux de transmission CAN de l'ordinateur principal est incorrect ou il y a une anomalie dans la connexion.
- Première situation : Si la carte mère a un firmware bridge, un ID apparaîtra avec le message
-
En général, si la carte d'outil à programmer est en mode CANBOOT, elle affichera
Application: CanBoot
avec un clignotement correspondant de la LED du firmware. À ce moment-là, vous devez programmer le firmware Klipper, sinon il sera impossible de se connecter !!! -
Indication : Si c'est un firmware Klipper et que l'ID a été rempli dans la configuration, l'ID ne s'affichera pas et sera occupé par Klipper. Vous devez désactiver l'ID correspondant et redémarrer complètement la carte mère.
note- Si aucune UUID n'a été trouvée, consultez le document ci-dessous.
- Résumé des problèmes CAN
-
Programmation du firmware
-
Remplacez
<241696050c56>
par l'UUID trouvée lors de la recherche dans la commande ci-dessous, notez qu'il y a un espace après-u
python3 ~/klipper/lib/canboot/flash_can.py -u 241696050c56
-
Comme illustré ci-dessous, si
CAN Flash Success
apparaît, cela signifie que la programmation a réussi.
Mise à jour du firmware
- Si vous souhaitez mettre à jour le firmware, il suffit de recompiler le firmware puis d'exécuter à nouveau la commande de programmation pour mettre à jour le firmware.
- Mais assurez-vous de pouvoir trouver l'ID correspondant ou que Klipper est déjà connecté.
python3 ~/klipper/lib/canboot/flash_can.py -u <MCU ID>