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 Q, puis apparaîtra Save configuration, appuyez à nouveau sur Y

  • Vous devriez maintenant avoir sauvegardé la configuration et être revenu à l'interface de ligne de commande

  • Entrez make -j4 pour commencer la compilation, cela prend un certain temps

  • Si la sortie finale ressemble au texte suivant, la compilation a réussi

    Linking out/klipper.elf
    Creating hex file out/klipper.bin
  • Voici le journal de la procédure de compilation du firmware
Asciinema cast

Entrer en mode de flashage

Astuce

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

  • Connectez la carte mère à l'ordinateur principal 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, rechargez le firmware Katapult : Recharger le firmware Katapult
  • Si aucune LED ne clignote, rechargez d'abord le firmware Katapult avant de poursuivre.

Vérifier si le mode de flashage est activé

  • Assurez-vous que l'ordinateur principal peut se connecter correctement à Internet et que le câble de connexion entre la station inférieure et supérieure a la fonctionnalité de transmission de données.
  • Connectez-vous via SSH à l'ordinateur principal et entrez lsusb puis appuyez sur entrée. Si l'information encerclée dans l'image ci-dessous apparaît, vous pouvez passer à l'étape suivante.
    • Si aucune information n'est retournée, il s'agit d'un problème système de l'ordinateur principal, nous ne pouvons rien faire de plus, vous devez changer pour un système confirmé ou remplacer l'ordinateur principal.
    • Si l'instruction lsusb n'est pas reconnue, exécutez cette commande pour l'installer
      sudo apt-get install usbutils
  • L'ID affiché dans la zone rouge peut être utilisé comme référence mais il n'est pas fixe, le suffixe OpenMoko, Inc. stm32f072xx après lequel il y a des caractères variables XX peut servir de critère de jugement.
    • Certains ordinateurs principaux peuvent ne pas afficher correctement ou ne pas afficher du tout en raison de problèmes système.

Flasher le 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