Aller au contenu principal

Compilation du microprogramme CAN

Démarrage de la compilation

  • Il faut utiliser un ordinateur hôte ayant installé le service klipper Se connecter en SSH via le réseau
  • Et connecter l'appareil à l'ordinateur hôte
  • Remarque : veuillez utiliser un ordinateur hôte normal, comme Raspberry Pi FLY, etc. Si c'est un ordinateur hôte modifié (comme une baguette WiFi, Xiaomi Mi, etc.), cet ordinateur hôte présente trop de problèmes et ne pourra pas être soutenu.
note
  • Remarques sur le système FlyOS-Armbian et les systèmes normaux
    • Les systèmes d'ordinateurs hôtes normaux tels que Raspberry Pi, FLY, etc., appartiennent à cette catégorie
    • Ces ordinateurs hôtes ne doivent pas utiliser l'utilisateur ROOT pour effectuer tout type d'opération
    • Veuillez utiliser un utilisateur normal
    • Méthode de changement d'utilisateur : pour le système FlyOS-Armbian, utilisez la commande su fly pour basculer vers l'utilisateur normal
    • Pour les autres systèmes, utilisez la commande su <votre nom d'utilisateur de l'ordinateur hôte> pour basculer vers l'utilisateur normal
    su <votre nom d'utilisateur de l'ordinateur hôte>
prompt
  • Assurez-vous que l'hôte peut se connecter normalement à Internet
  • Avant de compiler le firmware, vous devez utiliser SSH pour vous connecter à distance via le réseau à l'hôte
  • Veuillez ne pas utiliser d'outil de terminal série pour vous connecter à l'hôte

Instructions d'utilisation pour la compilation et la configuration du firmware Klipper

prompt

Assurez-vous que le mode de saisie du clavier est en mode demi-largeur, c'est-à-dire en mode anglais

  1. La touche (haut) et la touche (bas) du clavier sont utilisées pour déplacer le curseur verticalement afin de sélectionner les éléments du menu
  2. La touche Entrée ou la touche Espace est utilisée pour cocher une option de menu ou entrer dans un sous-menu
  3. La touche Échap est utilisée pour revenir au menu précédent
  4. La touche Q permet de quitter la page de configuration du firmware Klipper
  5. La touche Y, lorsqu'on quitte la page de configuration du firmware Klipper et qu'une invite apparaît, appuyez sur Y pour enregistrer le fichier de configuration
note

Si le nombre d'options de la page de configuration est limité, activez d'abord [ ] Activer les options de configuration de niveau inférieur supplémentaires pour afficher certaines options masquées

Voici comment compiler le firmware :

  • Connectez-vous via 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, et make menuconfig est la compilation du firmware ; après exécution, l'interface ci-dessous 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 Raspberry Pi RP2040/RP235x et appuyez sur Entrée

  • Sélectionnez Offset du bootloader, puis choisissez : 16KiB bootloader

  • Sélectionnez Interface de communication, puis choisissez : BUS CAN

  • Sélectionnez (4) Numéro de broche RX CAN, effacez 4 et tapez 1

  • Sélectionnez (5) Numéro de broche TX CAN, effacez 5 et tapez 0

  • Sélectionnez GPIO pins to set at micro-controller startup, entrez : !gpio5,!gpio19,!gpio24
note

Veuillez entrer !gpio5,!gpio19,!gpio24 en mode d'entrée anglais

  • Appuyez sur la touche Q, vous verrez Save configuration, appuyez ensuite sur Y
  • Vous devriez maintenant avoir enregistré la configuration et être retourné à l'interface de ligne de commande
  • Entrez la commande suivante pour commencer la compilation, cela prendra un certain temps
make -j4
  • Lorsque le message suivant s'affiche, la compilation est réussie

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

Connexion

  • Avant de programmer le microprogramme, connectez la carte d'outils à UTOC ou à une carte mère ayant été programmée avec le microprogramme de pont, voici un schéma de connexion de référence

  • Veuillez noter que les commutateurs doivent être positionnés correctement

  • Assurez-vous que la résistance entre CAN H et CAN L est d'environ 60Ω lorsqu'elle est mesurée à l'aide d'un multimètre lorsque l'alimentation est coupée, si elle est de 120Ω, il faut activer le commutateur 120Ω, si elle est d'environ 40Ω, il faut désactiver le commutateur

  • Après avoir connecté la carte d'outils à UTOC ou à une carte mère ayant été programmée avec le microprogramme de pont à l'aide d'un câble de données XT30, les LED de la carte mère clignotent.

