Flash du firmware USB vers CAN
Connexion à l'ordinateur hôte
Limitation de connexion principale
La carte Fly-D7 ne peut communiquer avec l'ordinateur hôte pour Klipper que via le port USB Type-C .
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'utiliser root, basculez vers un utilisateur standard :
FLY ordinateur maître (système FlyOS-FAST)
Seul l'utilisateur root est 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é
Commencer la compilation du firmware
Voici comment compiler le firmware :
Connectez-vous en 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/out permet de supprimer la configuration et le firmware précédents ;
make menuconfig permet d'ouvrir l'interface de configuration du firmware Klipper.
Configurez chaque option dans l'ordre ci-dessous, en terminant chaque étape avant de passer à la suivante.
1 启用 Enable extra low-level configuration options
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
2 Micro-controller Architecture 选择 STMicroelectronics STM32
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
3 Processor model 选择 STM32F072
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
4 Bootloader offset 选择 8KiB bootloader
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
5 Clock Reference 选择 8 MHz crystal
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
6 Communication interface 选择 USB to CAN bus bridge (USB on PA11/PA12)
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
7 CAN bus interface 选择 CAN bus (on PB8/PB9)
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
8 USB ids 保持默认,无需进入
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
9 CAN bus speed 设置为 1000000
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
10 启用 Optimize stepper code for 'step on both edges'
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
11 GPIO pins to set at micro-controller startup 保持为空
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
12 GPIO state at micro-controller startup 选择 Not set
此项是 FLYOS-Klipper 功能。通常保持 Not set;如需设置全部 GPIO 的启动状态,请先阅读 GPIO 启动状态使用说明 。
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
13 按 Q 键退出配置界面
(Top)
Klipper Firmware Configuration
[*] Enable extra low-level configuration options
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32F072) --->
Bootloader offset (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (USB to CAN bus bridge (USB on PA11/PA12)) --->
CAN bus interface (CAN bus (on PB8/PB9)) --->
USB ids --->
(1000000) CAN bus speed
[*] Optimize stepper code for 'step on both edges'
() GPIO pins to set at micro-controller startup
GPIO state at micro-controller startup (Not set) --->
[Space/Enter] Toggle/enter [?] Help [/] Search
[Q] Quit (prompts for save) [Esc] Leave menu
14 出现 Save configuration 时按 Y 保存配置
Quit
Save configuration?
(Y)es (N)o (C)ancel
Une fois les deux dernières étapes ci-dessus terminées, appuyez sur Q pour quitter l'interface de configuration, puis sur Y pour enregistrer la configuration.
Revenez à la ligne de commande, saisissez la commande suivante et appuyez sur Entrée pour commencer la compilation :
root@flyos-11e5f8 ~/klipper # make -j4
Compiling out/src/stm32/usbfs.o
Compiling out/src/generic/canserial.o
Compiling out/src/../lib/fast-hash/fasthash.o
Compiling out/src/stm32/can.o
Compiling out/src/stm32/chipid.o
Compiling out/src/generic/usb_canbus.o
Compiling out/src/stm32/hard_pwm.o
Preprocessing out/src/generic/armcm_link.ld
Building out/compile_time_request.o
Version: XXXX
Linking out/klipper.elf
Creating bin file out/klipper.bin
终端末尾出现 Linking out/klipper.elf 和 Creating bin file out/klipper.bin,即表示编译成功。 实际编译时,部分 Compiling 行和 Version 会随 Klipper 与系统版本变化。
Entrée en mode de flash
Après avoir connecté la carte à l'ordinateur hôte avec un câble USB Type-C, appuyez deux fois sur le bouton RST . La LED sur la carte clignotera alors.
Flash du firmware
Début de la gravure
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 ci-dessous devrait s’afficher (Attention : l’ID de chaque carte mère est différent ) :
Si l’ID trouvé contient usb-katapult_stm32xxxxxxxx, cela signifie que vous pouvez passer à l’étape suivante
Graver le firmware
Assurez-vous que le fichier du firmware est déjà compilé
Remplacez <ID_DE_VOTRE_CARTE_MÈRE> dans la commande ci-dessous par l’ID réel obtenu à l’étape précédente
Pour un hôte ordinaire, utilisez le code suivant
~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -d < ID_DE_VOTRE_CARTE_MÈRE >
Pour un hôte FLY, utilisez le code suivant
python3 ~/katapult/scripts/flashtool.py -d < ID_DE_VOTRE_CARTE_MÈRE >
Référence du processus de gravure :
Référence d’une gravure réussie :
Mise à jour du firmware
Étapes de mise à jour du firmware USB
Rechercher l’ID de la carte mère
Points clés pour l’identification
/dev/serial/by-id/usb-katapult_rp2040_E662549553642032-if00 dans l’image ci-dessous est l’ID de la carte mère
Mettre à jour le firmware
cd ~/klipper/ && make flash FLASH_DEVICE = < ID_DE_VOTRE_CARTE_MÈRE >
Remplacez <ID_DE_VOTRE_CARTE_MÈRE> par l’ID réellement obtenu
Étapes de mise à jour du firmware CAN ponté
Réinitialiser pour entrer en mode de gravure
<ID_DE_VOTRE_CARTE_MÈRE> est l’UUID CANBUS de la carte mère dans le fichier de configuration printer.cfg
Pour un hôte ordinaire, utilisez le code suivant
~/klippy-env/bin/python3 ~/katapult/scripts/flashtool.py -i can0 -r -u < ID_DE_VOTRE_CARTE_MÈRE >
Pour un hôte FLY, utilisez le code suivant
python3 ~/katapult/scripts/flashtool.py -i can0 -r -u < ID_DE_VOTRE_CARTE_MÈRE >
f95cee90e1f9 dans l’image ci-dessous est l’UUID CANBUS de la carte mère (à titre d’exemple uniquement)
Rechercher le nouvel ID de l’appareil
Points clés pour l’identification
Ceci est juste une référence !
/dev/serial/by-id/usb-Klipper_stm32f072xb_38001B000551324752333720-if00 dans l’image ci-dessous est le nouvel ID de la carte mère
Graver le nouveau firmware
cd ~/klipper/ && make flash FLASH_DEVICE = < ID_DE_VOTRE_CARTE_MÈRE >
Solutions en cas de gravure erronée
Méthode 1 : Entrer rapidement en mode de gravure
Coupez l’alimentation de la carte mère
Après avoir remis sous tension, appuyez deux fois rapidement sur le bouton RESET
Réentrez en mode de gravure
Méthode 2 : Re-gravure du firmware Katapult
Cliquez pour voir le guide de gravure du firmware Katapult
Recherche de l'ID CAN après le flash
Après avoir terminé le flash du firmware et ré-alimenté la carte, veuillez continuer à rechercher l'ID CAN.
Voir la méthode pour obtenir l'ID CAN