Imprimante 3D Artillery Sidewinder X2
Page mise à jour le 06-01-2026 à 23:21
Index
  1. Les optimisations
  2. Etalonnage
  1. Dépannage
  2. Installer Klipper
  1. Remarques
  2. Fiche technique
Les optimisations

Modifications apportées
  • Ajout d’un plateau PEI texturé.
  • Renfort du portique de l'axe Z par triangulation (téléchargeable ici).
  • Réalisation d'une pièce améliorant le contact sur le fin de course de l'axe X (téléchargeable ici).
  • Remplacement des vis d'excentriques de l'axe Y par des vis 6 pans évitant ainsi le démontage du rail pour le réglage des galets.
  • Utilisation d'une rallonge USB pour préserver le slot.
  • Réalisation d’un déport de bobine car le support d'origine est instable et lourd (bobine neuve + support = 1.8 kg). Son positionnement sur le portique est peu sécurisant et génère des résonnances parasites lors des déplacements de la tête. Cette modification permet également de placer le filament dans une sécheuse durant l'impression (téléchargeable ici).

  • Réalisation d’un contacteur d’alimentation avec auto-maintien évitant à l'imprimante de se réactiver après une coupure secteur. Ceci préserve des à-coups générés sur le réseau électrique, rend la commande accessible et procure un arrêt d'urgence.

Etalonnage

Calibrage de l'extrudeur
  • Tracer un repère à 110mm sur le filament
  • Mesure
    M104 S200 extrudeur à 200°
    M83 passage en mode relatif -> message OK
    G1 F50 extruder à la vitesse de 50mm par minute
    G1 E100 extruder 100mm de filament
    M104 S0 extrudeur à 0°
  • Correction
    M503 relever la valeur en pas/mm de E dans la ligne M92 (ex M92 X80.12 Y80.12 Z399.78 E445.00)
    formule à appliquer : valeur = (longueur demandée / longueur extrudée) * valeur actuelle
    M83 applique la nouvelle valeur
    G1 F50 enregistre en EEPROM (si erreur EEPROM disabled, ajouter la commande M92 dans le Gcode de démarrage)
Calibrage du multiplicateur d'extrusion sous Prusa Slicer
  • Reporter précisément le diamètre du filament dans le logiciel de tranchage
  • Imprimer un cube de 20x20x20mm avec les paramètres suivants :
    • Multiplicateur d'extrusion : 1
    • Largeur d'extrusion : 0.4mm (avec buse 0.4mm)
    • Remplissage interne : 0
    • Hauteur de couche : 0.15mm
    • Couches solides supérieures : 0
    • Nombre de contours/périmètres : 1
  • Mesurer l'épaisseur de la paroi du cube
  • Formule à appliquer : (épaisseur demandée / épaisseur réelle) x multiplicateur actuel
  • Reporter la nouvelle valeur du multiplicateur d'extrusion dans le logiciel de tranchage
Dépannage

Ticket SAV Artillery Chine
  • https://evnovo.zohodesk.com/portal/en/newticket
  • Joindre facture + numéro de série situé sur étiquette du moteur Z gauche
  • Joindre photo ou lien de vidéo si possible
Versions
  • Firmware afficheur TFT : Artillery Sidewinder X2 TFT Firmware 3.2.6
  • Firmware mainboard RUBY : Artillery Sidewinder X2 Firmware (stock, bin)
G-code
M115 Firmware info (version MARLIN)
M502 Factory reset (clear EEPROM)
M997 Device Firmware update (mode DFU)

Utilisation de RepetierHost (procédure vérifiée)
  • Démarrage
    • Connecter l'imprimante au PC en USB
    • Vérifier la présence du nouveau port COM dans le gestionnaire de périphériques
    • Lancer RepetierHost
    • Configuration / Réglage imprimante
      • Sélectionner le port de communication
      • Sélectionner la vitesse de communication (115200 par défaut, sinon 250000)
      • Cliquer sur OK
    • Cliquer sur Connecter
  • EEPROM
    • Configuration / Configuration EEPROM du firmware
      • Exporter les valeurs EEPROM
      • Importer les valeurs EEPROM
  • Envoyer une commande à l'imprimante
    • Panneau de commandes / onglet Contrôle manuel / champ G-code
      • Entrer la commande (insensible à la casse)
      • Cliquer sur Envoyer
Clear EEPROM (procédure vérifiée)
  • Connecter l'imprimante au PC en USB
  • Lancer RepetierHost (ou PronterFace)
  • Envoyer la commande M502 (Factory Reset)
  • Déconnecter le câble USB du PC
Flash du firmwware de l'afficheur TFT (procédure non vérifiée)
  • Eteindre l'imprimante
  • Placer le contenu du dossier SW-X2.TFT.STGD.3.2.6.EN à la racine d'une carte MicroSD
  • Insérer la carte MicroSD dans le slot de l'afficheur
  • Allumer l'imprimante
  • Attendre la fin de la mise à jour
  • Eteindre l'imprimante
  • Retirer la carte MicroSD
  • Rallumer l'imprimante
Flash du firmwware de la carte mère RUBY (anciennes procédures non vérifiées)
  • Déconnecter l'imprimante du secteur
  • Connecter l'imprimante au PC en USB
  • Passer en mode DFU (Device Firmware Update) - méthode 1
    • Vérifier la présence du nouveau port COM dans le gestionnaire de périphériques
    • Lancer RepetierHost
    • Sélectionner le port et la vitesse de communication (115200 par défaut, sinon 250000)
    • Cliquer sur Connecter
    • Envoyer la commande M997 (Firmware update)
    • Ne pas tenir compte des erreurs liées à la perte de connexion
    • Vérifier la présence du nouveau port USB STM32 BOOTLOADER dans le gestionnaire de périphériques
    • Quitter RepetierHost
  • Passer en mode DFU (Device Firmware Update) - méthode 2 (si la méthode 1 ne fonctionne pas)
    • Déconnecter le cordon USB
    • Ouvrir le boitier de l'imprimante
    • Placer un strap entre les pins 3.3v et Boot du port ISP de la carte mère
    • Reconnecter le cordon USB
  • Flash du firmware
    • Lancer le logiciel STM32CubeProgrammer (le port STM32 BOOTLOADER doit apparaitre)
    • Ouvrir le fichier .bin du firmware
    • Cliquer sur le bouton Connect
    • Cliquer sur le bouton Download
    • Quitter STM32CubeProgrammer
    • (retirer le strap si présent)
  • Finalisation
    • Allumer l'imprimante
    • Effectuer une mise à niveau complète du plateau
    • Effectuer un calibrage de l'extrudeur
Connecteurs de la carte mère Ruby
Installer Klipper

  1. Présentation
  2. Prérequis
  3. Installer PiOS
  4. Installer Klipper
  5. Flasher la carte mère
  6. Lier l'imprimante à Klipper
  7. Vérifier le fonctionnement
  8. Etalonner l'imprimante
  1. Mises au point matérielles
  2. Mise au point de la configuration
  3. Mises à jour
  4. Sauvegardes
  5. Première impression 3D
  6. Ajouter une caméra USB
  7. Ajouter un écran tactile
  8. Migrer de USB à UART
  1. Intégrer à OctoEverywhere
  2. Interface Mainsail
  3. Macros
  4. Commandes étendues
  5. Assistance technique
  6. Observations
  7. Annexe
  8. Sources
Présentation



Cette page décrit la méthode pour migrer une imprimante 3D Marlin vers le système Klipper.
Le tutoriel est basé sur une imprimante Artillery Sidewinder X2 mais peut être adapté à beaucoup d'autres modèles.
L'interface est volontairement conservée en anglais bien qu'il soit possible de l'afficher en français.

Principe des imprimantes sous Marlin
  • La carte de l'écran TFT est équipée d'un microprocesseur (MPU) et d'un logiciel propriétaire léger chargé de gérer l'interface
    utilisateur et de transmettre régulièrement les lignes G-code à la carte mère.
  • La carte mère embarque un microcontrôleur (MCU) et un programme chargé d'interpréter et d'exécuter les lignes G-code,
    d'animer les moteurs, de contrôler la chauffe et les ventilateurs et de lire l'état des capteurs (fins de courses et températures).
  • Chacune de ces deux cartes possède son propre firmware et communique via un port série.
  • Aucune de ces deux cartes n'est apte à accueillir un logiciel tel que Klipper.