Avertissement
  • Si aucune LED ne clignote, réprogrammez le microprogramme katapult : Programmer le microprogramme katapult
  • Si aucune LED ne clignote, exécutez la suite des étapes après avoir programmé le microprogramme katapult

Recherche d'appareils

  • Assurez-vous que l'hôte est correctement connecté à Internet et que le périphérique inférieur est connecté à l'hôte avec un câble de données capable de transférer des données.
  • Après avoir établi une connexion SSH avec l'hôte, entrez la commande lsusb et appuyez sur Entrée. Si les informations entourées dans l'image ci-dessous apparaissent, vous pouvez passer à l'étape suivante.
    • Si aucune information n'est retournée, il s'agit d'un problème du système de l'hôte, et nous ne pouvons rien faire. Vous devez changer pour un système fonctionnel ou remplacer l'hôte.
    • Si la commande affiche « instruction introuvable », vous pouvez exécuter la commande suivante pour l'installer :
      sudo apt-get install usbutils
  • 1d50:606f appartient au périphérique que vous utiliserez cette fois-ci.
  • Certains hôtes peuvent ne pas afficher complètement ou ne pas afficher du tout en raison de problèmes de système.
  • Si la commande lsusb affiche le périphérique mais que 1d50:606f n'est pas visible, essayez de changer de câble de données et reliez la carte mère à un autre port USB de l'hôte.
Remarque

Vous ne pouvez passer à l'étape suivante qu'en présence de 1d50:606f.

Recherche d'ID et programmation

prompt
  • Il est recommandé de ne pas effectuer la recherche d'ID et le flashage de la mise à jour firmware pendant l'impression
  • L'ID des mises à jour firmware CAN de la carte mère ou de la carte d'outil Katapult est exactement le même que celui de Klipper
note
  • Veuillez vous assurer que le réseau CAN de l'ordinateur hôte est configuré
  • Vous pouvez utiliser les commandes ci-dessous pour rechercher l'ID CAN uniquement si 1d50:606f apparaît après lsusb
  • La vitesse CAN de la carte d'outil doit être identique à celle de l'ordinateur hôte, sinon l'ID ne peut pas être trouvé et le flashage ne peut pas être effectué
  • Exécutez la commande suivante pour interroger le UUID du bus CAN :

    ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0

    Utilisez cette commande pour rechercher CAN_ID sur le système fast

    python ~/klipper/scripts/canbus_query.py can0
    • Après avoir saisi, il y aura plusieurs cas selon votre machine, voici un exemple

      • Première situation : une carte mère avec un microcontrôleur bridé, affiche un ID et indique Application: Klipper
      • Deuxième situation : une carte mère avec un microcontrôleur bridé et une carte d'outil nécessitant une mise à jour firmware, affiche deux ID
      • Troisième situation : utilisation de UTOC avec une carte d'outil nécessitant une mise à jour
      • Remarque : UTOC n'affiche pas d'ID
      • Quatrième situation : pas d'indication d'ID, cela signifie généralement que Klipper l'a pris, la vitesse CAN de l'ordinateur hôte est incorrecte ou il y a un problème de câblage
    • En cas normal, si la carte d'outil à mettre à jour est en mode CANBOOT, elle affichera Application: CanBoot et la LED correspondante clignotera. À ce moment, vous devez programmer la mise à jour firmware Klipper, autrement il ne sera pas possible de se connecter !!

    • Remarque : si c'est une mise à jour firmware Klipper et que l'ID a été entré dans la configuration, l'ID ne s'affichera plus et sera utilisé par Klipper. Vous devrez masquer l'ID correspondant et couper complètement l'alimentation de la carte mère avant de la redémarrer.

    note
    • Si vous ne trouvez pas le UUID, veuillez consulter le document ci-dessous
    • Questions fréquentes sur le CAN

Flashage de la mise à jour firmware

  • Remplacez 241696050c56 par le UUID trouvé dans la recherche, veuillez noter qu'il y a un espace après -u

    python3 ~/klipper/lib/canboot/flash_can.py -u 241696050c56
  • Comme indiqué sur l'image ci-dessous, si CAN Flash Success apparaît, le flashage est réussi

Mise à jour de la mise à jour firmware

  • Si vous avez besoin de mettre à jour la mise à jour firmware, il suffit de compiler la mise à jour firmware puis d'exécuter à nouveau la commande de flashage
  • Toutefois, assurez-vous de trouver l'ID correspondant ou que Klipper soit connecté
    python3 ~/klipper/lib/canboot/flash_can.py -u  <MCU ID>

Vérification du démarrage du microprogramme

  • Si le microprogramme démarre correctement, la LED s'allumera
Loading...
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -