Aller au contenu principal

Compilation du firmware USB

Démarrer 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
note
  • 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>
prompt
  • 请确保上位机可以正常联网
  • 固件编译前需要使用SSH通过网络登录上位机
  • 请不要使用串口工具登录上位机

Klipper固件编译和配置页面操作说明

prompt

请确保键盘输入法为半角模式,即英文模式

  1. 键盘上键,下键,用于上下移动光标来选中菜单项
  2. 确认键Enter 或 空格键Space,用于勾选菜单或进入子菜单
  3. 退出键ESC,用于返回上一级菜单
  4. Q键,用于退出Klipper固件配置页面
  5. Y键,在退出Klipper固件配置页面时,如果有提示,则点击Y键保存配置文件
note

如果配置页面选项比较少,请先勾选[ ] 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
  • rm -rf ~/klipper/.config && rm -rf ~/klipper/out est la suppression des données de compilation précédentes et du firmware make menuconfig est la compilation du firmware, après l'exécution, une interface similaire à celle ci-dessous devrait apparaître

  • Sélectionnez Enable extra low-level configuration options et appuyez sur Entrée

  • Accédez au menu Micro-controller Architecture puis sélectionnez STMicroelectronics STM32 et appuyez sur Entrée

  • Accédez au menu Processor model, sélectionnez STM32F072 et appuyez sur Entrée

  • Sélectionnez Bootloader offset, choisissez : 8KiB bootloader

  • Communication interface, choisissez : USB (on PA11/PA12) et appuyez sur Entrée

  • Veuillez vérifier avec l'image ci-dessous pour vous assurer qu'elle correspond, avant de passer à l'étape suivante

  • Appuyez sur la touche Q, puis apparaît Enregistrer la configuration, appuyez à ce moment sur Y

  • La configuration est maintenant enregistrée et vous êtes revenu à l'interface de ligne de commande

  • Entrez make -j4 pour commencer la compilation, le temps peut être long

  • Si la sortie ci-dessous est affichée, cela signifie que la compilation a réussi

    Linking out/klipper.elf
    Creating hex file out/klipper.bin

Entrer en mode de programmation

Astuce

Les D7 sortis après le 1er septembre 2024 sont déjà équipés du firmware Katapult.

  • Connectez la carte mère au PC avec un câble Type-C, puis appuyez deux fois sur le bouton reset, une LED clignotera alors sur la carte mère.
Avertissement
  • Si aucune LED ne clignote, veuillez réessayer la mise à jour du firmware Katapult :Mise à jour du firmware Katapult
  • Si aucune LED ne clignote, effectuez d'abord la mise à jour du firmware Katapult avant d'exécuter l'étape suivante.

Vérifier si le mode de programmation est activé

  • Assurez-vous que votre PC est connecté à Internet correctement et que le câble de connexion entre la machine inférieure et la machine supérieure possède une fonction de transmission de données.
  • Connectez-vous via SSH à votre PC et entrez lsusb puis appuyez sur Entrée, si vous voyez les informations entourées dans l'image ci-dessous, vous pouvez passer à l'étape suivante.
    • Si aucune information n'est retournée, il s'agit d'un problème du système du PC, nous ne pouvons rien faire de plus, vous devez changer de système confirmé comme fonctionnel ou remplacer le PC.
    • Si l'instruction lsusb n'est pas reconnue, vous pouvez installer la commande suivante :
      sudo apt-get install usbutils
  • L'ID affiché dans la zone rouge peut être utilisé comme référence mais n'est pas fixe ; le suffixe OpenMoko, Inc. stm32f072xx est pertinent, où XX est variable.
    • Certains PC peuvent ne pas afficher correctement ou ne pas afficher du tout en raison de problèmes systèmes.

Programme du firmware

prompt
  • Lors de l'installation du plugin de gravure, veillez à être connecté à Internet et assurez-vous que votre ordinateur de bureau est correctement connecté à Internet.
  • Si vous avez déjà installé le plugin, il n'est pas nécessaire de le réinstaller.

Démarrer la gravure

Avertissement
  • Non compatible avec les fly-ordinateurs de bureau : Veuillez exécuter le code ci-dessous pour installer les paquets nécessaires pour la gravure des firmwares ! Sinon, la gravure du firmware ne fonctionnera pas !
      cd && git clone https://github.com/Arksine/katapult.git
  • Pour l'utilisation en Chine, utilisez cette commande :
  cd && git clone https://gitee.com/MrCakeFuck/katapult.git
  • Utilisez la commande ci-dessous pour rechercher votre ID de périphérique, une sortie similaire à celle de l'image suivante doit apparaître (remarque : l'ID de l'image est fourni à titre indicatif, chaque carte mère a un ID différent)

    ls /dev/serial/by-id/*
  • Pour graver le firmware, utilisez la commande ci-dessous, assurez-vous d'avoir compilé le firmware, remplacez <votre ID de carte mère> par celui obtenu à l'étape précédente

    ~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -d /dev/serial/by-id/<votre ID de carte mère>

Pour le système fast, utilisez cette commande pour graver, remplacez <votre ID de carte mère> par celui obtenu à l'étape précédente

python ~/katapult/scripts/flashtool.py -d /dev/serial/by-id/<votre ID de carte mère>

  • Référence ci-dessous :

  • Résultat après la gravure :

Mise à jour du firmware

  • Utilisez la commande ci-dessous pour rechercher votre ID de carte mère, une sortie similaire à celle de l'image suivante doit apparaître (remarque : l'ID de l'image est fourni à titre indicatif, chaque carte mère a un ID différent)

    ls /dev/serial/by-id/*
Attention

L'ID de la carte mère dans l'image suivante est /dev/serial/by-id/usb-katapult_rp2040_E662549553642032-if00.

  • La mise à jour du firmware USB nécessite d'exécuter la commande ci-dessous après avoir compilé le firmware le plus récent, remplacez <votre ID de carte mère> par celui obtenu à l'étape précédente

    cd ~/klipper/ && make flash FLASH_DEVICE=<votre ID de carte mère>

Solution pour la gravure incorrecte du firmware

  • Éteignez le circuit de la carte mère, redémarrez-la et appuyez rapidement deux fois sur le bouton reset pour réactiver le mode de gravure.
  • Ou utilisez le programme de gravure katapult via une station de travail WindowsGraver le firmware katapult