Solution de migration vers Klipper
  • Klipper est installé sur un ordinateur (en l'occurrence un Raspberry) équipé du système d'exploitation Linux.
  • La carte mère de l’imprimante est flashée avec un firmware spécialement compilé pour communiquer avec Klipper.
  • Le Raspberry est connecté à l'imprimante via le port USB ou UART de la carte mère.
  • Klipper calcule les mouvements, les accélérations, les vitesses, les pressions et envoie des commandes précises à l’imprimante.
  • La carte mère de l’imprimante n'exécute alors que des instructions simples ce qui augmente considérablement les performances.
  • Le pilotage est assuré par une interface web évoluée et un écran tactile confortable (l'écran TFT de l'imprimante n'est plus utilisé).

Sur l'imprimante Artillery Sidewinder X2 : le capteur de filament connecté d'origine à la carte MPU sera déplacé vers la carte MCU.
Bénéfices apportés à l'imprimante 3D
  • Nivellement du plateau simplifié et de haute précision (Mesh Bed Leveling).
  • Etalonnage des PID (Proportionnel Intégral Dérivé) du plateau et de l'extrudeur.
  • Gestion de la pression dans l'extrudeur (Pressure Advance).
  • Fluidité des mouvements et amélioration des vitesses de déplacement.
  • Meilleure qualité d'impression.
  • Ajustement des paramètres durant l'impression.
  • Connexion au réseau local.
  • Envoi des fichiers G-code et suivi de l'impression depuis le slicer.
  • Interface web confortable et pilotage à distance.
  • Prise en charge de caméras.
  • Prise en charge d'un écran tactile haute définition.
  • Paramétrages avancés par fichiers de configuration.
  • Création de macros.
Aller plus loin avec Klipper
Klipper possède la fonction Input Shaping qui permet d’imprimer à des vitesses et des accélérations élevées en compensant les résonances et les oscillations moyennant l'installation d'un accéléromètre de type ADXL345.
Lien vers la documentation officielle.
La conception mécanique de l'imprimante Artillery Sidewinder X2 ne permet pas de telles performances. Cela nécessiterait une refonte de la structure avec des guidages de précision et une mise à niveau de la tête d'impression.
Cette option économiquement déraisonnable ne sera pas développée face aux tarifs concurrentiels des imprimantes core XY.
Prérequis

Prérequis matériels
(les options retenues dans ce tutoriel sont indiquées entre parenthèses)
  • Un Raspberry Pi 3 ou supérieur (Pi 3B+)
  • Une alimentation fiable (alimentation originale Raspberry 5.1V 2.5A)
  • Une carte microSD de qualité et d'une capacité de 8 Go minimum (16 Go SanDisk de classes U1/C10)
  • Une imprimante Marlin (Artillery Sidewinder X2 (2022) équipée de la carte mère Artillery Ruby version 1.2)
  • Optionnel : une caméra compatible avec le système PiOS (webcam USB Logitech C270)
  • Optionnel : un écran tactile (7" IPS HDMI et USB 1024x600 QinHeng Electronics de marque HZWDONE)
Klipper peut être installé sur un PC équipé du système d'exploitation Linux Debian sans interface graphique

Prérequis logiciels sous Windows Versions compatibles Windows 7
Installer PiOS

Préparer la carte microSD
  1. Connecter la carte microSD au PC
  2. Exécuter Raspberry Pi Imager
  3. Sélectionner :
    • Modèle de Raspberry Pi : Raspberry Pi 3 dans cet exemple
    • Système d'exploitation : [Raspberry Pi OS (other)] puis [Raspberry Pi OS Lite (64-bit)]
    • Stockage : le lecteur de la carte microSD
  4. Modifier les réglages
    • Nom d'hôte : donner un nom au Raspberry, en minuscules et sans espaces
    • Nom d'utilisateur : créer un nom d'utilisateur, en minuscules et sans espaces
    • Mot de passe : créer un mot de passe fort
    • Définir les paramètres Wi-Fi (ou passer cette étape s'il n'est prévu qu'une connexion Ethernet)
    • Définir les réglages régionaux : Fuseau horaire [Europe/Paris] et Type de clavier [fr]
    • Onglet Services : cocher [Activer SSH] et [Utiliser un mot de passe pour l'authentification]
  5. Enregistrer et confirmer l'enregistrement des réglages
  6. Confirmer l'écriture sur la carte microSD
  7. Attendre la fin de l'écriture et de la vérification (l'opération prend moins de 10 minutes)
Finaliser l'installation du système
  1. Insérer la carte microSD dans le Raspberry
  2. Alimenter le Raspberry et attendre la fin de l'installation (l'opération prend quelques minutes)
  3. Relever l'adresse IP du Raspberry
    • Soit dans l'interface DHCP du routeur
    • Soit en utilisant le scanner réseau de MobaXterm (Tools -> Network scanner)
    • Soit avec la commande ip a (si un écran est présent)
  4. Créer une réservation pour le Raspberry dans le serveur DHCP
La version installée est Debian 13.1 trixie
Suivre ce lien pour l'installation d'une version antérieure de PiOS
Installer Klipper

Installer Klipper sur le Raspberry avec l'assistant KIAUH
KIAUH (Klipper Installation And Update Helper) est la méthode préconisée pour installer les différents modules :
  • Klipper est l'application principale.
  • Moonraker est le connecteur.
  • Mainsail est l'interface web la plus populaire.
  • Fluidd est une interface web alternative.
  • Crowsnest est le plugin de gestion de caméras.
  • Klipperscreen est l'interface pour écran tactile.
Le tutoriel est axé sur l'interface web Mainsail. Fluidd est évoqué en fin de page dans la rubrique Observations.
Le port USB est retenu dans un premier temps en tant que mode de communication entre imprimante et Raspberry.
La migration de USB à UART sera ensuite détaillée pour une meilleure stabilité du système.
  1. Exécuter l'une des commandes suivantes pour se connecter en SSH au Raspberry avec MobaXterm :
  2. ssh <nom_utilisateur>@<nom_d'hôte>.local
    ssh <nom_utilisateur>@<adresse_ip>
    (on utilise de préférence l'adresse IP car le nom d'hôte est rarement découvert sur le réseau)
  3. Récupérer et installer le paquetage Klipper:
  4. sudo apt update
    sudo apt upgrade
    sudo apt install git -y
    git clone https://github.com/th33xitus/kiauh.git
  5. Exécuter l'assistant d'installation KIAUH :
  6. ./kiauh/kiauh.sh
    Sélectionner 1) [Install]

    Installer successivement (en tapant ENTER à chaque question pour appliquer les choix par défaut) :
    1) [Klipper]
    2) [Moonracker]
    3) [Mainsail]
  7. Générer le firmware destiné à la carte mère Ruby 1.2 de l'imprimante :
  8. Sélectionner successivement :
    B) Back
    4) [Advanced]
    1) [Build]

    Les paramètres à utiliser sont indiqués au début du fichier spécifique à cette imprimante :
    EP3D_SWX2_Klipper_Configs_and_Firmware\Klipper\Configs\SWX2_CR-Touch\printer.cfg
    D'autres fichiers de configuration sont disponibles pour de nombreux modèles d’imprimantes

    Veiller à appliquer les paramètres adaptés.
    Ceux-ci ne s'appliquent qu'à une carte mère Ruby v1.2
    Toute erreur pourrait bloquer la carte mère de l'imprimante.


    Activer : Enable extra low-level configuration options
    Activer : Optimize stepper code for 'step on both edges'
    Sélectionner :
    • Micro-controler Architecture (STMicroelectronics STM32)
    • Processor model (STM32F401)
    • Bootloader offset (No bootloader)
    • Clock Reference (8 MHz crystal)
    • Communication interface (USB (on PA11/PA12))
    • USB ids
    Taper Q pour quitter puis Y pour sauvegarder la configuration et compiler le firmware
KIAUH propose des options [Flash] et [Build + Flash] détaillées en annexe.
Flasher la carte mère

Récupérer le fichier firmware généré par KIAUH
  1. Se connecter au Raspberry avec MobaXterm

  2. Copier le fichier /home/<utilisateur>/klipper/out/klipper.bin sur le bureau
Flasher le firmware de la carte mère Ruby 1.2
(seul le firmware de la carte mère est flashé, la carte de l'écran TFT reste intacte mais devient inopérante)
  1. Allumer l'imprimante
  2. Connecter l'imprimante au PC via USB (prise latérale de type B)
  3. L'installation du pilote s'effectue avec Windows Update
  4. Relever le numéro du port COM dans le Gestionnaire de périphériques Windows
  5. Placer l'imprimante en mode DFU (Device Firmware Update)
    • Méthode 1 (ne fonctionne qu'avec certains MCU)
      1. Lancer le programme Pronterface
      2. Renseigner le port COM de l'imprimante
      3. Régler la vitesse de transmission à 250000 bps
      4. Cliquer sur Connect -> message [Printer is now online]
      5. Envoyer à l'imprimante la commande G-code M997
      6. Réduire le programme Pronterface sans tenir compte des éventuels messages d'erreur

    • Méthode 2 (si la méthode 1 ne fonctionne pas)
      1. Eteindre l'imprimante
      2. Démonter la plaque inférieure
      3. Placer un cavalier entre les pins +3.3V et Boot0 de la carte mère
      4. Allumer l'imprimante

  6. Lancer le programme STM32CubeProgrammer
    1. Sélectionner le port USB relié à l'imprimante
    2. Cliquer sur Connectl'indicateur doit passer à [Connected]
    3. Cliquer sur Erasing & Programming (icône de téléchargement)
    4. Dans File path sélectionner le fichier binaire klipper.bin
    5. Cliquer sur Start Programming
    6. Cliquer sur OK -> au message [File download complete]
    7. Cliquer sur Disconnectl'indicateur doit passer à [Not Connected]
    8. Quitter STM32CubeProgrammer

  7. Revenir au programme Pronterface (si la méthode 1 a été retenue pour le passage en mode DFU)
    1. Cliquer sur Disconnect -> message [Disconnected]
    2. Quitter le programme Pronterface
  8. Eteindre l'imprimante
  9. Déconnecter l'imprimante du PC
  10. Retirer le cavalier des pins +3.3V et Boot0 (si la méthode 2 a été retenue pour le passage en mode DFU)
Lier l'imprimante à Klipper

Lier l'imprimante à Klipper
  1. Allumer l'imprimante
  2. Alimenter le Raspberry
  3. Connecter l'imprimante au Raspberry via USB (prise latérale de type B)
  4. Se connecter au Raspberry avec MobaXterm :
  5. ssh <nom_utilisateur>@<adresse_ip_raspberry>
  6. Exécuter l'assistant d'installation KIAUH :
  7. ./kiauh/kiauh.sh

    Sélectionner successivement :
    4) [Advanced]
    4) [Get MCU ID]
    1) [USB]
  8. Copier l'identifiant MCU qui s'affiche
  9. Entrer l'adresse IP du Raspberry (ou son nom d'hôte complet) dans un navigateur
  10. L'interface Klipper doit s'afficher avec ce message d'erreur :

    • Page [MACHINE]
    • Icône [Upload File]
    • Sélectionner tous les fichiers du dossier EP3D_SWX2_Klipper_Configs_and_Firmware\Klipper\Configs\SWX2_CR-Touch\
    • Cliquer sur [Open]

    • Cliquer sur le fichier printer.cfg pour l'éditer
    • Coller l'identifiant MCU à la suite de /dev/serial/by-id/ dans la rubrique [mcu]
      Exemple :
    • Cliquer sur [SAVE & RESTART]
    • L'interface Klipper doit à présent s'afficher sans erreurs
AVERTISSEMENT IMPORTANT
La carte mère de l'imprimante reste alimentée par le port USB du Raspberry.
Cela présente un risque de dégradation pour le Raspberry et pour l'imprimante.
Il convient d'isoler le PIN +5V du connecteur de type A du cordon USB (côté Raspberry).
Cette opération peut être réalisée très simplement avec du scotch d'électricien.
Vérifier le fonctionnement

Contrôler le bon fonctionnement de l'imprimante
  1. Températures
    • Page [DASHBOARD]
    • Fenêtre [TEMPERATURES] ➔ [EXTRUDER] ➔ [TARGET] = 50° ➔ ENTER
    • Fenêtre [TEMPERATURES] ➔ [HEATER BED] ➔ [TARGET] = 40° ➔ ENTER
    • Constater l'augmentation des températures
    • Fenêtre [TEMPERATURES] ➔ [COOLDOWN] ➔ ramène les valeurs cibles à zéro

  2. Fins de courses
    • Placer manuellement les 3 axes à mi-course
    • Page [DASHBOARD]
    • Fenêtre [CONSOLE] ➔ taper la commande QUERY_ENDSTOPS ➔ réponse : [x:open y:open z:open]
    • Maintenir appuyé le fin de course X et rappeler la commande (flèche haut) ➔ réponse : [x:TRIGGERED y:open z:open]
    • Maintenir appuyé le fin de course Y et rappeler la commande (flèche haut) ➔ réponse : [x:open y:TRIGGERED z:open]
    • Cliquer sur [HOME ALL] ou entrer G28 dans la console ➔ actionner (par deux fois) le palpeur Z lors de la descente

  3. Extrudeur
    • Page [DASHBOARD]
    • Fenêtre [TEMPERATURES] ➔ [EXTRUDER] ➔ [TARGET] ➔ 200° ➔ ENTER
    • Fenêtre [EXTRUDER] ➔ [FILAMENT LENGTH] ➔ 100 mm ➔ [EXTRUDE]
    • Le moteur de l'extrudeur doit s'actionner
Etalonner l'imprimante

Etalonner le plateau et les PID
(ces opérations seront à refaire périodiquement et dans le même ordre)
  1. Réglage du Z=0
    • Page [DASHBOARD]
    • Fenêtre [TOOLHEAD] ➔ [HOME ALL]
    • Fenêtre [CONSOLE] ➔ taper la commande PROBE_CALIBRATE
    • Régler le Z=0 avec une feuille de papier
    • Cliquer sur [ACCEPT] puis sur [SAVE CONFIG]
  2. Nivellement mécanique du plateau
    • Page [DASHBOARD]
    • Fenêtre [TOOLHEAD] ➔ [HOME ALL]
    • Fenêtre [CONSOLE] ➔ taper la commande SCREWS_TILT_CALCULATE
    • Le système palpe le plateau sur 4 points
    • Ajuster les molettes du plateau selon des indications puis cliquer sur [ACCEPT]
      (les sens de rotation indiqués sont vus de dessus)
    • Relancer la commande SCREWS_TILT_CALCULATE jusqu'à obtenir un résultat satisfaisant
  3. Etalonnage du PID plateau
    • Page [DASHBOARD]
    • Fenêtre [MACROS] ➔ [PID_BED] ➔ [TARGET_TEMP] ➔ 70° ➔ [SEND]
    • Le plateau effectue plusieurs variations entre 70° et 65°, patienter jusqu'à obtenir un message au format :
      PID parameters: pid_Kp=xx.xxx pid_Ki=x.xxx pid_Kd=xx.xxx
      The SAVE_CONFIG command will update the printer config file with these parameters and restart the printer.
    • Cliquer sur [SAVE CONFIG]

  4. Etalonnage du PID extrudeur
    • Page [DASHBOARD]
    • Fenêtre [MACROS] ➔ [PID_EXTRUDER] ➔ [TARGET_TEMP] ➔ 210° ➔ [SEND]
    • La buse effectue plusieurs variations entre 210° et 205°, patienter jusqu'à obtenir un message au format :
      PID parameters: pid_Kp=xx.xxx pid_Ki=x.xxx pid_Kd=xx.xxx
      The SAVE_CONFIG command will update the printer config file with these parameters and restart the printer.
    • Cliquer sur [SAVE CONFIG]
  5. Nivellement numérique du plateau
    • Page [DASHBOARD]
    • Fenêtre [TEMPERATURES] ➔ [HEATER BED] ➔ [TARGET] = 70° ➔ ENTER
    • Attendre que la température du plateau soit parvenue à 70°
    • Page [HEIGHTMAP]
    • Fenêtre [HEIGHTMAP] ➔ [HOME ALL]
    • Fenêtre [HEIGHTMAP] ➔ [CALIBRATE]
    • [BED MESH CALIBRATE] ➔ Name = default ➔ [CALIBRATE]
      (conserver default en tant que nom ou le modifier aussi dans la macro PRINT_START du fichier start.cfg :
      BED_MESH_PROFILE LOAD=default)
    • Le système effectue un palpage sur 25 points
    • Cliquer sur [SAVE CONFIG]
Mises au point matérielles

Activer le capteur de filament
Le capteur est connecté d'origine à la carte de l'écran TFT rendue inopérante.
Pour être à nouveau fonctionnel il doit être connecté à la prise de fin de course Z vacante (au bas du montant gauche du portique).
Solution 1 : déplacer le câble original (sa longueur est suffisante et cette solution est la plus simple).
Solution 2 : confectionner un câble croisé : masse au centre, +5V et signal inversés.
Solution 3 : confectionner une rallonge droite pour relier en interne la prise initialement connectée en B1 sur la carte écran
                  au connecteur repéré Z-LIMIT sur la carte mère (nécessite le démontage de la plaque inférieure).
  • Le script de configuration est déjà actif dans le fichier printer.cfg et stipule le nom donné au capteur : filament
  • Commande CONSOLE retournant l'état du capteur :
    QUERY_FILAMENT_SENSOR SENSOR=filament
    Réponse : Filament Sensor filament: filament detected (ou not detected)
  • La ligne [Filament] de la fenêtre [Miscellaneous] indique en temps réel l'état du capteur (detected ou empty) :
    Le switch logiciel permet de désactiver la détection en cas d'absence ou de panne du capteur.
    La commande envoyée par le switch est : SET_FILAMENT_SENSOR SENSOR=filament ENABLE=0 (ou 1)
Eteindre l'écran tactile d'origine
L'écran TFT de l'imprimante peut être déconnecté étant donné qu'il n'est plus utilisé. Cette opération présente l'avantage de ne plus émettre de bip désagréable à la mise sous tension.
  1. Démonter la plaque inférieure
  2. Débrancher le connecteur UART à 8 broches de la carte écran

Le bouton RESET de la carte écran reste fonctionnel et réinitialise la carte mère en provoquant une déconnexion du MCU.
La reconnexion avec Klipper s'effectue avec la fonction [Firmware Restart].
Déconnecter la prise à 2 broches (fils rouge et noir) pour rendre le switch inactif.
Les autres connecteurs de la carte écran
  • La nappe étroite est reliée à la platine supportant la prise USB et le lecteur microSD
  • La nappe large est reliée à l'écran tactile
  • La prise à 3 broches repérée B1 correspond à l'ancienne position du capteur de filament
  • La prise à 2 broches est reliée au RESET de la carte mère (le RESET est fonctionnel si cette prise reste branchée)
Mise au point de la configuration
  • [MACHINE] ➔ printer.cfg
    • Adapter le nom du répertoire HOME dans le chemin des fichiers G-code
        [virtual_sdcard]
        path: /home/<utilisateur>/printer_data/gcodes
        on_error_gcode: CANCEL_PRINT

    • Eviter les échecs de palpage avec message d'erreur : BLTouch failed to deploy
        [bltouch]
        ...
        pin_move_time: 0.30 # 0.22 par défaut
        ...

    • Limiter la vitesse de homing sur les trois axes
        [stepper_x]
        ...
        homing_speed: 70 # 100 par défaut
        second_homing_speed: 10 # 125 par défaut

        [stepper_y]
        ...
        homing_speed: 50 # 125 par défaut
        second_homing_speed: 10 # 10 par défaut

        [stepper_z]
        ...
        homing_speed: 20 # 25 par défaut
        second_homing_speed: 10 # 10 par défaut

    • Limiter la vitesse de leveling sur les trois axes
        [bltouch]
        ...
        speed: 10 # 15 par défaut
        ...

        [bed_mesh]
        speed: 50 # 150 par défaut
        ...
    • Ajouter la lecture de la température du Raspberry Pi
        [temperature_sensor Raspberry]
        sensor_type: temperature_host
        min_temp: 10
        max_temp: 80 # 85 maximum
    • Modifier la lecture de la température du MCU de la carte mère
        [temperature_sensor mainboard]
        sensor_type: temperature_mcu
        min_temp: 10 # 10 par défaut
        max_temp: 65 # 60 par défaut
  • [MACHINE] ➔ start.cfg
    • Réduire la luminosité de la LED durant d'impression
        [gcode_macro _PURGE_LINE]
        gcode:
            ...
            ; SET_LED LED=extruder RED=1 GREEN=1 BLUE=1
            SET_LED LED=extruder RED=0.25 GREEN=0.25 BLUE=0.25
            ...

        [gcode_macro SET_LED_TO_WHITE]
        gcode:
            ; SET_LED LED=extruder RED=1 GREEN=1 BLUE=1
            SET_LED LED=extruder RED=0.25 GREEN=0.25 BLUE=0.25
  • [MACHINE] ➔ end.cfg
    • Limiter la vitesse de parquage des axes X et Y en fin d'impression
        [gcode_macro PRINT_END]
        gcode:
            ...
            G0 X0 Y300 F4800 ; Move XY (F7500 par défaut)
            ...

    • Réduire la longueur de rétractation en fin d'impression
        [gcode_macro PRINT_END]
        gcode:
            ...
            G1 E-25 F2400 ; Retract filament (E-35 par défaut)
            ...
  • [MACHINE] ➔ macros.cfg
    • Réduire la longueur de filament et la longueur de rétractation au chargement
        [gcode_macro FILAMENT_LOAD]
        gcode:
            ...
            G1 E60 F150 ; Load filament (E125 par défaut)
            G1 E-25 F2400 ; Retract filament (E-35 par défaut)
            ...

    • Ajouter des macros personnalisées
    Mises à jour

    A propos des mises à jour
    Les mises à jours sont accessibles
    Soit depuis KIAUH ➔ [UPDATE]

    Soit depuis la page [MACHINE] ➔ fenêtre [UPDATE MANAGER]

    L'interface affiche un avertissement avant exécution :
    Cela signifie qu'il pourrait être nécessaire de flasher la carte mère
    avec un firmware recompilé et que certains paramètres
    pourraient être à modifier dans les fichiers de configuration.
    (les risques sont moindres lorsqu'il s'agit de mises à jour mineures)

    Ce type de message apparaitra au redémarrage en cas d'incompatibilité :


    En règle générale est conseillé de ne pas effectuer de mises à jour
    tant que le système fonctionne correctement.
    Sauvegardes

    Sauvegarder la configuration depuis l'interface
    1. Page [MACHINE]
    2. Fenêtre [CONFIG FILES] ➔ [ROOT] ➔ config
    3. Cocher les fichiers à sauvegarder
    4. Cliquer sur l'icône [DOWNLOAD]
    (l'archive de sauvegarde est à la fois téléchargée et mise en copie avec les autres fichiers de configuration)
    Sauvegarder la configuration sur la carte microSD avec KIAUH
    1. Se connecter au Raspberry avec MobaXterm :
    2. ssh <nom_utilisateur>@<adresse_ip_raspberry>
    3. Exécuter l'assistant d'installation KIAUH :
    4. ./kiauh/kiauh.sh
      Sélectionner [Backup]

      Choix Chemin de sauvegarde
      1) [Klipper] ~/kiauh_backups/klipper
      2) [Moonraker] ~/kiauh_backups/moonraker
      3) [Config Folder] ~/kiauh_backups/printer_data
      4) [Moonraker Database]~/kiauh_backups/printer_data
      5) [Mainsail] ~/kiauh_backups/mainsail_v2.x.x
      6) [Fluidd] ~/kiauh_backups/fluidd_v1.x.x
      7) [Mainsail-Config] ~/kiauh_backups/mainsail_v2.x.x
      8) [Fluidd-Config] ~/kiauh_backups/fluidd_v1.x.x
      9) [KlipperScreen] ~/kiauh_backups/KlipperScreen
    Sauvegarder l'intégralité de la carte microSD
    Créer une image ISO de la carte microSD avec l'utilitaire imageUSB
    Première impression 3D

    Configurer l'imprimante Artillery Sidewinder X2 dans OrcaSlicer
    • Choix de l'imprimante : Artillery Sidewinder X2 0.4 nozzle
    • Version du G-code : Klipper
    • Type d'hôte : Octo/Klipper
    • G-code de la machine
      • [Démarrage]
      • M190 S[bed_temperature_initial_layer_single]
        M109 S[nozzle_temperature_initial_layer]
        PRINT_START EXTRUDER=[nozzle_temperature_initial_layer] BED=[bed_temperature_initial_layer_single]
        SET_PRESSURE_ADVANCE ADVANCE=0.068
      • [Fin]
      • PRINT_END
      • [Impression par objet]
      • [Avant changement de couche]
      • G92 E0
      • [Changement de couche]
      • [Timelapse]
      • [Changement de filament]
      • [Changement du rôle de l'extrusion]
      • [Mise en pause]
      • PAUSE
      • [Personnalisé]

      Exemples de fichiers de configuration OrcaSlicer pour Artillery Sidewinder X2 sous Klipper
    Charger et Décharger le filament
    1. Page [DASHBOARD]
    2. Fenêtre [MACROS] ➔ [FILAMENT_LOAD] ou [FILAMENT_UNLOAD]
    Imprimer
    1. Page [DASHBOARD] ➔ [LOAD & PRINT]
    2. Charger le fichier G-code depuis l'explorateur de fichier
    3. Sélectionner le fichier G-code dans la fenêtre [STATUS]
    4. Cliquer sur [PRINT]
    (le fichier G-code peut également être envoyé depuis le slicer)
    Ajouter une caméra USB

    Ajouter une caméra USB avec Crowsnest
    Le plugin Crowsnest incruste une fenêtre de contrôle visuel à l'interface web Mainsail.
    Crowsnest reste actif lorsque l'imprimante est éteinte.
    Le modèle utilisé est une webcam USB Logitech C270 parfaitement reconnue par PiOS.

    1. Connecter la caméra au Raspberry (de préférence sur le bloc USB qui n'est pas relié à l'imprimante)
    2. Se connecter au Raspberry avec MobaXterm
    3. ssh <nom_utilisateur>@<adresse_ip_raspberry>
    4. S'assurer que la caméra est reconnue par le système
    5. lsusb
    6. Exécuter l'assistant d'installation de Klipper
    7. ./kiauh/kiauh.sh
    8. Effectuer successivement
    9. 1) [Install]
      8) [Crowsnest]
      (taper ENTER à chaque question pour appliquer les choix par défaut)
    10. Redémarrer le système pour terminer l'installation (le redémarrage prend quelques minutes)
    11. sudo reboot
    12. S'assurer que la caméra est reconnue par Klipper
      1. Page [MACHINE] ➔ fichier crowsnest.conf
        Noter le nom donné à la caméra (cam 1)
        Passer en mode vidéo camera-streamer (mieux adapté à ce contexte)
      2. Cliquer dans le bandeau sur le bouton [DEVICES] accessible lors d'édition de tout fichier de configuration.
        La caméra doit apparaître dans les onglets [USB] et [VIDEO] après une action sur le bouton [REFRESH]
      3. Cliquer sur [INTERFACE SETTINGS] (en haut à droite) ➔ [WEBCAMS] ➔ [ADD WEBCAM]
      4. Nommer la caméra avec le nom relevé dans le fichier crowsnest.conf
        Sélectionner le service [MJPEG-Streamer]
        Cliquer sur [SAVE WEBCAM]
      5. Une fenêtre est ajoutée à la page [DASHBOARD]
      6. La nouvelle page [WEBCAM] affiche la vidéo en format élargi.
      7. Si la fenêtre affiche NO SIGNAL
        • Vérifier la configuration
          1. Cliquer sur [MACHINE] ➔ [LOG FILES] ➔ [CROWSNEST]
          2. Ouvrir le fichier crowsnest.log téléchargé
          3. Cliquer sur [MACHINE] ➔ crowsnest.cfg
          4. Comparer les paramètres du fichier journal avec ceux du fichier de configuration et corriger ce dernier si besoin
        • Déconnecter puis reconnecter la caméra
        • Connecter la caméra sur un autre port USB
        • Déconnecter puis reconnecter la caméra
        • Eteindre l'imprimante puis redémarrer le Raspberry
    Ajouter un écran tactile

    Ajouter un écran de contrôle tactile avec KlipperScreen
    KlipperScreen est un addon indépendant et léger qui ne fait q'uajouter une fenêtre vidéo dans l'interface de Mainsail.
    Seul un fichier de configuration auto généré est enregistré dans le Klipper.

    L'écran utilisé est un modèle classique : marque HZWDONE (QinHeng Electronics), dalle IPS tactile 7", connectique HDMI et USB
    (lien vers la documentation).
    Boitier à imprimer
    pour accueillir cet écran
    et le caler à l'Artillery Sidewinder X2

    (fichiers STL et Fusion 360)
    1. Connecter l'écran
      • Connecteur HDMI vers la sortie HDMI du Raspberry
      • Connecteur TOUCH sur un port USB du Raspberry
      • Une seconde alimentation peut être connectée sur POWER dans le but de soulager l'alimentation principale
      • Placer le switch sur la position ON
    2. Se connecter au Raspberry avec MobaXterm
    3. ssh <nom_utilisateur>@<adresse_ip_raspberry>
    4. S'assurer que l'écran est reconnu par le système
    5. lsusb
    6. Exécuter l'assistant d'installation de Klipper
    7. ./kiauh/kiauh.sh
    8. Effectuer successivement
    9. 1) [Install]
      7) [KlipperScreen]
      (taper ENTER à chaque question pour appliquer les choix par défaut)
    10. Patienter jusqu'à la fin de l'installation
    11. Le système redémarre automatiquement
    12. S'assurer que l'écran est reconnu par Klipper
      1. Page [MACHINE] ➔ fichier KlipperScreen.conf
      2. Cliquer dans le bandeau sur [DEVICES]
      3. L'écran doit apparaître dans l'onglet USB (après un Refresh)
    13. L'écran tactile est installé et opérationnel
    14. Un fichier de configuration KlipperScreen.cfg est disponible dans Klipper
      mais le paramétrage s'effectue essentiellement depuis l'écran tactile.
    15. Configurer la mise en veille de l'écran (depuis l'écran tactile)
    16. [More] ➔ [KlipperScreen]
      • Screen Power Off Time : 5 minutes
      • Screen Power Off Time (Printing) : Never
      [Back] ➔ [Save Config]

      Les modifications sont enregistrées dans le fichier KlipperScreen.conf
      (ne jamais modifier les lignes précédées de la suite de caractères #~#)
      #~# [main]
      #~# screen_blanking = 300
      #~# screen_blanking_printing = off
      Les seules modifications autorisées dans le fichier KlipperScreen.conf
      sont d'adapter les températures de préchauffage de buse
      [preheat PLA]
      extruder: 210 # 210 par défaut
      heater_bed: 50 # 70 par défaut

      [preheat SLIK PLA]
      extruder: 220 # 225 par défaut
      heater_bed: 50 # 70 par défaut
    Migrer de USB à UART

    La qualité de transmission USB entre le Raspberry et l'imprimante est souvent la cause de dysfonctionnements.
    Le port série UART (Universal Asynchronous Receiver Transmitter) est bien plus fiable et ce n'est pas un hasard si ce mode de transmission est utilisé d'origine sur toutes les imprimantes 3D.
    Procédure pour basculer de USB à UART :
    1. Exécuter l'assistant d'installation KIAUH avec la commande ./kiauh/kiauh.sh
    2. Sélectionner [Advanced] ➔ [Build]
    3. Compiler un nouveau firmware avec les mêmes paramètres MCU mais en modifiant
      uniquement l'interface de communication en Serial (on USART1 PA10/PA9)
    4. Flasher la carte mère de l'imprimante selon la méthode déjà décrite.
    5. Configurer PiOS pour utiliser le port UART0 :
      Modifier le fichier cmdline.txt pour interdire le port UART à la console TTY
      (sur certaines installations ce fichier peut se trouver à la racine du répertoire /boot/)
      sudo nano /boot/firmware/cmdline.txt
      # supprimer 'console=serial0,115200' au début de l'unique ligne pour obtenir :
      console=tty1 root=PARTUUID=164637ce-02 rootfstype=ext4 fsck.repair=yes rootwait cfg80211.ieee802>

      # enregistrer les modifications et redémarrer le système
      sudo reboot
      Modifier le fichier config.txt pour interdire le port UART au service bluetooth
      (sur certaines installations ce fichier peut se trouver à la racine du répertoire /boot/)
      sudo nano /boot/firmware/config.txt
      # ajouter en fin de fichier :
      dtoverlay=disable-bt

      # enregistrer les modifications et redémarrer le système
      sudo reboot
    6. Connecter le Raspberry à la carte mère de l'imprimante en utilisant la nappe existante
      mais en la modifiant pour respecter le schéma ci-dessous.
      • Supprimer le fil +5V pour que le Raspberry n'alimente pas la carte mère et inversement.
      • Croiser les fils TX et RX
    7. Allumer l'imprimante (Raspberry et imprimante ne doivent plus être reliés en USB)
    8. Exécuter l'assistant d'installation ./kiauh/kiauh.sh
    9. Sélectionner [Advanced] ➔ [Get MCU ID] ➔ [UART]
    10. Copier/coller le premier identifiant MCU dans le fichier printer.cfg :

      L'identifiant peut également être obtenu avec la commande : ls -l /dev/serial*
    11. Cliquer sur [SAVE & RESTART]
    Intégrer à OctoEverywhere

    OctoEverywhere doit déjà être présent sur le réseau local (voir le tutoriel d'installation)
    1. Allumer l'imprimante
    2. Se connecter au Raspberry avec MobaXterm :
    3. ssh <nom_utilisateur>@<adresse_ip_raspberry>
    4. Installer le client OctoEverywhere avec la commande suivante :
      (indiquée depuis OctoEverywhere dans [Add A Printer] / [Klipper, Mainsail, Fluidd, or Moonraker])
    5. bash <(curl -s https://octoeverywhere.com/install.sh)
    6. Patienter jusqu'à la fin de l'installation
    7. Se rendre sur https://octoeverywhere.com/code depuis un navigateur
    8. Saisir le code de sécurité à 6 chiffres fourni par le programme d'installation

    9. Donner un nom à la nouvelle imprimante (sans espaces)

    10. Actualiser l'interface OctoEverywhere

    Interface Mainsail

    Icônes
    [Menu]
    Masque ou affiche la barre latérale de navigation (détaillé plus bas)
    [Help]
    Le survol de l'icône affiche les versions Klipper, Moonraker et Mainsail
    [Upload & Print]
    Charge un fichier G-code externe pour l'imprimer
    [Emergency Stop]
    Arrêt immédiat du système. Redémarrage avec [Firmware Restart]
    [Interface Settings]
    Configuration de l'interface utilisateur (détaillé plus bas)
    [Notifications]
    Alertes de dépassement de température MCU et CPU
    [Power]
    Gestion des modes de démarrage et d'arrêt (détaillé plus bas)

    Barre de navigation
    [DASHBOARD] [Status] Liste des fichiers G-code disponibles
    Historique des impressions
    Liste des fichiers en attente d'impression
    Etat de l'impression en cours
    [Temperatures] Contrôle manuel des températures d'extrudeur et de plateau
    Lecture numérique et graphique des températures de l'extrudeur et du plateau
    Lecture numérique et graphique de la température de la carte mère
    Lecture numérique et graphique de la température du Raspberry (optionnel)
    [Toolhead]Contrôle manuel des axes, du Z-offset et du facteur de vitesse
    [Extruder]Contrôle manuel de l'extruder
    [Machine]Contrôle manuel des capacités de l'imprimante
    [Console]Saisie et historique des commandes G-code et des macros
    Affichage des macros et des commandes étendues avec la commande HELP
    Auto complétion de la saisie avec la touche TAB
    [Macros]Accès aux macros non masquées
    [Webcam]Affichage vidéo
    [Miscellaneous]Contrôle manuel des ventilateurs, de la LED et du capteur de filament
    [WEBCAM] Affichage de la fenêtre vidéo en mode élargi
    [CONSOLE] Saisie et historique en mode élargi des commandes G-code et des macros
    Affichage des macros et des commandes étendues avec la commande HELP
    Auto complétion de la saisie avec la touche TAB
    [HEIGHTMAP] Nivellement numérique du plateau
    [G-CODE FILES] Manipulation des fichiers G-code disponibles
    [G-CODE VIEWER] Viewer de fichiers G-code
    [HISTORY] Historique des impressions
    [MACHINE] [Config Files] Accès aux fichiers de configuration
    Accès aux fichiers journaux
    Accès aux fichiers de documentation
    Accès aux fichiers exemples de configurations
    [System Loads] Affiche la charge logicielle du MCU de la carte mère de l'imprimante
    Affiche la charge logicielle du CPU et de la mémoire du Raspberry

    [Update manager]Gestion des mises à jour des modules installés sur Raspberry PiOS
    [Endstops]Test des entrées de fins de courses de la carte mère
    [Log Files]Téléchargement des fichiers journaux

    Interface settings
    [GENERAL] Nom de l'imprimante qui apparaitra sur le bandeau supérieur (Klipper affiché si non renseigné)
    Réglage des paramètres régionnaux (langue, format de la date et de l'heure)
    Générer ou restaurer un backup au format json des paramètres Mainsail
    [CONSOLE] Réglage de la hauteur de la console
    [CONTROL] Réglage du format d'affichage des contrôles
    Réglage des paramètres de déplacement des axes
    [DASHBOARD] Organise les fenêtres selon les tailles d'écrans (chaque type d'écran peut avoir sa propre mise en page)

    Organisation pour un écran 24" Full HD

    Organisation pour un écran de taille classique
    [EDITOR] Options de l'éditeur de configurations
    [G-CODE VIEWER] Lecteur 3D de fichier G-code externe
    [HEIGHTMAP] Options d'affichage de la topographie du plateau
    [MACROS] Affiche ou masque chaque macro éligible au dashboard
    [MISCELLANEOUS] Edition de valeurs prédéfinies de couleurs de la diode d'extrudeur
    [NAVIGATION] Affiche ou masque certaines pages de la barre de navigation
    [PRESET] Ajoute ou édite une commande permanente de préchauffage de buse et de plateau
    [PRINTERS] Ajoute ou édite une imprimante
    [UI SETTINGS] Options de l'interface utilisateur dont :
    Active ou désactive l'option [Large thumbnail]
    Réglage de la hauteur du graphique des températures
    Réglage du nombre de fichiers G-code affichés
    Réglage du nombre de lignes d'historique
    [WEBCAMS] Ajoute ou édite une caméra

    Power

    [Klipper Control] ➔ [Restart] Recharge la configuration et redémarre le logiciel hôte (Klipper)
    [Klipper Control] ➔ [Firmware Restart] Réinitialise le micrologiciel (MCU), recharge la configuration et redémarre le logiciel hôte (Klipper)
    [Services Control] ➔ [Restart] Redémarre le service concerné
    [Services Control] ➔ [Stop] Arrête le service concerné
    [Host Control] ➔ [Reboot] Redémarre le système Raspberry PiOS
    [Host Control] ➔ [Shutdown] Arrête le système Raspberry PiOS
    Macros

    Macros fournies en standard
    Ne pas modifier le nom de ces macros car certaines d'entre elles sont appelées par d'autres.
    Par exemple PRINT_START dans le fichier start.cfg fait appel à SMARTHOME, SET_LED_TO_WHITE et _PURGE_LINE.
    Nom Dashboard Fichier Description
    FILAMENT_LOADaffichablemacro.cfg
    FILAMENT_UNLOADaffichablemacro.cfg
    PID_EXTRUDERaffichablemacro.cfg
    PID_BEDaffichablemacro.cfg
    SMARTHOMEaffichablemacro.cfg
    MOVE_TO_NEUTRAL_POSITIONaffichablemacro.cfg
    LOCK_Z_STEPPERSaffichablemacro.cfg
    UNLOCK_Z_STEPPERSaffichablemacro.cfg
    _CLIENT_VARIABLEaffichablemacro.cfg
    PRINT_ENDaffichableend.cfg
    PRINT_STARTaffichablestart.cfg
    SET_LED_TO_WHITEaffichablestart.cfg
    _PURGE_LINEstart.cfg
    CANCEL_PRINTmainsail.cfg
    PAUSEmainsail.cfg
    RESUMEmainsail.cfg
    SET_PAUSE_NEXT_LAYERaffichablemainsail.cfg
    SET_PAUSE_AT_LAYERaffichablemainsail.cfg
    SET_PRINT_STATS_INFOmainsail.cfg
    _TOOLHEAD_PARK_PAUSE_CANCELmainsail.cfgHelper
    _CLIENT_EXTRUDEmainsail.cfgExtrudes, if the extruder is hot enough
    _CLIENT_RETRACTmainsail.cfgRetracts, if the extruder is hot enough
    _CLIENT_LINEAR_MOVEmainsail.cfgLinear move with save and restore of the gcode state
    Exemples de macros à intégrer au fichier macros.cfg
    #===========================#
    #   Macros personnalisées   #
    #===========================#

    [gcode_macro LED_25]
    description: Set LED at 25%
    gcode:
      SET_LED LED=extruder RED=0.25 GREEN=0.25 BLUE=0.25

    [gcode_macro LED_40]
    description: Set LED at 40%
    gcode:
      SET_LED LED=extruder RED=0.40 GREEN=0.40 BLUE=0.40

    [gcode_macro LED_OFF]
    description: Set LED off
    gcode:
      SET_LED LED=extruder RED=0 GREEN=0 BLUE=0

    [gcode_macro MOVE_Z_UP]
    description: Move Z to 100mm at 50mm/s
    gcode:
      G90 ; Set to absolute positioning
      G1 Z100.0 F3000 ; Move Z to 100mm at 50mm/s
      M84 ; Disable all steppers

    [gcode_macro Z_OFFSET]
    description: Adjustment Z zero
    gcode:
      PROBE_CALIBRATE

    [gcode_macro Z_SCREWS]
    description: Adjustment Z screws
    gcode:
      SCREWS_TILT_CALCULATE
    Les macros personnalisées peuvent être affichées dans le DASHBOARD
    Commandes étendues

    Commandes étendues fournies en standard
    (liste obtenue depuis la console avec la commande HELP)
    Nom Description
    ACTIVATE_EXTRUDERChange the active extruder
    BED_MESH_CALIBRATEPerform Mesh Bed Leveling
    BED_MESH_CLEARClear the Mesh so no z-adjustment is made
    BED_MESH_MAPSerialize mesh and output to terminal
    BED_MESH_OFFSETAdd X/Y offsets to the mesh lookup
    BED_MESH_OUTPUTRetrieve interpolated grid of probed z-points
    BED_MESH_PROFILEBed Mesh Persistent Storage management
    BED_SCREWS_ADJUSTTool to help adjust bed leveling screws
    BLTOUCH_DEBUGSend a command to the bltouch for debugging
    BLTOUCH_STOREStore an output mode in the BLTouch EEPROM
    CANCEL_PRINTCancel the actual running print
    CANCEL_PRINT_BASERenamed builtin of 'CANCEL_PRINT'
    CLEAR_PAUSEClears the current paused state without resuming the print
    EXCLUDE_OBJECTCancel moves inside a specified objects
    EXCLUDE_OBJECT_DEFINEProvides a summary of an object
    EXCLUDE_OBJECT_ENDMarks the end the current object
    EXCLUDE_OBJECT_STARTMarks the beginning the current object as labeled
    FIRMWARE_RESTARTRestart firmware, host, and reload config
    GET_POSITIONReturn information on the current location of the toolhead
    HELPReport the list of available extended G-Code commands
    MANUAL_PROBEStart manual probe helper script
    PAUSEPause the actual running print
    PAUSE_BASERenamed builtin of 'PAUSE'
    PID_CALIBRATERun PID calibration test
    PROBEProbe Z-height at current XY position
    PROBE_ACCURACYProbe Z-height accuracy at current XY position
    PROBE_CALIBRATECalibrate the probe's z_offset
    QUERY_ADCReport the last value of an analog pin
    QUERY_ENDSTOPSReport on the status of each endstop
    QUERY_FILAMENT_SENSORQuery the status of the Filament Sensor
    QUERY_PROBEReturn the status of the z-probe
    RESPONDEcho the message prepended with a prefix
    RESTARTReload config file and restart host software
    RESTORE_GCODE_STATERestore a previously saved G-Code state
    RESUMEResume the actual running print
    RESUME_BASERenamed builtin of 'RESUME'
    SAVE_CONFIGOverwrite config file and restart
    SAVE_GCODE_STATESave G-Code coordinate state
    SCREWS_TILT_CALCULATETool to help adjust bed leveling screws by calculating the number of turns to level it.
    SDCARD_PRINT_FILELoads a SD file and starts the print. May include files in subdirectories.
    SDCARD_RESET_FILEClears a loaded SD File. Stops the print if necessary
    SET_DISPLAY_TEXTSet or clear the display message
    SET_EXTRUDER_ROTATION_DISTANCESet extruder rotation distance
    SET_FILAMENT_SENSORSets the filament sensor on/off
    SET_GCODE_OFFSETSet a virtual offset to g-code positions
    SET_GCODE_VARIABLESet the value of a G-Code macro variable
    SET_HEATER_TEMPERATURESets a heater temperature
    SET_IDLE_TIMEOUTSet the idle timeout in seconds
    SET_INPUT_SHAPERSet cartesian parameters for input shaper
    SET_LEDSet the color of an LED
    SET_LED_TEMPLATEAssign a display_template to an LED
    SET_PAUSE_AT_LAYEREnable/disable a pause if a given layer number is reached
    SET_PAUSE_NEXT_LAYEREnable a pause if the next layer is reached
    SET_PRESSURE_ADVANCESet pressure advance parameters
    SET_PRINT_STATS_INFOOverwrite, to get pause_next_layer and pause_at_layer feature
    SET_PRINT_STATS_INFO_BASERenamed builtin of 'SET_PRINT_STATS_INFO'
    SET_STEPPER_ENABLEEnable/disable individual stepper by name
    SET_VELOCITY_LIMITSet printer velocity limits
    STATUSReport the printer status
    STEPPER_BUZZOscillate a given stepper to help id it
    SYNC_EXTRUDER_MOTIONSet extruder stepper motion queue
    TEMPERATURE_WAITWait for a temperature on a sensor
    TUNING_TOWERTool to adjust a parameter at each Z height
    TURN_OFF_HEATERSTurn off all heaters
    UPDATE_DELAYED_GCODEUpdate the duration of a delayed_gcode
    Z_OFFSET_APPLY_PROBEAdjust the probe's z_offset
    Assistance technique

    Différence entre [RESTART] et [FIRMWARE RESTART]
    • [RESTART]                                   Recharge la configuration et redémarre le logiciel hôte (Klipper)
    • [FIRMWARE RESTART]      Réinitialise le micrologiciel de l'imprimante avant d'effectuer un [RESTART]
    • Remarques :
      • [RESTART] est suffisant dans la plupart des cas
      • [FIRMWARE RESTART] peut dysfonctionner avec certains MCU
    Procédure de démarrage sans échec
    1. Eteindre l'imprimante
    2. Couper l'alimentation du Raspberry (la LED rouge doit être éteinte)
    3. Alimenter le Raspberry
    4. Patienter jusqu'au démarrage complet (la LED verte du Raspberry ne doit plus clignoter)
    5. L'interface KlipperScreen doit apparaître sur l'écran tactile (si présent)
    6. La LED de la caméra USB doit s'allumer (si présente)
    7. Allumer l'imprimante
    La caméra USB reste éteinte après le démarrage
    • Remplacer le mode vidéo ustreamer par le mode camera-streamer dans le fichier crowsnest.conf puis redémarrer
    • Débrancher puis rebrancher la caméra
    • Connecter la caméra sur un autre port USB
    • Redémarrer le système en laissant l'imprimante éteinte
    Le Raspberry plante ou boucle au démarrage
    • Contrôler l'alimentation du Raspberry : la LED rouge du Raspberry doit être allumée fixe en toutes circonstances
    • Contrôler la tension et la fréquence avec la commande bash : vcgencmd get_throttled (la réponse idéale est 0x0)
    • Contrôler la température de fonctionnement du Raspberry avec la commande bash : vcgencmd measure_temp
    • Utiliser une alimentation originale de marque Raspberry (5.1V 2.5A pour un Pi 3B+)
    • Utiliser une alimentation originale pour Raspberry Pi 4 (5.1V 3A avec adaptateur USB-C vers MicroUSB)
    • (les alimentations de marques génériques donnent rarement satisfaction)
    Le Raspberry plante durant l'impression
    • Contrôler la température de fonctionnement en charge du Raspberry
    • Contrôler la tension de fonctionnement en charge du Raspberry
    • Contrôler l'efficacité du ventilateur de refroidissement de la carte mère et des drivers
    • Rechercher les possibles défaillances de transmission entre le Raspberry et l'imprimante
    • Migrer de USB à UART
    Température de fonctionnement du Raspberry Pi 3B+
    • La température maximale de fonctionnement du CPU est de 85°C.
    • La fréquence du CPU ralentit à mesure qu’il approche ce seuil.
    • Le CPU ne peut théoriquement pas claquer mais des températures trop élevées réduisent sa durée de vie.
    • En règle générale la température du CPU se situe aux alentours de 50°C en veille (température extérieure à 20°).
    • La température augmente en utilisation normale et les temps d’inactivité permettent au CPU de se refroidir avec l'air ambiant.
    • En impression sous Klipper la température varie entre 50° et 60° (température extérieure à 20°).
    • Préconisations
      • Installer un dissipateur thermique sur le CPU, la puce du contrôleur Ethernet et la puce mémoire.
      • Installer le Raspberry dans un boitier bien aéré (avec ou sans ventilation)
      • Placer le Raspberry dans un environnement tempéré et/ou ventilé.
      • Contrôler en temps réel la température du CPU avec la commande bash : watch -n 1 vcgencmd measure_temp
      • Activer la surveillance de température du CPU dans le fichier printer.cfg de Klipper

    Boitier aéré et à volume augmenté
    à imprimer pour Raspberry Pi 3B+

    version classique
    (fichiers STL et Fusion 360)

    Boitier aéré et à volume augmenté
    à imprimer pour Raspberry Pi 3B+

    version UART
    (fichiers STL et Fusion 360)
    Echecs de palpage (message : BLTouch failed to deploy)
    1. Editer le fichier printer.cfg
    2. Augmenter progressivement la valeur [bltouch] pin_move_time jusqu'à disparition de l'erreur
    Echec après [SAVE & RESTART] (message : Failed automated reset of MCU 'mcu')
    • Configurer la méthode de démarrage après une édition
      Interface Settings ➔ Editor
      Klipper restart method : RESTART
    Echec après [FIRMWARE RESTART] (message : Failed automated reset of MCU 'mcu')
    • Soit effectuer à la suite un simple [RESTART]
    • Soit effectuer un RESET matériel de la carte mère puis lancer un [RESTART]
    • Soit éteindre et rallumer l'imprimante puis lancer un [RESTART]
    • Soit procéder à un redémarrage complet
    Carte MCU bloquée suite à une erreur de firmware
    • Placer l'imprimante en mode DFU avec un cavalier entre les pins +3.3V et Boot0 de la carte
    • Injecter le firmaware adapté
    Tester l'entrée du capteur de filament de l'Artillery Sidewinder X2
    Câblage entre capteur et fin de course Z
    Elément +5vGndSignal
    Capteur noirbleumarron
    Motherboard Z-LIMIT (PA0)marronbleunoir
    # test de fonctionnement avec fin de course inductif connecté sur Z-LIMIT
    # lignes à modifier temporairement dans le fichier printer.cfg

    [filament_switch_sensor filament]
    switch_pin: PA0 # the z-endstop pin
    #switch_pin: PA4 # for z-endstop test

    [stepper_z]
    endstop_pin: probe:z_virtual_endstop
    #endstop_pin: !PA0 # for z-endstop test
    #position_endstop: 0 # for z-endstop test
    Autres pistes de dépannage
    # supprimer le service ModemManager
    sudo apt remove modemmanager
    sudo apt autoremove
    sudo reboot
    # ou désactiver le service modem (selon la version de PiOS)
    sudo systemctl disable hciuart
    sudo reboot

    # forcer l'activation du port uart
    sudo nano /boot/firmware/config.txt
    # ajouter en fin de fichier :
    enable_uart=1
    sudo reboot

    # patcher Mainsail
    curl -sSL https://raw.githubusercontent.com/mainsail-crew/MainsailOS/develop/patches/udev-fix.sh | bash
    sudo reboot
    Observations

    Rappel des versions logicielles installées sur le Raspberry
    • Debian 13.1 trixie
    • Klipper 0.9.3.130
    • Moonraker 0.13.0
    • Mainsail 2.16.0
    • Mainsail Config 1.2.1
    • Crowsnest 4.1.17
    • Octoeverywhere 4.4.0-0 (client)
    Artillery Sidewinder X2 et Klipper
    • L'imprimante se prête bien à cette migration.
    • Klipper apporte un grand confort d'utilisation et fonctionne correctement avec un Raspberry 3B+ et une microSD de classe 10
    • La fluidité des mouvements permet de pousser les limites de la machine à 100mm/s en impression, 200mm/s en déplacement
      et 800mm/s² en accélération (contre 80mm/s en impression, 150mm/s en déplacement et 500mm/s² en accélération)
    • L'interface est de qualité avec KlipperScreen sur un écran tactile IPS 7"
    • Possibilité d'étalonner les PID (procédure absente dans Marlin).
    • Etalonnage du nivellement extrêmement facilité par rapport à Marlin.
    • Excellente compatibilité avec OrcaSlicer.
  • Stabilité du système
    • Les meilleurs résultats sont obtenus avec une communication via le port UART, la liaison USB provoquant des plantages récurrents durant les impressions.
    • Une alimentation originale Raspberry assure une tension et une puissance parfaitement adaptée.
    • Le Raspberry doit être fortement aéré sans être nécessairement ventilé (les petits ventilateurs 5V tournent rapidement, sont bruyants et ont une durée de vie limitée)
    • Une caméra USB fonctionne mieux avec le mode vidéo camera-streamer configuré dans le fichier crowsnest.conf
    Flash de la carte MCU
    La méthode la plus fiable pour passer en mode DFU consiste à shunter les pins +3.3V et Boot0 de la carte mère.
    D'autre part elle permet de toujours accéder à la carte mère même après l'injection d'un firmware incorrect.
    A propos de l'interface web Fluidd (version 1.36.0)

    Fluidd est une interface web alternative incluant en natif une gestion des caméras (contrairement à Mainsail).
    L'installation du plugin Crowsnest est toutefois recommandée pour assurer la reconnaissance correcte d'une caméra USB.
    Paramètres à appliquer :
    • Type de flux : Flux MJPEG
    • crowsnest.conf : camera-streamer

    Fluidd et Mainsail proposent les mêmes fonctionnalités et leur méthode d'installation et de configuration sont similaires.
    Les différences relèvent de préférences personnelles sachant que Mainsail est la plus populaire des deux.
    Rien ne change concernant l'écran tactile puisque celui-ci est géré par KlipperScreen.

    L'installation conjointe de Mainsail et de Fluidd est possible bien que non pertinente car toute surcharge du système peut nuire
    à la stabilité.
    • La première API installée sera accessible par défaut via le port 80.
    • Un port différent (par exemple 81) devra être indiqué lors de l'installation de la seconde API.
    • Le fichier printer.cfg ne devra contenir qu'une de ces deux lignes : [include mainsail.cfg] ou [include fluidd.cfg]
      (conserver les deux provoque une erreur car chacun de ces fichiers de configuration contient les mêmes déclarations).
    Annexe

    Fichiers de configuration
    Fichier Contenu Application
    printer.cfg includes et variables Propre à l'imprimante
    start.cfg macros Procédure de début d'impression
    end.cfg macros Procédure de fin d'impression
    macros.cfg macros Utilisation générale
    mainsail.cfg variables et macros Interface web graphique
    fluid.cfg variables et macros Interface web graphique
    octoeverywhere-system.cfg macros Propre à OctoEverywhere
    octoeverywhere.conf variables Propre à OctoEverywhere
    crowsnest.conf variables Propre à Crowsnest
    KlipperScreen.conf variables Propre à KlipperScreen
    moonraker.conf variables Propre à Moonraker
    Le menu de KIAUH
    0) [Log-Upload] Charge le menu de téléchargement des derniers journaux
    1) [Install] Charge le menu d'installation des différents modules
    2) [Update] Charge le menu de mise à jour des modules installés
    3) [Remove] Charge le menu de suppression des modules installés (les configurations et les backups seront conservés)
    4) [Advanced] Charge le menu des fonctions avancées (Firmware du MCU et Input Shaper)
    5) [Backup] Charge le menu des sauvegardes
    S) [Settings] Charge le menu des dépôts et des releases
    E) [Extensions] Charge le menu d'installation des addons
    Chemins utiles
    KLIPPER Fichiers G-code ~/printer_data/gcodes/
    KLIPPER Fichiers journaux ~/printer_data/logs/
    KLIPPER Fichiers de configuration ~/printer_data/config/
    CROWSNEST Script ~/crowsnest/tools/test_install.sh
    CROWSNEST Script ~/crowsnest/tools/dev-helper.sh
    CROWSNEST Script ~/crowsnest/tools/dev-pkglist.sh
    CROWSNEST Script ~/crowsnest/tools/configure.sh
    CROWSNEST Script ~/crowsnest/tools/install.sh
    CROWSNEST Script ~/crowsnest/tools/uninstall.sh
    KLIPPERSCREEN Script ~/KlipperScreen/scripts/KlipperScreen-install.sh
    KLIPPERSCREEN Script ~/KlipperScreen/scripts/Uninstall.sh
    KIAUH Script ~/kiauh/kiauh.sh
    KIAUH Backups ~/kiauh_backups/
    MOONRAKER Interface web http://<adresse_ip>:7125
    Préparer le système PiOS à partir d'une image ISO (un écran et un clavier sont requis)
    1. Connecter la carte microSD au PC
    2. Exécuter Raspberry Pi Imager
    3. Sélectionner :
    4. Confirmer l'écriture sur la carte microSD
    5. Insérer la carte microSD dans le Raspberry
    6. Alimenter le Raspberry et attendre la fin de l'installation
    7. Un assistant s'ouvre :
      • Sélectionner la langue (French)
      • Donner un nom d'utilisateur (pi) et un mot de passe
    8. Le système redémarre
    9. Se connecter en tant que pi
    10. Exécuter la commande sudo raspi-config et paramétrer :
      • Le Wi-Fi (SSID et Passphrase)
      • Le SSH (activer Serveur SSH)
    11. Redémarrer le Raspberry avec la commande sudo reboot
    Flasher la carte mère Ruby 1.2 via USB en ligne de commandes
    1. Lancer l'assistant KIAUH de configuration du firmware
      cd klipper
      make menuconfig

      Taper Q pour quitter puis Y pour sauvegarder la configuration et compiler le firmware
    2. Générer le firmware
      make clean
      make
    3. Placer l'imprimante en mode DFU
    4. Relever l'ID du périphérique
      lsusb
      Bus 001 Device 003: ID xxxx:xxxx STMicroelectronics STM Device in DFU Mode
    5. Flasher le firmware
      sudo service klipper stop
      make flash FLASH_DEVICE=xxxx:xxxx
    6. sudo service klipper start
    7. Quitter le mode DFU
    Flasher la carte mère Ruby 1.2 via USB avec l'assistant KIAUH
    Un [BUILD] a été préalablement effectué et enregistré sous swx2.config
    [USB] = liaison USB et passage en mode DFU logiciel (une commande G-code M997 sera envoyée)
    [USB (DFU mode)] = liaison USB et mode DFU matériel (PIN +3V et Boot0 préalablement shuntés)
    Procédure de retour au firmware d'origine Marlin
    1. Eteindre l'imprimante
    2. Connecter le capteur de filament à son emplacement d'origine
    3. Reconnecter la prise UART à la carte de l'écran tactile
    4. Connecter l'imprimante au PC via USB
    5. Décompresser l'archive du firmware de la carte mère
    6. Placer l'imprimante en mode DFU
    7. Injecter le firmware avec STM32CubeProgrammer : le fichier binaire à charger est Sidewinder-X2_2.0.9.1_20210722.hex
    8. Quitter le mode DFU
    9. Déconnecter l'imprimante du PC
    10. Mettre à jour le firmware de la carte originale de l'écran tactile (facultatif)
      1. Décompresser l'archive du firmware de la carte écran
      2. Copier le contenu du dossier à la racine d'une clé USB
      3. Eteindre l'imprimante
      4. Connecter la clé USB à l'imprimante
      5. Allumer l'imprimante et patienter jusqu'à la fin de la mise à jour
      6. Eteindre l'imprimante
      7. Retirer la clé USB
    11. Redémarrer l'imprimante
    12. Effectuer un nivellement complet du plateau
    Sources

    Ressources utilisée dans ce tutoriel Bases de données Objets 3D à imprimer Editeurs Documentation en ligne Firmwares Marlin Tutoriels Articles connexes sur ce site Autres ressources
Remarques

Consommation électrique
  • Mise en chauffe du plateau ≈ 500W
  • Mise en chauffe de la buse ≈ 250W
  • Impression ≈ 80W à 100W selon température ambiante
  • Soit environ 1kWh pour 10 heures d'impression (0.22€ TTC en 2024)
Points positifs
  • Rapport qualité/prix
  • Faible consommation électrique
  • Précise et silencieuse
  • Gros volume d'impression
  • Direct drive
  • Eclairage LED multi-couleurs de la buse
  • Détecteur de fin de filament
  • Capteurs de fins de courses à induction
  • Nivellement automatique
  • Plateau chauffant 230V
  • Axe Z doublé et couplé
  • Reprise après coupure d'alimentation (mais peu fiable)
Points négatifs
  • Montage incorrect
    • Tête d'impression non alignée
    • Ecrous freins des excentriques bloqués sur les axes X et Y
  • Erreurs de conception corrigibles
    • Support de bobine instable
    • Flexibilité du portique Z
    • Mauvais positionnement du capteur de fin de filament
    • Contact en porte-à-faux sur le fin de course de l'axe X
    • Galet fixe intermédiaire sur l'axe Y *
    • Emplacement vulnérable des slots USB et carte mémoire
  • Absence de plateau PEI
  • Ecran tactile imprécis au doigt (utilisation d'un stylet indispensable)
* Il peut être nécessaire de monter cette pièce sur excentrique ou de la supprimer car :
  • ce galet s'avère inutile s'il est décalé vers l'extérieur
  • ce galet rend impossible un réglage correct du guidage s'il est décalé vers l'intérieur
Fiche technique

Fournisseur                          Banggood
Date d'achat                         06-03-2023
Numéro de facture                    111616265
Numéro de série                      202211291232
Version firmware TFT  (about)        3.1.7
Version firmware Board (boot)        3.0.5
Version G-code                       Marlin 2
Type de carte mère                   RUBY 32 bits
Ecran                                Tactile couleur 3"
Drivers                              AT2100
Nombre de moteurs                    5 (doublés et synchronisés par courroie en Z)

Volume d'impression                  300 x 300 x 400 mm
Dimension du plateau                 310 x 310 mm
Rails de guidage                     V-slot
Type d'extrudeur                     Direct Drive / Extrusion directe de type Titan
Taille de la buse                    0.4mm de type Volcano
Format du filament                   1.75 mm
Épaisseur des couches                0.1mm à 0.32mm avec une buse de 0.4mm
Vitesse d’impression                 Jusqu’à 150 mm/s (impression conseillée jusqu’à 80mm/s maximum)
Mise à niveau automatique            Capteur de type BL-touch
Points de leveling                   25
Détecteur de fin de filament         Oui
Limiteurs de course                  2 à induction
Reprise après coupure                Oui
Mode autonome                        Oui
Tension de fonctionnement            24V
Plateau chauffant                    220V en verre micro texturé de type Ultrabase
Température maximum du plateau       130°C
Connectivité                         USB - Port MicroSD

Papy WinTux - Philippe DESLOGES - 2023-2026 - Powered by Debian - Apache 2.4.54 - PHP 7.4.33 - Last update 06-01-2026 23:21 - Page size 171 ko built in 2 ms
All trademarks, logos, images and documents on these pages belong exclusively to their respective owners.