pascal_lb Posté(e) Juillet 18 Partager Posté(e) Juillet 18 (modifié) Dans ce tuto vous allez découvrir comment passer votre Two Trees SK1 sous la version Armbian récente : Bookworm et ainsi pouvoir installer les dernières versions de Klipper et de Moonraker (entre autres). D'origine, la SK1 est équipé d'une carte mère dérivée de la carte MKS SKIPR et de nombreuses marques d'imprimantes dont Two Trees fait parti ont décidé de partir d'Armbian Buster que fournissait MKS mais cette version est assez ancienne et n'est plus maintenue et ne permet donc pas de faire certaines mises à jour, on peut signaler également que Two Trees (et d'autres marques) a modifier leur système pour l'adapter à leur machine empêchant également toutes mises à jour à part les leurs et cela sans fournir les sources ce qui est un comble étant donné qu'il utilise Armbian qui est open source... Généralement c'est à la fin qu'on le fait, mais avant de rentrer dans le vif du sujet, j'aimerai tout d'abord remercier chaleureusement @fran6p pour l'aide qu'il m'a apporté pendant plusieurs jours, sans lui je n'y serai pas arrivé, le remercier également pour le travail qu'il avait effectué sur sa Qidi X-Max3 et qui à servi de base à la modification de la SK1 et le remercier (mais après je m'arrête, il va prendre la grosse ) de m'autoriser à reprendre ses textes et ses images pour ce tuto. Un remerciement à @bistory alias Tom's Basement pour son tuto TwoTrees SK1 Upgrade guide (à jour ) qui m'a donné au départ l'idée de faire des modifications sur ma SK1. Modifié (le) Juillet 29 par pascal_lb 4 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Juillet 18 Auteur Partager Posté(e) Juillet 18 (modifié) Avertissement avant de démarrer : Il est recommandé de lire tout ce tuto pour vous faire une idée des manipulations avant de faire quoi que ce soit Après cette modification tout sera fonctionnel à part l'écran qui ne sera plus compatible avec votre machine (malgré ma demande, Two Trees refuse de nous donner les sources du firmware de son écran pour modifications) vous pourrez toujours piloter la SK1 via Fluidd ou Mainsail et il faudra faire quelques ajustements ou ajouts de macros. Actuellement le Wifi ne fonctionne plus mais on y travaille... le wifi sera fonctionnel Il faut pour cette modification que vous ayez quelques compétences en soudure car il faudra modifier un câble USB et lui mettre une prise JST-XH 2.54 femelle et souder une prise JST-XH 2.54 male (4 broches) sur la carte fille (THR) de la tête d'impression. Les manipulations décrites s'adressent plutôt à un utilisateur ayant un peu d'expérience avec Linux et sa ligne de commandes mais un débutant bien motivé acceptant de franchir la courbe d'apprentissage afin de progresser devrait y arriver. En gros, je n'assume aucune responsabilité en cas de mauvaises manipulations. Ce qui a fonctionné pour moi peut très bien s'avérer un cauchemar pour d'autres… Les manipulations décrites sont faites à vos risques et périls. Vous ne devrez pas contacter l'assistance Two Trees en cas de problème. En effectuant ces modifications, vous perdrez votre garantie à cet égard. Two Trees cependant fournit une image de "récupération" qui permettra de restaurer le système dans l'état où il livre ses imprimantes. Vous n'aurez alors qu'à "rétrograder" (flasher à nouveau le firmware Klipper) sur la tête «THR», le MCU de la carte contrôleur et celui du Linux MCU. Vous serez pratiquement revenu au point de départ et vous devriez pouvoir retrouver votre garantie. Si vous vous sentez capable et d'accord avec cet avertissement, on est parti Matériel: Lecteur eMMC je préfère cet adaptateur là et de préférence un eMMC de rechange de 16go Logiciels (à télécharger si nécessaire ) : Rufus ou BalenaEtcher ou encore Raspberry Imager (au choix) L'image récente du système Armbian, j'utilise cette version (Bookworm (24.2.0), noyau (6.6.17) ) Merci à @redrathnure qui a réalisé l'image d'un système Armbian récent accès SSH ( Putty, MobaXterm, …) transfert de fichier ( WinSCP ) archiveur de fichiers 7zip Avant toute chose, il est préférable d'avoir réalisé une sauvegarde de la totalité des dossiers «importants», vous pouvez le faire via Fluidd, ne zappez pas cette sauvegarde car les fichiers seront utiles pour redémarrer l'imprimante à la fin de l'installation : ~/klipper_config (contient les fichiers de configuration) ~/gcode_files (contient les G-codes). Une fois ces précautions prises : éteindre l'imprimante et débrancher le câble d'alimentation accéder au dessous et démonter la plaque donnant accès à la partie électronique dévisser les deux vis de l'eMMC sur la carte et extraire celle-ci délicatement ( se mettre à la terre avant de faire ces manipulations est une bonne pratique pour toute manipulation de carte électronique ). Installation Armbian Bookworm Sur le «PC» connecter l'eMMC à l'aide de son adaptateur sur le PC de travail démarrer Rufus (d'autres logiciels sont utilisables) pour flasher l'image Armbian précédemment téléchargée (au moment de la rédaction : Armbian-unofficial_24.2.0-trunk_Mkspi_bookworm_current_6.6.17.img.xz) puis décompressée via 7zip pour obtenir le fichier d'extension .img (Armbian-unofficial_24.2.0-trunk_Mkspi_bookworm_current_6.6.17.img) sélectionner le périphérique contenant l'eMMC (1) indiquer l'emplacement du ficher .img (2) (3) permet de vérifier l'intégrité du fichier téléchargé (le fichier .sha du dépôt Github contient l'empreinte) lancer le processus de flashage (4) Des fenêtres d'alerte peuvent s'afficher, cliquer sur OK pour valider et poursuivre le flashage La procédure prend un certain temps (un dizaine de minutes), la progression de la tâche s'affiche au fur et à mesure en bas de la fenêtre dans la zone STATUT finalement, arrivée à 100%, le statut passe au vert et indique que c'est terminé: retirer alors le lecteur contenant l'eMMC via la procédure standard pour l'éjecter proprement du PC Le nouveau système d'exploitation (Armbian, version Bookworm) est installé sur la carte eMMC. Modifié (le) Juillet 28 par pascal_lb 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Juillet 23 Auteur Partager Posté(e) Juillet 23 (modifié) Sur l'imprimante réinsérer l'eMMC sur la carte contrôleur de l'imprimante brancher le câble d'alimentation et le câble Ethernet (rappel: le Wifi n'est pour le moment plus fonctionnelle) allumer l'imprimante (le système démarre, une adresse IP est attribuée (Box internet, routeur) l'écran ne fonctionne plus et reste sur le logo Two Trees récupérer l'adresse IP par le moyen qui convient (Box internet, routeur, logiciel type AngryIP démarrer le logiciel SSH (Putty, SSH natif, Mobaxterm, …) et accéder à l'imprimante via son adresse IP le premier accès se fait en tant qu'utilisateur "root", mot de passe "1234". Cette première connexion lance le setup initial du systéme Armbian changement du mot de passe "root", choix de la zone horaire, choix du shell entre autre ensuite il est demandé de créer un nouvel utilisateur ( par exemple: "mks", mot de passe "makerbase" ), confirmer par ENTRÉE. Ce nouvel utilisateur possède des droits équivalents à «root» (sudo) chez moi, la zone horaire (timezone) ayant été détectée (Europe/Paris), l'installateur propose de générer les locales. Plusieurs choix étant possible, je sélectionne le 4 (fr_FR.UTF-8) à l'aide du logiciel SSH, ouvrir une nouvelle session en tant que le nouvel utilisateur créé ( "mks" ) mettre à jour le système : sudo apt update sudo apt upgrade ou en une seule ligne sudo apt update && sudo apt upgrade Confirmer la mise à jour (manuellement) ou ajouter le paramètre "-y" à la suite de "upgrade" sudo apt upgrade -y Aperçu des étapes ci-dessus Citation Welcome to Armbian-unofficial! Documentation: https://docs.armbian.com/ | Community support: https://community.armbian.com/ IP address: 192.168.1.126 Create root password: ********* Repeat root password: ********* Choose default system command shell: 1) bash 2) zsh 1 Shell: BASH Creating a new user account. Press <Ctrl-C> to abort Please provide a username (eg. your first name): mks Create user (mks) password: ********* Repeat user (mks) password: ********* Please provide your real name: Mks Dear Mks, your account mks has been created and is sudo enabled. Please use this account for your daily work from now on. Detected timezone: Europe/Paris Set user language based on your location? [Y/n] Y At your location, more locales are possible: 1) br_FR.UTF-8 5) ia_FR 2) ca_FR.UTF-8 6) oc_FR.UTF-8 3) eu_FR.UTF-8 7) Skip generating locales 4) fr_FR.UTF-8 Please enter your choice:4 Generating locales: fr_FR.UTF-8 root@mkspi:~# exit … => reconnexion en utilisateur «mks» login as: mks mks@192.168.1.126's password: _ _ _ __ ___ | | _____ _ __ (_) | '_ ` _ \| |/ / __| '_ \| | | | | | | | <\__ \ |_) | | |_| |_| |_|_|\_\___/ .__/|_| |_| Welcome to Armbian-unofficial 24.2.0-trunk Bookworm with Linux 6.6.17-current-rockchip64 No end-user support: built from trunk System load: 3% Up time: 3:21 Memory usage: 20% of 911M IP: 192.168.1.126 CPU temp: 40°C Usage of /: 56% of 6.7G [ Kernel and firmware upgrades disabled: armbian-config ] Last check: 2024-05-12 11:10 [ General system configuration (beta): armbian-config ] Last login: Sun May 12 13:38:15 2024 from 192.168.1.101 mks@mkspi:~$ mks@mkspi:~$ sudo apt update Réception de :1 http://security.debian.org bookworm-security InRelease [48,0 kB] Atteint :2 http://deb.debian.org/debian bookworm InRelease Réception de :3 http://deb.debian.org/debian bookworm-updates InRelease [55,4 kB] Réception de :5 http://deb.debian.org/debian bookworm-backports InRelease [56,5 kB] Réception de :4 http://imola.armbian.com/apt bookworm InRelease [53,3 kB] Réception de :6 http://security.debian.org bookworm-security/main arm64 Packages [152 kB] Réception de :7 http://deb.debian.org/debian bookworm-updates/main arm64 Packages.diff/Index [10,6 kB] Réception de :8 http://deb.debian.org/debian bookworm-updates/main arm64 Contents (deb).diff/Index [8361 B] Réception de :9 http://deb.debian.org/debian bookworm-updates/main arm64 Packages T-2024-04-23-2036.10-F-2024-04-23-2036.10.pdiff [1597 B] Réception de :9 http://deb.debian.org/debian bookworm-updates/main arm64 Packages T-2024-04-23-2036.10-F-2024-04-23-2036.10.pdiff [1597 B] Réception de :10 http://deb.debian.org/debian bookworm-updates/main arm64 Contents (deb) T-2024-04-23-2036.10-F-2024-04-23-2036.10.pdiff [6870 B] Réception de :10 http://deb.debian.org/debian bookworm-updates/main arm64 Contents (deb) T-2024-04-23-2036.10-F-2024-04-23-2036.10.pdiff [6870 B] Réception de :11 http://deb.debian.org/debian bookworm-backports/main arm64 Packages.diff/Index [63,3 kB] Ign :11 http://deb.debian.org/debian bookworm-backports/main arm64 Packages.diff/Index Réception de :12 http://deb.debian.org/debian bookworm-backports/main all Contents (deb).diff/Index [63,6 kB] Réception de :13 http://deb.debian.org/debian bookworm-backports/main arm64 Contents (deb).diff/Index [63,4 kB] Réception de :14 http://deb.debian.org/debian bookworm-backports/contrib arm64 Packages.diff/Index [25,2 kB] Réception de :15 http://deb.debian.org/debian bookworm-backports/contrib all Contents (deb).diff/Index [12,8 kB] Réception de :16 http://deb.debian.org/debian bookworm-backports/contrib arm64 Contents (deb).diff/Index [7239 B] Réception de :17 http://deb.debian.org/debian bookworm-backports/non-free arm64 Packages.diff/Index [4995 B] Réception de :18 http://deb.debian.org/debian bookworm-backports/non-free all Contents (deb).diff/Index [3873 B] Réception de :19 http://imola.armbian.com/apt bookworm/main all Packages [4650 B] Réception de :20 http://imola.armbian.com/apt bookworm/main arm64 Packages [188 kB] Réception de :21 http://deb.debian.org/debian bookworm-backports/main all Contents (deb) T-2024-05-01-0805.42-F-2024-02-19-2010.17.pdiff [539 kB] Réception de :21 http://deb.debian.org/debian bookworm-backports/main all Contents (deb) T-2024-05-01-0805.42-F-2024-02-19-2010.17.pdiff [539 kB] Réception de :22 http://deb.debian.org/debian bookworm-backports/main arm64 Contents (deb) T-2024-04-29-1406.02-F-2024-02-19-2010.17.pdiff [321 kB] Réception de :23 http://imola.armbian.com/apt bookworm/main arm64 Contents (deb) [5030 kB] Réception de :22 http://deb.debian.org/debian bookworm-backports/main arm64 Contents (deb) T-2024-04-29-1406.02-F-2024-02-19-2010.17.pdiff [321 kB] Réception de :24 http://deb.debian.org/debian bookworm-backports/contrib arm64 Packages T-2024-04-16-1405.22-F-2024-03-07-1416.30.pdiff [1825 B] Réception de :24 http://deb.debian.org/debian bookworm-backports/contrib arm64 Packages T-2024-04-16-1405.22-F-2024-03-07-1416.30.pdiff [1825 B] Réception de :25 http://deb.debian.org/debian bookworm-backports/contrib all Contents (deb) T-2024-03-07-1416.30-F-2024-03-07-1416.30.pdiff [6356 B] Réception de :25 http://deb.debian.org/debian bookworm-backports/contrib all Contents (deb) T-2024-03-07-1416.30-F-2024-03-07-1416.30.pdiff [6356 B] Réception de :26 http://deb.debian.org/debian bookworm-backports/contrib arm64 Contents (deb) T-2024-03-07-1416.30-F-2024-03-07-1416.30.pdiff [574 B] Réception de :26 http://deb.debian.org/debian bookworm-backports/contrib arm64 Contents (deb) T-2024-03-07-1416.30-F-2024-03-07-1416.30.pdiff [574 B] Réception de :27 http://deb.debian.org/debian bookworm-backports/non-free arm64 Packages T-2024-04-22-2005.41-F-2024-02-19-2010.17.pdiff [257 B] Réception de :27 http://deb.debian.org/debian bookworm-backports/non-free arm64 Packages T-2024-04-22-2005.41-F-2024-02-19-2010.17.pdiff [257 B] Réception de :28 http://deb.debian.org/debian bookworm-backports/non-free all Contents (deb) T-2024-02-19-2010.17-F-2024-02-19-2010.17.pdiff [3326 B] Réception de :28 http://deb.debian.org/debian bookworm-backports/non-free all Contents (deb) T-2024-02-19-2010.17-F-2024-02-19-2010.17.pdiff [3326 B] Réception de :29 http://deb.debian.org/debian bookworm-backports/main arm64 Packages [189 kB] Réception de :30 http://imola.armbian.com/apt bookworm/main all Contents (deb) [31,7 kB] Réception de :31 http://imola.armbian.com/apt bookworm/bookworm-utils all Packages [2357 B] Réception de :32 http://imola.armbian.com/apt bookworm/bookworm-utils arm64 Packages [15,9 kB] Réception de :33 http://imola.armbian.com/apt bookworm/bookworm-utils all Contents (deb) [12,1 kB] Réception de :34 http://imola.armbian.com/apt bookworm/bookworm-utils arm64 Contents (deb) [21,2 kB] Réception de :35 http://imola.armbian.com/apt bookworm/bookworm-desktop all Packages [933 B] Réception de :36 http://imola.armbian.com/apt bookworm/bookworm-desktop arm64 Packages [1965 B] Réception de :37 http://imola.armbian.com/apt bookworm/bookworm-desktop arm64 Contents (deb) [7694 B] Réception de :38 http://imola.armbian.com/apt bookworm/bookworm-desktop all Contents (deb) [385 B] 7015 ko réceptionnés en 12s (581 ko/s) Lecture des listes de paquets... Fait Construction de l'arbre des dépendances... Fait Lecture des informations d'état... Fait 27 paquets peuvent être mis à jour. Exécutez « apt list --upgradable » pour les voir. mks@mkspi:~$ sudo apt list --upgradable En train de lister... Fait armbian-config/bookworm,bookworm 24.2.1 all [pouvant être mis à jour depuis : 24.2.0-trunk] armbian-firmware/bookworm,bookworm 24.2.1 all [pouvant être mis à jour depuis : 24.2.0-trunk] armbian-plymouth-theme/bookworm,bookworm 24.2.1 all [pouvant être mis à jour depuis : 24.2.0-trunk] armbian-zsh/bookworm,bookworm 24.2.1 all [pouvant être mis à jour depuis : 24.2.0-trunk] base-files/bookworm 24.2.1-12.4+deb12u5-bookworm arm64 [pouvant être mis à jour depuis : 24.2.0-trunk-12.4+deb12u5-bookworm] bsdextrautils/stable-security 2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 2.38.1-5+b1] bsdutils/stable-security 1:2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 1:2.38.1-5+b1] fdisk/stable-security 2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 2.38.1-5+b1] libblkid1/stable-security 2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 2.38.1-5+b1] libc-bin/stable-security 2.36-9+deb12u6 arm64 [pouvant être mis à jour depuis : 2.36-9+deb12u4] libc-dev-bin/stable-security 2.36-9+deb12u6 arm64 [pouvant être mis à jour depuis : 2.36-9+deb12u4] libc-l10n/stable-security 2.36-9+deb12u6 all [pouvant être mis à jour depuis : 2.36-9+deb12u4] libc6-dev/stable-security 2.36-9+deb12u6 arm64 [pouvant être mis à jour depuis : 2.36-9+deb12u4] libc6/stable-security 2.36-9+deb12u6 arm64 [pouvant être mis à jour depuis : 2.36-9+deb12u4] libfdisk1/stable-security 2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 2.38.1-5+b1] libmount1/stable-security 2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 2.38.1-5+b1] libsmartcols1/stable-security 2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 2.38.1-5+b1] libuuid1/stable-security 2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 2.38.1-5+b1] linux-dtb-current-rockchip64/bookworm 24.2.1 arm64 [pouvant être mis à jour depuis : 24.2.0-trunk] linux-headers-current-rockchip64/bookworm 24.2.1 arm64 [pouvant être mis à jour depuis : 24.2.0-trunk] linux-image-current-rockchip64/bookworm 24.2.1 arm64 [pouvant être mis à jour depuis : 24.2.0-trunk] linux-libc-dev/stable-security 6.1.85-1 arm64 [pouvant être mis à jour depuis : 6.1.76-1] locales/stable-security 2.36-9+deb12u6 all [pouvant être mis à jour depuis : 2.36-9+deb12u4] mount/stable-security 2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 2.38.1-5+b1] rfkill/stable-security 2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 2.38.1-5+b1] util-linux-extra/stable-security 2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 2.38.1-5+b1] util-linux/stable-security 2.38.1-5+deb12u1 arm64 [pouvant être mis à jour depuis : 2.38.1-5+b1] mks@mkspi:~$ sudo apt upgrade Lecture des listes de paquets... Fait Construction de l'arbre des dépendances... Fait Lecture des informations d'état... Fait Calcul de la mise à jour... Fait Les paquets suivants ont été conservés : armbian-config armbian-firmware armbian-plymouth-theme armbian-zsh base-files linux-dtb-current-rockchip64 linux-headers-current-rockchip64 linux-image-current-rockchip64 Les paquets suivants seront mis à jour : bsdextrautils bsdutils fdisk libblkid1 libc-bin libc-dev-bin libc-l10n libc6 libc6-dev libfdisk1 libmount1 libsmartcols1 libuuid1 linux-libc-dev locales mount rfkill util-linux util-linux-extra 19 mis à jour, 0 nouvellement installés, 0 à enlever et 8 non mis à jour. Il est nécessaire de prendre 13,2 Mo dans les archives. Après cette opération, 26,6 ko d'espace disque supplémentaires seront utilisés. Souhaitez-vous continuer ? [O/n] Réception de :1 http://security.debian.org bookworm-security/main arm64 bsdutils arm64 1:2.38.1-5+deb12u1 [94,0 kB] Réception de :2 http://security.debian.org bookworm-security/main arm64 libc6-dev arm64 2.36-9+deb12u6 [1430 kB] Réception de :3 http://security.debian.org bookworm-security/main arm64 libc-dev-bin arm64 2.36-9+deb12u6 [44,7 kB] Réception de :4 http://security.debian.org bookworm-security/main arm64 linux-libc-dev arm64 6.1.85-1 [1944 kB] Réception de :5 http://security.debian.org bookworm-security/main arm64 libc6 arm64 2.36-9+deb12u6 [2321 kB] Réception de :6 http://security.debian.org bookworm-security/main arm64 libsmartcols1 arm64 2.38.1-5+deb12u1 [104 kB] Réception de :7 http://security.debian.org bookworm-security/main arm64 util-linux-extra arm64 2.38.1-5+deb12u1 [112 kB] Réception de :8 http://security.debian.org bookworm-security/main arm64 util-linux arm64 2.38.1-5+deb12u1 [1144 kB] Réception de :9 http://security.debian.org bookworm-security/main arm64 libc-bin arm64 2.36-9+deb12u6 [531 kB] Réception de :10 http://security.debian.org bookworm-security/main arm64 mount arm64 2.38.1-5+deb12u1 [134 kB] Réception de :11 http://security.debian.org bookworm-security/main arm64 libblkid1 arm64 2.38.1-5+deb12u1 [143 kB] Réception de :12 http://security.debian.org bookworm-security/main arm64 libmount1 arm64 2.38.1-5+deb12u1 [159 kB] Réception de :13 http://security.debian.org bookworm-security/main arm64 libuuid1 arm64 2.38.1-5+deb12u1 [28,3 kB] Réception de :14 http://security.debian.org bookworm-security/main arm64 libfdisk1 arm64 2.38.1-5+deb12u1 [182 kB] Réception de :15 http://security.debian.org bookworm-security/main arm64 fdisk arm64 2.38.1-5+deb12u1 [139 kB] Réception de :16 http://security.debian.org bookworm-security/main arm64 libc-l10n all 2.36-9+deb12u6 [675 kB] Réception de :17 http://security.debian.org bookworm-security/main arm64 locales all 2.36-9+deb12u6 [3902 kB] Réception de :18 http://security.debian.org bookworm-security/main arm64 bsdextrautils arm64 2.38.1-5+deb12u1 [86,9 kB] Réception de :19 http://security.debian.org bookworm-security/main arm64 rfkill arm64 2.38.1-5+deb12u1 [37,1 kB] 13,2 Mo réceptionnés en 2s (8046 ko/s) Preconfiguring packages ... (Lecture de la base de données... 68171 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../bsdutils_1%3a2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de bsdutils (1:2.38.1-5+deb12u1) sur (1:2.38.1-5+b1) ... Paramétrage de bsdutils (1:2.38.1-5+deb12u1) ... (Lecture de la base de données... 68170 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../libc6-dev_2.36-9+deb12u6_arm64.deb ... Dépaquetage de libc6-dev:arm64 (2.36-9+deb12u6) sur (2.36-9+deb12u4) ... Préparation du dépaquetage de .../libc-dev-bin_2.36-9+deb12u6_arm64.deb ... Dépaquetage de libc-dev-bin (2.36-9+deb12u6) sur (2.36-9+deb12u4) ... Préparation du dépaquetage de .../linux-libc-dev_6.1.85-1_arm64.deb ... Dépaquetage de linux-libc-dev:arm64 (6.1.85-1) sur (6.1.76-1) ... Préparation du dépaquetage de .../libc6_2.36-9+deb12u6_arm64.deb ... Dépaquetage de libc6:arm64 (2.36-9+deb12u6) sur (2.36-9+deb12u4) ... Paramétrage de libc6:arm64 (2.36-9+deb12u6) ... (Lecture de la base de données... 68170 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../libsmartcols1_2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de libsmartcols1:arm64 (2.38.1-5+deb12u1) sur (2.38.1-5+b1) ... Paramétrage de libsmartcols1:arm64 (2.38.1-5+deb12u1) ... (Lecture de la base de données... 68169 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../util-linux-extra_2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de util-linux-extra (2.38.1-5+deb12u1) sur (2.38.1-5+b1) ... Paramétrage de util-linux-extra (2.38.1-5+deb12u1) ... (Lecture de la base de données... 68168 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../util-linux_2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de util-linux (2.38.1-5+deb12u1) sur (2.38.1-5+b1) ... Paramétrage de util-linux (2.38.1-5+deb12u1) ... fstrim.service is a disabled or a static unit not running, not starting it. (Lecture de la base de données... 68167 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../libc-bin_2.36-9+deb12u6_arm64.deb ... Dépaquetage de libc-bin (2.36-9+deb12u6) sur (2.36-9+deb12u4) ... Paramétrage de libc-bin (2.36-9+deb12u6) ... (Lecture de la base de données... 68167 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../mount_2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de mount (2.38.1-5+deb12u1) sur (2.38.1-5+b1) ... Préparation du dépaquetage de .../libblkid1_2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de libblkid1:arm64 (2.38.1-5+deb12u1) sur (2.38.1-5+b1) ... Paramétrage de libblkid1:arm64 (2.38.1-5+deb12u1) ... (Lecture de la base de données... 68165 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../libmount1_2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de libmount1:arm64 (2.38.1-5+deb12u1) sur (2.38.1-5+b1) ... Paramétrage de libmount1:arm64 (2.38.1-5+deb12u1) ... (Lecture de la base de données... 68164 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../libuuid1_2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de libuuid1:arm64 (2.38.1-5+deb12u1) sur (2.38.1-5+b1) ... Paramétrage de libuuid1:arm64 (2.38.1-5+deb12u1) ... (Lecture de la base de données... 68163 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../0-libfdisk1_2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de libfdisk1:arm64 (2.38.1-5+deb12u1) sur (2.38.1-5+b1) ... Préparation du dépaquetage de .../1-fdisk_2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de fdisk (2.38.1-5+deb12u1) sur (2.38.1-5+b1) ... Préparation du dépaquetage de .../2-libc-l10n_2.36-9+deb12u6_all.deb ... Dépaquetage de libc-l10n (2.36-9+deb12u6) sur (2.36-9+deb12u4) ... Préparation du dépaquetage de .../3-locales_2.36-9+deb12u6_all.deb ... Dépaquetage de locales (2.36-9+deb12u6) sur (2.36-9+deb12u4) ... Préparation du dépaquetage de .../4-bsdextrautils_2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de bsdextrautils (2.38.1-5+deb12u1) sur (2.38.1-5+b1) ... Préparation du dépaquetage de .../5-rfkill_2.38.1-5+deb12u1_arm64.deb ... Dépaquetage de rfkill (2.38.1-5+deb12u1) sur (2.38.1-5+b1) ... Paramétrage de libc-l10n (2.36-9+deb12u6) ... Paramétrage de bsdextrautils (2.38.1-5+deb12u1) ... Paramétrage de linux-libc-dev:arm64 (6.1.85-1) ... Paramétrage de locales (2.36-9+deb12u6) ... Generating locales (this might take a while)... en_US.UTF-8... done fr_FR.UTF-8... done Generation complete. Paramétrage de rfkill (2.38.1-5+deb12u1) ... Paramétrage de libfdisk1:arm64 (2.38.1-5+deb12u1) ... Paramétrage de mount (2.38.1-5+deb12u1) ... Paramétrage de libc-dev-bin (2.36-9+deb12u6) ... Paramétrage de fdisk (2.38.1-5+deb12u1) ... Paramétrage de libc6-dev:arm64 (2.36-9+deb12u6) ... Traitement des actions différées (« triggers ») pour man-db (2.11.2-2) ... Traitement des actions différées (« triggers ») pour libc-bin (2.36-9+deb12u6) ... mks@mkspi:~$ Le système de base est installé sur l'eMMC, il occupe moins de 2Go de la capacité totale de 8Go (eMMC originelle ) mks@mkspi:~$ df -h Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur udev 379M 0 379M 0% /dev tmpfs 92M 2,0M 90M 3% /run /dev/mmcblk1p2 6,7G 1,9G 4,8G 29% / tmpfs 456M 0 456M 0% /dev/shm tmpfs 5,0M 0 5,0M 0% /run/lock tmpfs 456M 0 456M 0% /tmp /dev/mmcblk1p1 256M 88M 169M 35% /boot /dev/zram1 47M 740K 43M 2% /var/log tmpfs 92M 0 92M 0% /run/user/1000 «Améliorer» l'OS Tel quel le système d'exploitation est pleinement fonctionnel Certaines fonctionnalités de l'ancien OS de Makerbase ne sont plus disponibles, par exemple: plus d'automontage d'une clé USB le nom des interfaces réseau adopte celui «imposé» par systemd (je préfére l'ancien (ethX, wlanX) l'utilisateur mks ne peut accéder aux GPIO, le groupe gpio n'existe pas, on ne peut accéder aux GPIO que via sudo pas de synchronisation régulière du système de fichiers (/bin/sync) quelques paquets doivent encore être installés (python3-numpy python3-matplotlib libatlas-base-dev libopenblas-dev python3-serial) … On peut se passer de toutes mais ce serait dommage de s'en priver, certaines sont purement cosmétiques d'autres apportent plus de fonctionnalités. Bloquer certaines mises à jour du système d'exploitation Le OS prévus pour les Single Board Computer (SBC), Ordinateurs monocartes dont le plus connu est le RaspberryPi gèrent moyennement bien les montées de version du noyau (kernel), c'est particulièrement le cas des distributions Armbian. Des outils existent permettant d'empêcher la mise à jour de paquets (linux-dtb-*, linux-image-*, linux-headers-*, armbian-firmware*, …). Normalement, ces paquets après installation de l'image système sont bloqués. A chaque connexion ssh, c'est normalement indiqué On peut utiliser l'outil «armbian-config» pour geler / dégeler ces mises à jour : sudo armbian-config La première option de l'écran permet d'accéder aux paramètres «sensibles» du système: En choisissant cette option, le fond d'écran change de couleur pour rappeler le caractère «dangereux» de certains choix. On peut geler / dégeler les mises à jour à «éviter» : On peut évidemment aussi faire cette manipulation en ligne de commande. La liste des paquets gelés peut être récupérée lors d'un «apt upgrade» ou après un «apt update» suivi d'un «apt list --upgrable»: Citation mks@mkspi:~$ sudo apt upgrade Lecture des listes de paquets... Fait Construction de l'arbre des dépendances... Fait Lecture des informations d'état... Fait Calcul de la mise à jour... Fait Les paquets suivants ont été conservés : armbian-config armbian-firmware-full armbian-plymouth-theme armbian-zsh base-files linux-dtb-current-rockchip64 linux-headers-current-rockchip64 linux-image-current-rockchip64 0 mis à jour, 0 nouvellement installés, 0 à enlever et 8 non mis à jour. Connaissant le nom des paquets, la commande à utiliser est «apt-mark hold nom-du-paquet» (unhold pour dégeler): sudo apt-mark hold base-files linux-dtb-current-rockchip64 linux-image-current-rockchip64 linux-headers-current-rockchip64 armbian-config armbian-firmware armbian-plymouth-theme armbian-zsh Synchronisation du système de fichiers Ces systèmes monocartes apprécient moyennement l'extinction brutale (coupure d'alimentation) avec le risque de corruption du support mémoire (les eMMC sont un peu plus tolérantes que les cartes SD). On peut demander au système d'écrire régulièrement via une tâche «cron. Soit on édite manuellement cette tâche : crontab -e en ajoutant pour une synchronisation toutes les cinq minutes : */5 * * * * /bin/sync Soit en une seule ligne de commandes : (crontab -l 2>/dev/null; echo "*/5 * * * * /bin/sync") | crontab - Modifier la manière de gérer les noms d'interfaces réseaux Les systèmes récents utilisent «systemd» qui donnent des noms «aléatoires» aux interfaces réseaux, je préfère l'ancien système de nom (ethX, wlanX avec X={0,1,2, …} On peut en ajoutant une ligne dans le fichier /boot/armbianEnv.txt revenir à cet ancien nommage : echo "extraargs=net.ifnames=0" | sudo tee -a "/boot/armbianEnv.txt" > /dev/null On peut évidemment ajouter cette ligne (extraargs=net.ifnames=0) manuellement en éditant le fichier : sudo nano /boot/armbianEnv.txt Pour être pris en compte, il faudra redémarrer le système. Sans cette modification, l'interface Ethernet (eth0) serait nommée end1 Citation mks@mkspi:~$ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 76:09:8f:72:f7:44 brd ff:ff:ff:ff:ff:ff altname end1 inet 192.168.1.126/24 brd 192.168.1.255 scope global dynamic noprefixroute eth0 valid_lft 4958sec preferred_lft 4958sec inet6 fe80::62b:66de:8f1:6305/64 scope link noprefixroute valid_lft forever preferred_lft forever Quelques paquets à ajouter sudo apt update sudo apt install python3-numpy python3-matplotlib libatlas-base-dev libopenblas-dev python3-serial Automontage des clés USB Le système d'exploitation originel montait automatiquement les supports de masse (clés USB) dans le dossier de stockage des Gcodes dans un dossier sda1 créé au montage puis supprimé au démontage (retrait du support). C'est une fonctionnalité bien pratique qui n'est pas implémentée sur la nouvelle image du système. On pet ajouter cette fonctionnalité manuellement: créer des règles UDEV indiquant au système quoi faire quand un périphérique de masse est inséré créer le dossier servant de point de montage attribuer ce point de montage à l'utilisateur mks recharger les règles UDEV tester C'est l'objet du script shell suivant (contenu à recopier dans un fichier nommé comme vous voulez ( automontage.sh, par exemple), droits d'exécution (chmod +x …)) : #!/bin/bash # Remove old rule if it exists sudo rm -f /etc/udev/rules.d/99-usb_automount.rules # Define the path for the udev rule file udev_rule_path="/etc/udev/rules.d/99-usb_automount.rules" # Define the mount point mount_point="/home/mks/printer_data/gcodes/USB" # Obtain UID and GID for the mks user uid=$(id -u mks) gid=$(id -g mks) # Udev rule to add udev_rule_add="ACTION==\"add\", SUBSYSTEMS==\"usb\", SUBSYSTEM==\"block\", KERNEL==\"sd*1\", ENV{ID_FS_USAGE}==\"filesystem\", RUN{program}+=\"/usr/bin/systemd-mount --no-block --automount=yes --collect --options uid=$uid,gid=$gid,sync,nofail \$devnode $mount_point\"" # Udev rule to remove udev_rule_remove="ACTION==\"remove\", SUBSYSTEMS==\"usb\", SUBSYSTEM==\"block\", KERNEL==\"sd*1\", RUN+=\"/bin/sh -c '/bin/umount $mount_point'\"" # Write the rules to the udev rule file { echo "$udev_rule_add" echo "$udev_rule_remove" } | sudo tee "$udev_rule_path" # Create the mount point directory if it doesn't exist if [ ! -d "$mount_point" ]; then #sudo mkdir -p "$mount_point" mkdir -p "$mount_point" fi # Change the ownership of the mount point to user 'mks' sudo chown mks:mks "$mount_point" # Reload udev rules sudo udevadm control --reload-rules && sudo udevadm trigger echo "Udev rule for USB automount with sync option is configured." Pour créer et exécuter ce script : En ssh, placé dans le dossier perso de mks, il faut créer le script (il ne servira qu'une seule fois, il pourra une fois exécuté, le supprimer) cd ~ nano automount.sh Copier le contenu du script dans le fichier (pour coller dans nano, un clic avec le bouton droit devrait le faire), enregistrer puis quitter nano (CTRL+X, Yes pour enregistrer). Rendre exécutable le script créé puis le lancer (on pourrait s'en passer en utilisant la syntaxe: sh automount.sh) chmod +x automount.sh ./automount.sh Le script devrait s'exécuter (ajout de règles UDEV, création du point de montage (/home/mks/printer_data/gcodes/USB)) Vérifier une fois que le script a été exécuté que l'insertion de la clé USB est bien reconnue : lsblk Lors de l'introduction d'un clé, désormais, le système la gérera automatiquement 1) Pas de clé insérée: Citation mks@mkspi:~$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS mmcblk1 179:0 0 14,6G 0 disk ├─mmcblk1p1 179:1 0 256M 0 part /boot └─mmcblk1p2 179:2 0 14,1G 0 part /var/log.hdd / mmcblk1boot0 179:32 0 4M 1 disk mmcblk1boot1 179:64 0 4M 1 disk zram0 251:0 0 455,5M 0 disk [SWAP] zram1 251:1 0 50M 0 disk /var/log zram2 251:2 0 0B 0 disk 2) Clé insérée (le périphérique SDA est détecté mais pas encore monté) Citation mks@mkspi:~$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 1 14,4G 0 disk └─sda1 8:1 1 14,4G 0 part mmcblk1 179:0 0 14,6G 0 disk ├─mmcblk1p1 179:1 0 256M 0 part /boot └─mmcblk1p2 179:2 0 14,1G 0 part /var/log.hdd / mmcblk1boot0 179:32 0 4M 1 disk mmcblk1boot1 179:64 0 4M 1 disk zram0 251:0 0 455,5M 0 disk [SWAP] zram1 251:1 0 50M 0 disk /var/log zram2 251:2 0 0B 0 disk 3) La lecture du contenu de la clé monte le dossier là où il faut : Citation mks@mkspi:~$ ls -l printer_data/gcodes/USB total 4 -rwxr-xr-x 1 mks mks 0 30 mai 2024 JeTeVois drwxr-xr-x 2 mks mks 4096 31 janv. 16:03 'System Volume Information' mks@mkspi:~$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 1 14,4G 0 disk └─sda1 8:1 1 14,4G 0 part /home/mks/printer_data/gcodes/USB mmcblk1 179:0 0 14,6G 0 disk ├─mmcblk1p1 179:1 0 256M 0 part /boot └─mmcblk1p2 179:2 0 14,1G 0 part /var/log.hdd / mmcblk1boot0 179:32 0 4M 1 disk mmcblk1boot1 179:64 0 4M 1 disk zram0 251:0 0 455,5M 0 disk [SWAP] zram1 251:1 0 50M 0 disk /var/log zram2 251:2 0 0B 0 disk 4) Après retrait de la clé, le périphérique est bien démonté, le point de montage lui n'a pas disparu mais est vide (il pourrait parfaitement contenir des fichiers qui n'apparaitraient pas en cas de montage d'une clé ) : Citation mks@mkspi:~$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS mmcblk1 179:0 0 14,6G 0 disk ├─mmcblk1p1 179:1 0 256M 0 part /boot └─mmcblk1p2 179:2 0 14,1G 0 part /var/log.hdd / mmcblk1boot0 179:32 0 4M 1 disk mmcblk1boot1 179:64 0 4M 1 disk zram0 251:0 0 455,5M 0 disk [SWAP] zram1 251:1 0 50M 0 disk /var/log zram2 251:2 0 0B 0 disk mks@mkspi:~$ ls -l printer_data/gcodes/USB total 0 Modifié (le) Juillet 28 par pascal_lb 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Juillet 23 Auteur Partager Posté(e) Juillet 23 (modifié) Accéder aux dossiers de l'utilisateur MKS via l'explorateur de fichiers de Windows Même si on peut accéder via l'interface Web (Fluidd / Mainsail) à certains dossiers de Klipper avec un navigateur, l'explorateur de fichiers permet en plus (si l'utilisateur mks a bien été ajouté ) l'accès total au répertoire personnel de «mks» Pour réaliser «cette magie», rien de bien sorcier: 1. Installer quelques paquets : sudo apt install && sudo apt install samba winbind 2. Éditer le fichier /etc/samba/smb.conf: sudo nano /etc/samba/smb.conf 3. Ajouter à la fin de ce fichier : [Print_Files] comment = GCode_files path = /home/mks/printer_data/gcodes browseable = Yes writeable = Yes only guest = no create mask = 0770 directory mask = 0770 public = yes read only = no force user = mks force group = mks [Klipper_Configs] comment = Klipper configurations path = /home/mks/printer_data/config browseable = Yes writeable = Yes only guest = no create mask = 0770 directory mask = 0770 public = yes read only = no force user = mks force group = mks [Timelapses] comment = Timelapses path = /home/mks/timelapse browseable = Yes writeable = Yes only guest = no create mask = 0770 directory mask = 0770 public = yes read only = no force user = mks force group = mks 4. Enregistrer le fichier modifié 5. Ajouter l'utilisateur mks pour lui permettre l'accès à son «home» depuis Windows sudo smbpasswd -a mks 6. Redémarrer le daemon système : sudo systemctl restart smbd Savourer : Accès au partage \\adr.ess.e.ip Accès au dossier «Home» Agrandir la partition système J'ai d'abord installé le nouveau système sur l'ancienne eMMC de 8 Go. Régulièrement j'ai fait des images du contenu à l'aide de mon utilitaire favori imageUSB. Au départ, la place occupée représentait à peu près moins de la moitié de la capacité totale. mks@mkspi:~$ df -h Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur udev 379M 0 379M 0% /dev tmpfs 92M 2,4M 89M 3% /run /dev/mmcblk1p2 6,7G 3,6G 3,1G 55% / tmpfs 456M 0 456M 0% /dev/shm tmpfs 5,0M 0 5,0M 0% /run/lock tmpfs 456M 16K 456M 1% /tmp /dev/mmcblk1p1 256M 88M 169M 35% /boot /dev/zram1 47M 960K 43M 3% /var/log tmpfs 92M 0 92M 0% /run/user/1000 Au fil des installations liées à l'écosystème Klipper (Klipper, Moonraker, Fluidd, Mainsail, Crowsnest, Mobileraker, PrettyGCode, OctoEverywhere, Spoolman, …) je me retrouvais comme avec l'image du système de Qidi avec moins de 1 Go disponible (système utilisé à plus de 90%) mks@mkspi:~$ df -H Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur udev 398M 0 398M 0% /dev tmpfs 96M 4,3M 92M 5% /run /dev/mmcblk1p2 7,2G 6,4G 722M 90% / tmpfs 478M 0 478M 0% /dev/shm tmpfs 5,3M 0 5,3M 0% /run/lock tmpfs 478M 8,2k 478M 1% /tmp /dev/mmcblk1p1 269M 92M 177M 35% /boot /dev/zram1 50M 3,8M 42M 9% /var/log tmpfs 96M 0 96M 0% /run/user/1000 J'ai donc ré-imagé un système sur une eMMC de 16 Go à partir d'une image enregistrée de 8 Go. Pour prendre en compte la capacité de cette nouvelle mémoire, il faut procéder à un agrandissement de la partition (nul besoin de pompe comme pour d'autres agrandissements ). sudo systemctl enable armbian-resize-filesystem && sudo reboot Après redémarrage, la partition a été agrandie mks@mkspi:~$ df -h Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur udev 379M 0 379M 0% /dev tmpfs 92M 4,2M 87M 5% /run /dev/mmcblk1p2 14G 6,1G 7,6G 45% / tmpfs 456M 0 456M 0% /dev/shm tmpfs 5,0M 0 5,0M 0% /run/lock tmpfs 456M 4,0K 456M 1% /tmp /dev/mmcblk1p1 256M 88M 169M 35% /boot /dev/zram1 47M 2,7M 41M 7% /var/log tmpfs 92M 0 92M 0% /run/user/1000 Modifié (le) Juillet 24 par pascal_lb 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Juillet 24 Auteur Partager Posté(e) Juillet 24 (modifié) Le système d'exploitation est fin prêt à accueillir les applications composant l'écosystème Klipper. La base étant Klipper lui-même, Moonraker pour communiquer avec Klipper, une (ou les deux) interface Web (Fluidd / Mainsail) communiquant avec Moonraker pour afficher les informations et piloter l'imprimante. Pour réaliser ces installations, le moyen le plus simple à ce jour est d'utiliser la suite de scripts shell fournie par KIAUH KIAUH (Klipper Installation And Update Helper) Grâce à celui-ci, il est possible d'installer, de mettre à jour, de supprimer des éléments de la suite, juste en choisissant les bonnes options. On commence par récupérer le dépôt Github de cet outil puis on exécutera son script shell. 1. installer le paquet "git" (au cas où il serait absent (ce qui ne devrait pas être le cas avec l'installation de la distribution Armbian Bookworm) sudo apt update && sudo apt install -y git 2. cloner le dépôt KIAUH cd && git clone https://github.com/dw-0/kiauh.git L'installation en détail Citation mks@mkspi:~$ cd && git clone https://github.com/dw-0/kiauh.git Clonage dans 'kiauh'... remote: Enumerating objects: 5584, done. remote: Counting objects: 100% (5584/5584), done. remote: Compressing objects: 100% (1673/1673), done. remote: Total 5584 (delta 4043), reused 5274 (delta 3879), pack-reused 0 Réception d'objets: 100% (5584/5584), 1.46 Mio | 4.99 Mio/s, fait. Résolution des deltas: 100% (4043/4043), fait. 3. Exécuter le script ~/kiauh/kiauh.sh La première fenêtre donne accès au menu principal Rien n'est encore installé. Choisir l'option 1) [Install] pour accéder au menu des installations Installer dans l'ordre : Klipper Moonraker Mainsail Fluidd KLIPPER Après sélection de l'option (1), choisir la version de Python (v3 recommandée et de toute façon il n'y a pas de Python v2 installé avec la distribution Armbian Bookworm) Nombre d'instances de Klipper (plusieurs imprimantes) L'installation se déroule Citation ###### Installing single Klipper instance ... ###### Checking for the following dependencies: ● git [✓ OK] Dependencies already met! ###### Cloning Klipper from https://github.com/Klipper3d/klipper ... Clonage dans '/home/mks/klipper'... remote: Enumerating objects: 60918, done. remote: Counting objects: 100% (311/311), done. remote: Compressing objects: 100% (164/164), done. remote: Total 60918 (delta 237), reused 178 (delta 139), pack-reused 60607 Réception d'objets: 100% (60918/60918), 171.75 Mio | 5.25 Mio/s, fait. Résolution des deltas: 100% (48823/48823), fait. Mise à jour des fichiers: 100% (2129/2129), fait. Déjà sur 'master' Votre branche est à jour avec 'origin/master'. ###### Reading dependencies... virtualenv python3-dev libffi-dev build-essential libncurses-dev libusb-dev avrdude gcc-avr binutils-avr avr-libc stm32flash libnewlib-arm-none-eabi gcc-arm-none-eabi binutils-arm-none-eabi libusb-1.0 pkg-config dfu-util ###### Installing packages... Lecture des listes de paquets... Fait Construction de l'arbre des dépendances... Fait Lecture des informations d'état... Fait Note : sélection de libusb-1.0-0-dev pour l'expression rationnelle « libusb-1.0 » Note : sélection de libusb-1.0-doc pour l'expression rationnelle « libusb-1.0 » Note : sélection de libusb-1.0-0 pour l'expression rationnelle « libusb-1.0 » build-essential est déjà la version la plus récente (12.9). libusb-1.0-0 est déjà la version la plus récente (2:1.0.26-1). libusb-1.0-0 passé en « installé manuellement ». Les paquets supplémentaires suivants seront installés : libexpat1-dev libftdi1 libhidapi-libusb0 libjs-jquery libjs-sphinxdoc libjs-underscore libncurses6 libnewlib-dev libpkgconf3 libpython3-dev libpython3.11 libpython3.11-dev libusb-0.1-4 pkgconf pkgconf-bin python3-distlib python3-filelock python3-pip-whl python3-platformdirs python3-setuptools-whl python3-virtualenv python3-wheel-whl python3.11-dev Paquets suggérés : dfu-programmer avrdude-doc gcc-doc ncurses-doc libnewlib-doc Paquets recommandés : javascript-common libstdc++-arm-none-eabi-newlib Les NOUVEAUX paquets suivants seront installés : avr-libc avrdude binutils-arm-none-eabi binutils-avr dfu-util gcc-arm-none-eabi gcc-avr libexpat1-dev libffi-dev libftdi1 libhidapi-libusb0 libjs-jquery libjs-sphinxdoc libjs-underscore libncurses-dev libncurses6 libnewlib-arm-none-eabi libnewlib-dev libpkgconf3 libpython3-dev libpython3.11 libpython3.11-dev libusb-0.1-4 libusb-1.0-0-dev libusb-1.0-doc libusb-dev pkg-config pkgconf pkgconf-bin python3-dev python3-distlib python3-filelock python3-pip-whl python3-platformdirs python3-setuptools-whl python3-virtualenv python3-wheel-whl python3.11-dev stm32flash virtualenv 0 mis à jour, 40 nouvellement installés, 0 à enlever et 8 non mis à jour. Il est nécessaire de prendre 124 Mo dans les archives. Après cette opération, 1035 Mo d'espace disque supplémentaires seront utilisés. Réception de :1 http://deb.debian.org/debian bookworm/main arm64 binutils-avr arm64 2.26.20160125+Atmel3.6.2-4 [1395 kB] Réception de :2 http://deb.debian.org/debian bookworm/main arm64 gcc-avr arm64 1:5.4.0+Atmel3.6.2-3 [14,1 MB] Réception de :3 http://deb.debian.org/debian bookworm/main arm64 avr-libc all 1:2.0.0+Atmel3.6.2-3 [4889 kB] Réception de :4 http://deb.debian.org/debian bookworm/main arm64 libusb-0.1-4 arm64 2:0.1.12-32 [21,5 kB] Réception de :5 http://deb.debian.org/debian bookworm/main arm64 libftdi1 arm64 0.20-4+b1 [18,8 kB] Réception de :6 http://deb.debian.org/debian bookworm/main arm64 libhidapi-libusb0 arm64 0.13.1-1 [15,3 kB] Réception de :7 http://deb.debian.org/debian bookworm/main arm64 avrdude arm64 7.1+dfsg-3 [366 kB] Réception de :8 http://deb.debian.org/debian bookworm/main arm64 binutils-arm-none-eabi arm64 2.40-2+18+b1 [2694 kB] Réception de :9 http://deb.debian.org/debian bookworm/main arm64 dfu-util arm64 0.11-1 [41,2 kB] Réception de :10 http://deb.debian.org/debian bookworm/main arm64 gcc-arm-none-eabi arm64 15:12.2.rel1-1 [45,1 MB] Réception de :11 http://deb.debian.org/debian bookworm/main arm64 libexpat1-dev arm64 2.5.0-1 [135 kB] Réception de :12 http://deb.debian.org/debian bookworm/main arm64 libffi-dev arm64 3.4.4-1 [56,0 kB] Réception de :13 http://deb.debian.org/debian bookworm/main arm64 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [326 kB] Réception de :14 http://deb.debian.org/debian bookworm/main arm64 libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [116 kB] Réception de :15 http://deb.debian.org/debian bookworm/main arm64 libjs-sphinxdoc all 5.3.0-4 [130 kB] Réception de :16 http://deb.debian.org/debian bookworm/main arm64 libncurses6 arm64 6.4-4 [93,9 kB] Réception de :17 http://deb.debian.org/debian bookworm/main arm64 libncurses-dev arm64 6.4-4 [336 kB] Réception de :18 http://deb.debian.org/debian bookworm/main arm64 libnewlib-dev all 3.3.0-1.3 [262 kB] Réception de :19 http://deb.debian.org/debian bookworm/main arm64 libnewlib-arm-none-eabi all 3.3.0-1.3 [43,6 MB] Réception de :20 http://deb.debian.org/debian bookworm/main arm64 libpkgconf3 arm64 1.8.1-1 [35,3 kB] Réception de :21 http://deb.debian.org/debian bookworm/main arm64 libpython3.11 arm64 3.11.2-6 [1841 kB] Réception de :22 http://deb.debian.org/debian bookworm/main arm64 libpython3.11-dev arm64 3.11.2-6 [4395 kB] Réception de :23 http://deb.debian.org/debian bookworm/main arm64 libpython3-dev arm64 3.11.2-1+b1 [9564 B] Réception de :24 http://deb.debian.org/debian bookworm/main arm64 libusb-1.0-0-dev arm64 2:1.0.26-1 [83,0 kB] Réception de :25 http://deb.debian.org/debian bookworm/main arm64 libusb-1.0-doc all 2:1.0.26-1 [193 kB] Réception de :26 http://deb.debian.org/debian bookworm/main arm64 libusb-dev arm64 2:0.1.12-32 [37,5 kB] Réception de :27 http://deb.debian.org/debian bookworm/main arm64 pkgconf-bin arm64 1.8.1-1 [28,9 kB] Réception de :28 http://deb.debian.org/debian bookworm/main arm64 pkgconf arm64 1.8.1-1 [25,9 kB] Réception de :29 http://deb.debian.org/debian bookworm/main arm64 pkg-config arm64 1.8.1-1 [13,7 kB] Réception de :30 http://deb.debian.org/debian bookworm/main arm64 python3.11-dev arm64 3.11.2-6 [617 kB] Réception de :31 http://deb.debian.org/debian bookworm/main arm64 python3-dev arm64 3.11.2-1+b1 [26,2 kB] Réception de :32 http://deb.debian.org/debian bookworm/main arm64 python3-distlib all 0.3.6-1 [257 kB] Réception de :33 http://deb.debian.org/debian bookworm/main arm64 python3-filelock all 3.9.0-1 [9460 B] Réception de :34 http://deb.debian.org/debian bookworm/main arm64 python3-pip-whl all 23.0.1+dfsg-1 [1717 kB] Réception de :35 http://deb.debian.org/debian bookworm/main arm64 python3-platformdirs all 2.6.0-1 [16,3 kB] Réception de :36 http://deb.debian.org/debian bookworm/main arm64 python3-setuptools-whl all 66.1.1-1 [1111 kB] Réception de :37 http://deb.debian.org/debian bookworm/main arm64 python3-wheel-whl all 0.38.4-2 [38,6 kB] Réception de :38 http://deb.debian.org/debian bookworm/main arm64 python3-virtualenv all 20.17.1+ds-1 [93,9 kB] Réception de :39 http://deb.debian.org/debian bookworm/main arm64 stm32flash arm64 0.7-1 [31,4 kB] Réception de :40 http://deb.debian.org/debian bookworm/main arm64 virtualenv all 20.17.1+ds-1 [21,1 kB] 124 Mo réceptionnés en 13s (9570 ko/s) Extracting templates from packages: 100% Sélection du paquet binutils-avr précédemment désélectionné. (Lecture de la base de données... 68159 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../00-binutils-avr_2.26.20160125+Atmel3.6.2-4_arm64.deb ... Dépaquetage de binutils-avr (2.26.20160125+Atmel3.6.2-4) ... Sélection du paquet gcc-avr précédemment désélectionné. Préparation du dépaquetage de .../01-gcc-avr_1%3a5.4.0+Atmel3.6.2-3_arm64.deb ... Dépaquetage de gcc-avr (1:5.4.0+Atmel3.6.2-3) ... Sélection du paquet avr-libc précédemment désélectionné. Préparation du dépaquetage de .../02-avr-libc_1%3a2.0.0+Atmel3.6.2-3_all.deb ... Dépaquetage de avr-libc (1:2.0.0+Atmel3.6.2-3) ... Sélection du paquet libusb-0.1-4:arm64 précédemment désélectionné. Préparation du dépaquetage de .../03-libusb-0.1-4_2%3a0.1.12-32_arm64.deb ... Dépaquetage de libusb-0.1-4:arm64 (2:0.1.12-32) ... Sélection du paquet libftdi1:arm64 précédemment désélectionné. Préparation du dépaquetage de .../04-libftdi1_0.20-4+b1_arm64.deb ... Dépaquetage de libftdi1:arm64 (0.20-4+b1) ... Sélection du paquet libhidapi-libusb0:arm64 précédemment désélectionné. Préparation du dépaquetage de .../05-libhidapi-libusb0_0.13.1-1_arm64.deb ... Dépaquetage de libhidapi-libusb0:arm64 (0.13.1-1) ... Sélection du paquet avrdude précédemment désélectionné. Préparation du dépaquetage de .../06-avrdude_7.1+dfsg-3_arm64.deb ... Dépaquetage de avrdude (7.1+dfsg-3) ... Sélection du paquet binutils-arm-none-eabi précédemment désélectionné. Préparation du dépaquetage de .../07-binutils-arm-none-eabi_2.40-2+18+b1_arm64.deb ... Dépaquetage de binutils-arm-none-eabi (2.40-2+18+b1) ... Sélection du paquet dfu-util précédemment désélectionné. Préparation du dépaquetage de .../08-dfu-util_0.11-1_arm64.deb ... Dépaquetage de dfu-util (0.11-1) ... Sélection du paquet gcc-arm-none-eabi précédemment désélectionné. Préparation du dépaquetage de .../09-gcc-arm-none-eabi_15%3a12.2.rel1-1_arm64.deb ... Dépaquetage de gcc-arm-none-eabi (15:12.2.rel1-1) ... Sélection du paquet libexpat1-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../10-libexpat1-dev_2.5.0-1_arm64.deb ... Dépaquetage de libexpat1-dev:arm64 (2.5.0-1) ... Sélection du paquet libffi-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../11-libffi-dev_3.4.4-1_arm64.deb ... Dépaquetage de libffi-dev:arm64 (3.4.4-1) ... Sélection du paquet libjs-jquery précédemment désélectionné. Préparation du dépaquetage de .../12-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... Dépaquetage de libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... Sélection du paquet libjs-underscore précédemment désélectionné. Préparation du dépaquetage de .../13-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... Dépaquetage de libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... Sélection du paquet libjs-sphinxdoc précédemment désélectionné. Préparation du dépaquetage de .../14-libjs-sphinxdoc_5.3.0-4_all.deb ... Dépaquetage de libjs-sphinxdoc (5.3.0-4) ... Sélection du paquet libncurses6:arm64 précédemment désélectionné. Préparation du dépaquetage de .../15-libncurses6_6.4-4_arm64.deb ... Dépaquetage de libncurses6:arm64 (6.4-4) ... Sélection du paquet libncurses-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../16-libncurses-dev_6.4-4_arm64.deb ... Dépaquetage de libncurses-dev:arm64 (6.4-4) ... Sélection du paquet libnewlib-dev précédemment désélectionné. Préparation du dépaquetage de .../17-libnewlib-dev_3.3.0-1.3_all.deb ... Dépaquetage de libnewlib-dev (3.3.0-1.3) ... Sélection du paquet libnewlib-arm-none-eabi précédemment désélectionné. Préparation du dépaquetage de .../18-libnewlib-arm-none-eabi_3.3.0-1.3_all.deb ... Dépaquetage de libnewlib-arm-none-eabi (3.3.0-1.3) ... Sélection du paquet libpkgconf3:arm64 précédemment désélectionné. Préparation du dépaquetage de .../19-libpkgconf3_1.8.1-1_arm64.deb ... Dépaquetage de libpkgconf3:arm64 (1.8.1-1) ... Sélection du paquet libpython3.11:arm64 précédemment désélectionné. Préparation du dépaquetage de .../20-libpython3.11_3.11.2-6_arm64.deb ... Dépaquetage de libpython3.11:arm64 (3.11.2-6) ... Sélection du paquet libpython3.11-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../21-libpython3.11-dev_3.11.2-6_arm64.deb ... Dépaquetage de libpython3.11-dev:arm64 (3.11.2-6) ... Sélection du paquet libpython3-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../22-libpython3-dev_3.11.2-1+b1_arm64.deb ... Dépaquetage de libpython3-dev:arm64 (3.11.2-1+b1) ... Sélection du paquet libusb-1.0-0-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../23-libusb-1.0-0-dev_2%3a1.0.26-1_arm64.deb ... Dépaquetage de libusb-1.0-0-dev:arm64 (2:1.0.26-1) ... Sélection du paquet libusb-1.0-doc précédemment désélectionné. Préparation du dépaquetage de .../24-libusb-1.0-doc_2%3a1.0.26-1_all.deb ... Dépaquetage de libusb-1.0-doc (2:1.0.26-1) ... Sélection du paquet libusb-dev précédemment désélectionné. Préparation du dépaquetage de .../25-libusb-dev_2%3a0.1.12-32_arm64.deb ... Dépaquetage de libusb-dev (2:0.1.12-32) ... Sélection du paquet pkgconf-bin précédemment désélectionné. Préparation du dépaquetage de .../26-pkgconf-bin_1.8.1-1_arm64.deb ... Dépaquetage de pkgconf-bin (1.8.1-1) ... Sélection du paquet pkgconf:arm64 précédemment désélectionné. Préparation du dépaquetage de .../27-pkgconf_1.8.1-1_arm64.deb ... Dépaquetage de pkgconf:arm64 (1.8.1-1) ... Sélection du paquet pkg-config:arm64 précédemment désélectionné. Préparation du dépaquetage de .../28-pkg-config_1.8.1-1_arm64.deb ... Dépaquetage de pkg-config:arm64 (1.8.1-1) ... Sélection du paquet python3.11-dev précédemment désélectionné. Préparation du dépaquetage de .../29-python3.11-dev_3.11.2-6_arm64.deb ... Dépaquetage de python3.11-dev (3.11.2-6) ... Sélection du paquet python3-dev précédemment désélectionné. Préparation du dépaquetage de .../30-python3-dev_3.11.2-1+b1_arm64.deb ... Dépaquetage de python3-dev (3.11.2-1+b1) ... Sélection du paquet python3-distlib précédemment désélectionné. Préparation du dépaquetage de .../31-python3-distlib_0.3.6-1_all.deb ... Dépaquetage de python3-distlib (0.3.6-1) ... Sélection du paquet python3-filelock précédemment désélectionné. Préparation du dépaquetage de .../32-python3-filelock_3.9.0-1_all.deb ... Dépaquetage de python3-filelock (3.9.0-1) ... Sélection du paquet python3-pip-whl précédemment désélectionné. Préparation du dépaquetage de .../33-python3-pip-whl_23.0.1+dfsg-1_all.deb ... Dépaquetage de python3-pip-whl (23.0.1+dfsg-1) ... Sélection du paquet python3-platformdirs précédemment désélectionné. Préparation du dépaquetage de .../34-python3-platformdirs_2.6.0-1_all.deb ... Dépaquetage de python3-platformdirs (2.6.0-1) ... Sélection du paquet python3-setuptools-whl précédemment désélectionné. Préparation du dépaquetage de .../35-python3-setuptools-whl_66.1.1-1_all.deb ... Dépaquetage de python3-setuptools-whl (66.1.1-1) ... Sélection du paquet python3-wheel-whl précédemment désélectionné. Préparation du dépaquetage de .../36-python3-wheel-whl_0.38.4-2_all.deb ... Dépaquetage de python3-wheel-whl (0.38.4-2) ... Sélection du paquet python3-virtualenv précédemment désélectionné. Préparation du dépaquetage de .../37-python3-virtualenv_20.17.1+ds-1_all.deb ... Dépaquetage de python3-virtualenv (20.17.1+ds-1) ... Sélection du paquet stm32flash précédemment désélectionné. Préparation du dépaquetage de .../38-stm32flash_0.7-1_arm64.deb ... Dépaquetage de stm32flash (0.7-1) ... Sélection du paquet virtualenv précédemment désélectionné. Préparation du dépaquetage de .../39-virtualenv_20.17.1+ds-1_all.deb ... Dépaquetage de virtualenv (20.17.1+ds-1) ... Paramétrage de binutils-avr (2.26.20160125+Atmel3.6.2-4) ... Paramétrage de python3-setuptools-whl (66.1.1-1) ... Paramétrage de python3-filelock (3.9.0-1) ... Paramétrage de binutils-arm-none-eabi (2.40-2+18+b1) ... Paramétrage de libpython3.11:arm64 (3.11.2-6) ... Paramétrage de python3-pip-whl (23.0.1+dfsg-1) ... Paramétrage de gcc-arm-none-eabi (15:12.2.rel1-1) ... Paramétrage de libusb-1.0-doc (2:1.0.26-1) ... Paramétrage de libusb-1.0-0-dev:arm64 (2:1.0.26-1) ... Paramétrage de python3-distlib (0.3.6-1) ... Paramétrage de libffi-dev:arm64 (3.4.4-1) ... Paramétrage de python3-platformdirs (2.6.0-1) ... Paramétrage de stm32flash (0.7-1) ... Paramétrage de libusb-0.1-4:arm64 (2:0.1.12-32) ... Paramétrage de gcc-avr (1:5.4.0+Atmel3.6.2-3) ... Paramétrage de libpkgconf3:arm64 (1.8.1-1) ... Paramétrage de libexpat1-dev:arm64 (2.5.0-1) ... Paramétrage de libpython3.11-dev:arm64 (3.11.2-6) ... Paramétrage de libncurses6:arm64 (6.4-4) ... Paramétrage de libnewlib-dev (3.3.0-1.3) ... Paramétrage de libhidapi-libusb0:arm64 (0.13.1-1) ... Paramétrage de pkgconf-bin (1.8.1-1) ... Paramétrage de libnewlib-arm-none-eabi (3.3.0-1.3) ... Paramétrage de libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... Paramétrage de python3-wheel-whl (0.38.4-2) ... Paramétrage de dfu-util (0.11-1) ... Paramétrage de libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... Paramétrage de libncurses-dev:arm64 (6.4-4) ... Paramétrage de libpython3-dev:arm64 (3.11.2-1+b1) ... Paramétrage de python3.11-dev (3.11.2-6) ... Paramétrage de libftdi1:arm64 (0.20-4+b1) ... Paramétrage de python3-virtualenv (20.17.1+ds-1) ... Paramétrage de libusb-dev (2:0.1.12-32) ... Paramétrage de avr-libc (1:2.0.0+Atmel3.6.2-3) ... Paramétrage de pkgconf:arm64 (1.8.1-1) ... Paramétrage de virtualenv (20.17.1+ds-1) ... Paramétrage de pkg-config:arm64 (1.8.1-1) ... Paramétrage de libjs-sphinxdoc (5.3.0-4) ... Paramétrage de avrdude (7.1+dfsg-3) ... Paramétrage de python3-dev (3.11.2-1+b1) ... Traitement des actions différées (« triggers ») pour man-db (2.11.2-2) ... Traitement des actions différées (« triggers ») pour libc-bin (2.36-9+deb12u6) ... [✓ OK] Klipper packages installed! ###### Installing Python 3.11.2 virtual environment... created virtual environment CPython3.11.2.final.0-64 in 1948ms creator CPython3Posix(dest=/home/mks/klippy-env, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/mks/.local/share/virtualenv) added seed packages: pip==23.0.1, setuptools==66.1.1, wheel==0.38.4 activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator Requirement already satisfied: pip in /home/mks/klippy-env/lib/python3.11/site-packages (23.0.1) Collecting pip Downloading pip-24.0-py3-none-any.whl (2.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 4.8 MB/s eta 0:00:00 Installing collected packages: pip Attempting uninstall: pip Found existing installation: pip 23.0.1 Uninstalling pip-23.0.1: Successfully uninstalled pip-23.0.1 Successfully installed pip-24.0 Ignoring greenlet: markers 'python_version >= "3.12"' don't match your environment Collecting cffi==1.14.6 (from -r /home/mks/klipper/scripts/klippy-requirements.txt (line 5)) Downloading cffi-1.14.6.tar.gz (475 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 475.7/475.7 kB 2.3 MB/s eta 0:00:00 Preparing metadata (setup.py) ... done Collecting pyserial==3.4 (from -r /home/mks/klipper/scripts/klippy-requirements.txt (line 6)) Downloading pyserial-3.4-py2.py3-none-any.whl.metadata (1.6 kB) Collecting greenlet==2.0.2 (from -r /home/mks/klipper/scripts/klippy-requirements.txt (line 7)) Downloading greenlet-2.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (4.1 kB) Collecting Jinja2==2.11.3 (from -r /home/mks/klipper/scripts/klippy-requirements.txt (line 9)) Downloading Jinja2-2.11.3-py2.py3-none-any.whl.metadata (3.5 kB) Collecting python-can==3.3.4 (from -r /home/mks/klipper/scripts/klippy-requirements.txt (line 10)) Downloading python-can-3.3.4.tar.gz (179 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 179.1/179.1 kB 2.5 MB/s eta 0:00:00 Preparing metadata (setup.py) ... done Collecting markupsafe==1.1.1 (from -r /home/mks/klipper/scripts/klippy-requirements.txt (line 11)) Downloading MarkupSafe-1.1.1.tar.gz (19 kB) Preparing metadata (setup.py) ... done Collecting pycparser (from cffi==1.14.6->-r /home/mks/klipper/scripts/klippy-requirements.txt (line 5)) Downloading pycparser-2.22-py3-none-any.whl.metadata (943 bytes) Collecting aenum (from python-can==3.3.4->-r /home/mks/klipper/scripts/klippy-requirements.txt (line 10)) Downloading aenum-3.1.15-py3-none-any.whl.metadata (3.7 kB) Collecting wrapt~=1.10 (from python-can==3.3.4->-r /home/mks/klipper/scripts/klippy-requirements.txt (line 10)) Downloading wrapt-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (6.6 kB) Downloading pyserial-3.4-py2.py3-none-any.whl (193 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 193.7/193.7 kB 6.4 MB/s eta 0:00:00 Downloading greenlet-2.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (612 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 612.4/612.4 kB 6.9 MB/s eta 0:00:00 Downloading Jinja2-2.11.3-py2.py3-none-any.whl (125 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 125.7/125.7 kB 4.7 MB/s eta 0:00:00 Downloading wrapt-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (80 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 80.9/80.9 kB 3.7 MB/s eta 0:00:00 Downloading aenum-3.1.15-py3-none-any.whl (137 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 137.6/137.6 kB 5.2 MB/s eta 0:00:00 Downloading pycparser-2.22-py3-none-any.whl (117 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 117.6/117.6 kB 4.6 MB/s eta 0:00:00 Building wheels for collected packages: cffi, python-can, markupsafe Building wheel for cffi (setup.py) ... done Created wheel for cffi: filename=cffi-1.14.6-cp311-cp311-linux_aarch64.whl size=393786 sha256=a0976b6b5aecdc9dd14fdef4899b19e3309ad294431bbf735160449d2f153b9c Stored in directory: /home/mks/.cache/pip/wheels/ee/66/dc/d338d6a63e392a6a3d557af5de6a519bf4cf3440a86e7eef74 Building wheel for python-can (setup.py) ... done Created wheel for python-can: filename=python_can-3.3.4-py2.py3-none-any.whl size=154198 sha256=8ea88a8f344dc627f26596d3a7e40656c8d4b4e15d7017da1b7ca7a2fdd49d32 Stored in directory: /home/mks/.cache/pip/wheels/d3/73/e8/bd33204966a688cf05a620b221a626757a060c41ddcb5054d3 Building wheel for markupsafe (setup.py) ... done Created wheel for markupsafe: filename=MarkupSafe-1.1.1-cp311-cp311-linux_aarch64.whl size=29709 sha256=ccbf132b30def49993ee96d3605a96ef9cf1844fe7b5b37f570df13cae948147 Stored in directory: /home/mks/.cache/pip/wheels/42/2c/24/ee2a56da668805256e7c1b1d51ae9b177360788cabcdf5b9c1 Successfully built cffi python-can markupsafe Installing collected packages: pyserial, aenum, wrapt, pycparser, markupsafe, greenlet, python-can, Jinja2, cffi Successfully installed Jinja2-2.11.3 aenum-3.1.15 cffi-1.14.6 greenlet-2.0.2 markupsafe-1.1.1 pycparser-2.22 pyserial-3.4 python-can-3.3.4 wrapt-1.16.0 ###### Creating folder '/home/mks/printer_data/backup' ... [✓ OK] Folder '/home/mks/printer_data/backup' created! ###### Creating folder '/home/mks/printer_data/certs' ... [✓ OK] Folder '/home/mks/printer_data/certs' created! ###### Creating folder '/home/mks/printer_data/config' ... [✓ OK] Folder '/home/mks/printer_data/config' created! ###### Creating folder '/home/mks/printer_data/database' ... [✓ OK] Folder '/home/mks/printer_data/database' created! ###### Creating folder '/home/mks/printer_data/gcodes' ... [✓ OK] Folder '/home/mks/printer_data/gcodes' created! ###### Creating folder '/home/mks/printer_data/comms' ... [✓ OK] Folder '/home/mks/printer_data/comms' created! ###### Creating folder '/home/mks/printer_data/logs' ... [✓ OK] Folder '/home/mks/printer_data/logs' created! ###### Creating folder '/home/mks/printer_data/systemd' ... [✓ OK] Folder '/home/mks/printer_data/systemd' created! ###### Create Klipper service file ... [✓ OK] Klipper service file created! ###### Creating minimal example printer.cfg ... [✓ OK] Minimal example printer.cfg created! ###### Enable klipper.service ... Created symlink /etc/systemd/system/multi-user.target.wants/klipper.service → /etc/systemd/system/klipper.service. [✓ OK] Enable klipper.service successfull! ###### Start klipper.service ... [✓ OK] Start klipper.service successfull! ###### Installed brltty package detected, masking brltty service ... [✓ OK] brltty service masked! ###### Installed brltty-udev package detected, masking brltty-udev service ... [✓ OK] brltty-udev service masked! ###### Installed ModemManager package detected, masking ModemManager service ... [✓ OK] ModemManager service masked! #=======================================================# Klipper has been set up! #=======================================================# Le retour au menu principal nous confirme l'installation, le nombre d'instance, la version de Python et le dépôt installé MOONRAKER Choix du menu d'installation des composants, puis choix (2) pour l'installation de Moonraker. L'installation détecte seule combien d'instances Klipper ont été installées (ici, une seule) puis préparer son environnement Citation /=======================================================\ | ~~~~~~~~~~~~~~~~~ [ KIAUH ] ~~~~~~~~~~~~~~~~~ | | Klipper Installation And Update Helper | | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | \=======================================================/ ###### Initializing Moonraker installation ... [✓ OK] Klipper installation found! ###### Install Moonraker? (Y/n): [➔] Yes ###### Installing Moonraker ... ###### Checking for the following dependencies: ● git ● wget ● curl ● unzip ● dfu-util ● virtualenv ● libjpeg-dev ● zlib1g-dev ###### Installing the following dependencies: ● libjpeg-dev ###### Installing packages... Lecture des listes de paquets... Fait Construction de l'arbre des dépendances... Fait Lecture des informations d'état... Fait Les paquets supplémentaires suivants seront installés : libjpeg62-turbo libjpeg62-turbo-dev Les NOUVEAUX paquets suivants seront installés : libjpeg-dev libjpeg62-turbo libjpeg62-turbo-dev 0 mis à jour, 3 nouvellement installés, 0 à enlever et 8 non mis à jour. Il est nécessaire de prendre 535 ko dans les archives. Après cette opération, 1381 ko d'espace disque supplémentaires seront utilisés. Réception de :1 http://deb.debian.org/debian bookworm/main arm64 libjpeg62-turbo arm64 1:2.1.5-2 [171 kB] Réception de :2 http://deb.debian.org/debian bookworm/main arm64 libjpeg62-turbo-dev arm64 1:2.1.5-2 [292 kB] Réception de :3 http://deb.debian.org/debian bookworm/main arm64 libjpeg-dev arm64 1:2.1.5-2 [71,8 kB] 535 ko réceptionnés en 0s (2493 ko/s) Sélection du paquet libjpeg62-turbo:arm64 précédemment désélectionné. (Lecture de la base de données... 74863 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../libjpeg62-turbo_1%3a2.1.5-2_arm64.deb ... Dépaquetage de libjpeg62-turbo:arm64 (1:2.1.5-2) ... Sélection du paquet libjpeg62-turbo-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../libjpeg62-turbo-dev_1%3a2.1.5-2_arm64.deb ... Dépaquetage de libjpeg62-turbo-dev:arm64 (1:2.1.5-2) ... Sélection du paquet libjpeg-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../libjpeg-dev_1%3a2.1.5-2_arm64.deb ... Dépaquetage de libjpeg-dev:arm64 (1:2.1.5-2) ... Paramétrage de libjpeg62-turbo:arm64 (1:2.1.5-2) ... Paramétrage de libjpeg62-turbo-dev:arm64 (1:2.1.5-2) ... Paramétrage de libjpeg-dev:arm64 (1:2.1.5-2) ... Traitement des actions différées (« triggers ») pour libc-bin (2.36-9+deb12u6) ... [✓ OK] Dependencies packages installed! ###### Cloning Moonraker from https://github.com/Arksine/moonraker.git ... Clonage dans '/home/mks/moonraker'... remote: Enumerating objects: 10747, done. remote: Counting objects: 100% (3772/3772), done. remote: Compressing objects: 100% (463/463), done. remote: Total 10747 (delta 3460), reused 3527 (delta 3307), pack-reused 6975 Réception d'objets: 100% (10747/10747), 4.02 Mio | 4.70 Mio/s, fait. Résolution des deltas: 100% (7995/7995), fait. ###### Installing dependencies ... ###### Reading dependencies... python3-virtualenv python3-dev liblmdb-dev libopenjp2-7 libsodium-dev zlib1g-dev libjpeg-dev packagekit wireless-tools curl ###### Installing packages... Lecture des listes de paquets... Fait Construction de l'arbre des dépendances... Fait Lecture des informations d'état... Fait python3-virtualenv est déjà la version la plus récente (20.17.1+ds-1). python3-virtualenv passé en « installé manuellement ». python3-dev est déjà la version la plus récente (3.11.2-1+b1). zlib1g-dev est déjà la version la plus récente (1:1.2.13.dfsg-1). zlib1g-dev passé en « installé manuellement ». libjpeg-dev est déjà la version la plus récente (1:2.1.5-2). packagekit est déjà la version la plus récente (1.2.6-5). packagekit passé en « installé manuellement ». wireless-tools est déjà la version la plus récente (30~pre9-14). curl est déjà la version la plus récente (7.88.1-10+deb12u5). Les paquets supplémentaires suivants seront installés : liblmdb0 libsodium23 Paquets recommandés : lmdb-doc Les NOUVEAUX paquets suivants seront installés : liblmdb-dev liblmdb0 libopenjp2-7 libsodium-dev libsodium23 0 mis à jour, 5 nouvellement installés, 0 à enlever et 8 non mis à jour. Il est nécessaire de prendre 536 ko dans les archives. Après cette opération, 1757 ko d'espace disque supplémentaires seront utilisés. Réception de :1 http://deb.debian.org/debian bookworm/main arm64 liblmdb0 arm64 0.9.24-1 [43,7 kB] Réception de :2 http://deb.debian.org/debian bookworm/main arm64 liblmdb-dev arm64 0.9.24-1 [60,5 kB] Réception de :3 http://deb.debian.org/debian bookworm/main arm64 libopenjp2-7 arm64 2.5.0-2 [175 kB] Réception de :4 http://deb.debian.org/debian bookworm/main arm64 libsodium23 arm64 1.0.18-1 [119 kB] Réception de :5 http://deb.debian.org/debian bookworm/main arm64 libsodium-dev arm64 1.0.18-1 [137 kB] 536 ko réceptionnés en 0s (1962 ko/s) Sélection du paquet liblmdb0:arm64 précédemment désélectionné. (Lecture de la base de données... 74898 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../liblmdb0_0.9.24-1_arm64.deb ... Dépaquetage de liblmdb0:arm64 (0.9.24-1) ... Sélection du paquet liblmdb-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../liblmdb-dev_0.9.24-1_arm64.deb ... Dépaquetage de liblmdb-dev:arm64 (0.9.24-1) ... Sélection du paquet libopenjp2-7:arm64 précédemment désélectionné. Préparation du dépaquetage de .../libopenjp2-7_2.5.0-2_arm64.deb ... Dépaquetage de libopenjp2-7:arm64 (2.5.0-2) ... Sélection du paquet libsodium23:arm64 précédemment désélectionné. Préparation du dépaquetage de .../libsodium23_1.0.18-1_arm64.deb ... Dépaquetage de libsodium23:arm64 (1.0.18-1) ... Sélection du paquet libsodium-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../libsodium-dev_1.0.18-1_arm64.deb ... Dépaquetage de libsodium-dev:arm64 (1.0.18-1) ... Paramétrage de liblmdb0:arm64 (0.9.24-1) ... Paramétrage de libsodium23:arm64 (1.0.18-1) ... Paramétrage de libsodium-dev:arm64 (1.0.18-1) ... Paramétrage de liblmdb-dev:arm64 (0.9.24-1) ... Paramétrage de libopenjp2-7:arm64 (2.5.0-2) ... Traitement des actions différées (« triggers ») pour libc-bin (2.36-9+deb12u6) ... [✓ OK] Moonraker packages installed! ###### Installing python virtual environment... created virtual environment CPython3.11.2.final.0-64 in 997ms creator CPython3Posix(dest=/home/mks/moonraker-env, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/mks/.local/share/virtualenv) added seed packages: pip==23.0.1, setuptools==66.1.1, wheel==0.38.4 activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator Requirement already satisfied: pip in ./moonraker-env/lib/python3.11/site-packages (23.0.1) Collecting pip Using cached pip-24.0-py3-none-any.whl (2.1 MB) Installing collected packages: pip Attempting uninstall: pip Found existing installation: pip 23.0.1 Uninstalling pip-23.0.1: Successfully uninstalled pip-23.0.1 Successfully installed pip-24.0 Looking in links: /home/mks/moonraker/scripts/python_wheels Ignoring tornado: markers 'python_version == "3.7"' don't match your environment Ignoring pillow: markers 'python_version == "3.7"' don't match your environment Ignoring streaming-form-data: markers 'python_version == "3.7"' don't match your environment Collecting tornado==6.4.0 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 4)) Downloading tornado-6.4-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (2.5 kB) Collecting pyserial==3.4 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 5)) Using cached pyserial-3.4-py2.py3-none-any.whl.metadata (1.6 kB) Collecting pyserial-asyncio==0.6 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 6)) Downloading pyserial_asyncio-0.6-py3-none-any.whl.metadata (1.3 kB) Collecting pillow==10.3.0 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 8)) Downloading pillow-10.3.0-cp311-cp311-manylinux_2_28_aarch64.whl.metadata (9.2 kB) Collecting lmdb==1.4.1 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 9)) Downloading lmdb-1.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (1.2 kB) Collecting streaming-form-data==1.13.0 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 11)) Downloading streaming-form-data-1.13.0.tar.gz (95 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 95.0/95.0 kB 1.4 MB/s eta 0:00:00 Preparing metadata (setup.py) ... done Collecting distro==1.9.0 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 12)) Downloading distro-1.9.0-py3-none-any.whl.metadata (6.8 kB) Collecting inotify-simple==1.3.5 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 13)) Downloading inotify_simple-1.3.5.tar.gz (9.7 kB) Preparing metadata (setup.py) ... done Collecting libnacl==2.1.0 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 14)) Downloading libnacl-2.1.0-py3-none-any.whl.metadata (3.0 kB) Collecting paho-mqtt==1.6.1 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 15)) Downloading paho-mqtt-1.6.1.tar.gz (99 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 99.4/99.4 kB 4.3 MB/s eta 0:00:00 Preparing metadata (setup.py) ... done Collecting zeroconf==0.131.0 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 16)) Downloading zeroconf-0.131.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (6.1 kB) Collecting preprocess-cancellation==0.2.1 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 17)) Downloading preprocess_cancellation-0.2.1-py3-none-any.whl.metadata (3.6 kB) Collecting jinja2==3.1.3 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 18)) Downloading Jinja2-3.1.3-py3-none-any.whl.metadata (3.3 kB) Collecting dbus-next==0.2.3 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 19)) Downloading dbus_next-0.2.3-py3-none-any.whl.metadata (7.0 kB) Collecting apprise==1.7.1 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 20)) Downloading apprise-1.7.1-py3-none-any.whl.metadata (44 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 44.0/44.0 kB 2.0 MB/s eta 0:00:00 Collecting ldap3==2.9.1 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 21)) Downloading ldap3-2.9.1-py2.py3-none-any.whl.metadata (5.4 kB) Collecting python-periphery==2.4.1 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 22)) Downloading python_periphery-2.4.1-py2.py3-none-any.whl.metadata (1.5 kB) Collecting smart_open<=6.4.0 (from -r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 23)) Downloading smart_open-6.4.0-py3-none-any.whl.metadata (21 kB) Collecting ifaddr>=0.1.7 (from zeroconf==0.131.0->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 16)) Downloading ifaddr-0.2.0-py3-none-any.whl.metadata (4.9 kB) Collecting MarkupSafe>=2.0 (from jinja2==3.1.3->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 18)) Downloading MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (3.0 kB) Collecting certifi (from apprise==1.7.1->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 20)) Downloading certifi-2024.2.2-py3-none-any.whl.metadata (2.2 kB) Collecting requests (from apprise==1.7.1->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 20)) Downloading requests-2.31.0-py3-none-any.whl.metadata (4.6 kB) Collecting requests-oauthlib (from apprise==1.7.1->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 20)) Downloading requests_oauthlib-2.0.0-py2.py3-none-any.whl.metadata (11 kB) Collecting click>=5.0 (from apprise==1.7.1->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 20)) Downloading click-8.1.7-py3-none-any.whl.metadata (3.0 kB) Collecting markdown (from apprise==1.7.1->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 20)) Downloading Markdown-3.6-py3-none-any.whl.metadata (7.0 kB) Collecting PyYAML (from apprise==1.7.1->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 20)) Downloading PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (2.1 kB) Collecting pyasn1>=0.4.6 (from ldap3==2.9.1->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 21)) Downloading pyasn1-0.6.0-py2.py3-none-any.whl.metadata (8.3 kB) Collecting charset-normalizer<4,>=2 (from requests->apprise==1.7.1->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 20)) Downloading charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (33 kB) Collecting idna<4,>=2.5 (from requests->apprise==1.7.1->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 20)) Downloading idna-3.7-py3-none-any.whl.metadata (9.9 kB) Collecting urllib3<3,>=1.21.1 (from requests->apprise==1.7.1->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 20)) Downloading urllib3-2.2.1-py3-none-any.whl.metadata (6.4 kB) Collecting oauthlib>=3.0.0 (from requests-oauthlib->apprise==1.7.1->-r /home/mks/moonraker/scripts/moonraker-requirements.txt (line 20)) Downloading oauthlib-3.2.2-py3-none-any.whl.metadata (7.5 kB) Downloading tornado-6.4-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (435 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 435.9/435.9 kB 5.7 MB/s eta 0:00:00 Using cached pyserial-3.4-py2.py3-none-any.whl (193 kB) Downloading pyserial_asyncio-0.6-py3-none-any.whl (7.6 kB) Downloading pillow-10.3.0-cp311-cp311-manylinux_2_28_aarch64.whl (4.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.3/4.3 MB 6.4 MB/s eta 0:00:00 Downloading lmdb-1.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (301 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 301.6/301.6 kB 4.6 MB/s eta 0:00:00 Downloading distro-1.9.0-py3-none-any.whl (20 kB) Downloading libnacl-2.1.0-py3-none-any.whl (21 kB) Downloading zeroconf-0.131.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (11.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.3/11.3 MB 5.9 MB/s eta 0:00:00 Downloading preprocess_cancellation-0.2.1-py3-none-any.whl (18 kB) Downloading Jinja2-3.1.3-py3-none-any.whl (133 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.2/133.2 kB 4.8 MB/s eta 0:00:00 Downloading dbus_next-0.2.3-py3-none-any.whl (57 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 57.9/57.9 kB 2.5 MB/s eta 0:00:00 Downloading apprise-1.7.1-py3-none-any.whl (1.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 6.7 MB/s eta 0:00:00 Downloading ldap3-2.9.1-py2.py3-none-any.whl (432 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 432.2/432.2 kB 5.9 MB/s eta 0:00:00 Downloading python_periphery-2.4.1-py2.py3-none-any.whl (36 kB) Downloading smart_open-6.4.0-py3-none-any.whl (57 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 57.0/57.0 kB 2.4 MB/s eta 0:00:00 Downloading click-8.1.7-py3-none-any.whl (97 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.9/97.9 kB 4.1 MB/s eta 0:00:00 Downloading ifaddr-0.2.0-py3-none-any.whl (12 kB) Downloading MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (29 kB) Downloading pyasn1-0.6.0-py2.py3-none-any.whl (85 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 85.3/85.3 kB 3.4 MB/s eta 0:00:00 Downloading certifi-2024.2.2-py3-none-any.whl (163 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 163.8/163.8 kB 3.6 MB/s eta 0:00:00 Downloading Markdown-3.6-py3-none-any.whl (105 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 105.4/105.4 kB 4.2 MB/s eta 0:00:00 Downloading PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (732 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 732.2/732.2 kB 5.6 MB/s eta 0:00:00 Downloading requests-2.31.0-py3-none-any.whl (62 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.6/62.6 kB 2.6 MB/s eta 0:00:00 Downloading requests_oauthlib-2.0.0-py2.py3-none-any.whl (24 kB) Downloading charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (136 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 136.6/136.6 kB 4.9 MB/s eta 0:00:00 Downloading idna-3.7-py3-none-any.whl (66 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 66.8/66.8 kB 3.0 MB/s eta 0:00:00 Downloading oauthlib-3.2.2-py3-none-any.whl (151 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 151.7/151.7 kB 5.5 MB/s eta 0:00:00 Downloading urllib3-2.2.1-py3-none-any.whl (121 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 121.1/121.1 kB 4.6 MB/s eta 0:00:00 Building wheels for collected packages: streaming-form-data, inotify-simple, paho-mqtt Building wheel for streaming-form-data (setup.py) ... done Created wheel for streaming-form-data: filename=streaming_form_data-1.13.0-cp311-cp311-linux_aarch64.whl size=355800 sha256=55da5955dde096c2b1d2e0714552afa492b82b28165af611e6118f48b9c8348c Stored in directory: /home/mks/.cache/pip/wheels/d4/97/18/9025a411325fdb035145d6c4c8bafaed4b0ce325540f094d18 Building wheel for inotify-simple (setup.py) ... done Created wheel for inotify-simple: filename=inotify_simple-1.3.5-py3-none-any.whl size=7689 sha256=d5b38900167d59f95f04adb595f1fae23ce15a85873197accf0f644b6c2466ad Stored in directory: /home/mks/.cache/pip/wheels/62/4d/7f/e5e1cee8d11c6cd5bde3b7a60afe4498e46123173d92dd981c Building wheel for paho-mqtt (setup.py) ... done Created wheel for paho-mqtt: filename=paho_mqtt-1.6.1-py3-none-any.whl size=62118 sha256=57545148afee0afbea31576f34cc6a2ff6620d0e0abbcb6cab8d2d6394e77ca0 Stored in directory: /home/mks/.cache/pip/wheels/29/ea/a5/ba9a63aaf4cd4e16e8a87ee31fb4d11b04ff5e1735d312619a Successfully built streaming-form-data inotify-simple paho-mqtt Installing collected packages: python-periphery, pyserial, paho-mqtt, lmdb, ifaddr, zeroconf, urllib3, tornado, smart_open, PyYAML, pyserial-asyncio, pyasn1, preprocess-cancellation, pillow, oauthlib, MarkupSafe, markdown, libnacl, inotify-simple, idna, distro, dbus-next, click, charset-normalizer, certifi, streaming-form-data, requests, ldap3, jinja2, requests-oauthlib, apprise Successfully installed MarkupSafe-2.1.5 PyYAML-6.0.1 apprise-1.7.1 certifi-2024.2.2 charset-normalizer-3.3.2 click-8.1.7 dbus-next-0.2.3 distro-1.9.0 idna-3.7 ifaddr-0.2.0 inotify-simple-1.3.5 jinja2-3.1.3 ldap3-2.9.1 libnacl-2.1.0 lmdb-1.4.1 markdown-3.6 oauthlib-3.2.2 paho-mqtt-1.6.1 pillow-10.3.0 preprocess-cancellation-0.2.1 pyasn1-0.6.0 pyserial-3.4 pyserial-asyncio-0.6 python-periphery-2.4.1 requests-2.31.0 requests-oauthlib-2.0.0 smart_open-6.4.0 streaming-form-data-1.13.0 tornado-6.4 urllib3-2.2.1 zeroconf-0.131.0 ###### Creating moonraker.conf in /home/mks/printer_data/config ... [✓ OK] moonraker.conf created! ###### Creating Moonraker Service ... [✓ OK] Moonraker instance created! ###### Installing Moonraker policykit rules ... ###### PolicyKit Version 122 Detected ###### Installing PolicyKit Rules to /usr/share/polkit-1/rules.d/moonraker.rules... ###### Restarting Moonraker... [✓ OK] Moonraker policykit rules installed! ###### Enable moonraker.service ... Created symlink /etc/systemd/system/multi-user.target.wants/moonraker.service → /etc/systemd/system/moonraker.service. [✓ OK] Enable moonraker.service successfull! ###### Start moonraker.service ... [✓ OK] Start moonraker.service successfull! #=======================================================# Moonraker has been set up! #=======================================================# ● Instance 1: 192.168.1.126:7125 Retour au menu principal, cette fois Moonraker est signalé comme installé INTERFACES d'ACCÈS WEB Interfaces Web permettant l'accès à partir d'un navigateur Internet à Klipper via les APIs de Moonraker choix (3) pour Mainsail et (4) pour Fluidd. On peut n'en installer qu'une des deux, l'installation de la première, par défaut, communiquera avec le port HTTP standard (80). Pour la seconde, il faudra fournir un autre numéro de port. MAINSAIL Lors de cette première installation, répondre Yes (Oui) à la demande d'installation des macros «client» (PAUSE, RESUME, …) Citation /=======================================================\ | ~~~~~~~~~~~~~~~~~ [ KIAUH ] ~~~~~~~~~~~~~~~~~ | | Klipper Installation And Update Helper | | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | \=======================================================/ ###### Checking for the following dependencies: ● wget ● nginx ###### Installing the following dependencies: ● nginx ###### Installing packages... Lecture des listes de paquets... Fait Construction de l'arbre des dépendances... Fait Lecture des informations d'état... Fait Les paquets supplémentaires suivants seront installés : nginx-common Paquets suggérés : fcgiwrap nginx-doc ssl-cert Les NOUVEAUX paquets suivants seront installés : nginx nginx-common 0 mis à jour, 2 nouvellement installés, 0 à enlever et 8 non mis à jour. Il est nécessaire de prendre 606 ko dans les archives. Après cette opération, 1708 ko d'espace disque supplémentaires seront utilisés. Réception de :1 http://deb.debian.org/debian bookworm/main arm64 nginx-common all 1.22.1-9 [112 kB] Réception de :2 http://deb.debian.org/debian bookworm/main arm64 nginx arm64 1.22.1-9 [494 kB] 606 ko réceptionnés en 0s (2253 ko/s) Preconfiguring packages ... Sélection du paquet nginx-common précédemment désélectionné. (Lecture de la base de données... 74996 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../nginx-common_1.22.1-9_all.deb ... Dépaquetage de nginx-common (1.22.1-9) ... Sélection du paquet nginx précédemment désélectionné. Préparation du dépaquetage de .../nginx_1.22.1-9_arm64.deb ... Dépaquetage de nginx (1.22.1-9) ... Paramétrage de nginx-common (1.22.1-9) ... Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /lib/systemd/system/nginx.service. Paramétrage de nginx (1.22.1-9) ... Upgrading binary: nginx. Traitement des actions différées (« triggers ») pour man-db (2.11.2-2) ... [✓ OK] Dependencies packages installed! ###### Initializing Mainsail installation ... ###### Create KIAUH backup directory ... [✓ OK] Directory created! ###### Timestamp: 240501-1719 ###### Create backup of /home/mks/printer_data/config ... [✓ OK] Backup created in: /home/mks/kiauh-backups/configs/240501-1719/printer_data ###### Downloading Mainsail from https://github.com/mainsail-crew/mainsail/releases/latest/download/mainsail.zip ... --2024-05-01 17:19:02-- https://github.com/mainsail-crew/mainsail/releases/latest/download/mainsail.zip Résolution de github.com (github.com)… 140.82.121.3 Connexion à github.com (github.com)|140.82.121.3|:443… connecté. requête HTTP transmise, en attente de la réponse… 302 Found Emplacement : https://github.com/mainsail-crew/mainsail/releases/download/v2.11.1/mainsail.zip [suivant] --2024-05-01 17:19:02-- https://github.com/mainsail-crew/mainsail/releases/download/v2.11.1/mainsail.zip Réutilisation de la connexion existante à github.com:443. requête HTTP transmise, en attente de la réponse… 302 Found Emplacement : https://objects.githubusercontent.com/github-production-release-asset-2e65be/240875926/9cc07641-5ed4-4195-ba80-2c13aefcd6c5?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240501%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240501T151902Z&X-Amz-Expires=300&X-Amz-Signature=0bdf2e3c08915e29b1d1d8a4b89d20ce5ac4c3c9b2092134dcd7844377d5d420&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=240875926&response-content-disposition=attachment%3B filename%3Dmainsail.zip&response-content-type=application%2Foctet-stream [suivant] --2024-05-01 17:19:02-- https://objects.githubusercontent.com/github-production-release-asset-2e65be/240875926/9cc07641-5ed4-4195-ba80-2c13aefcd6c5?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240501%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240501T151902Z&X-Amz-Expires=300&X-Amz-Signature=0bdf2e3c08915e29b1d1d8a4b89d20ce5ac4c3c9b2092134dcd7844377d5d420&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=240875926&response-content-disposition=attachment%3B filename%3Dmainsail.zip&response-content-type=application%2Foctet-stream Résolution de objects.githubusercontent.com (objects.githubusercontent.com)… 185.199.111.133, 185.199.110.133, 185.199.108.133, ... Connexion à objects.githubusercontent.com (objects.githubusercontent.com)|185.199.111.133|:443… connecté. requête HTTP transmise, en attente de la réponse… 200 OK Taille : 2114772 (2,0M) [application/octet-stream] Sauvegarde en : « mainsail.zip » mainsail.zip 100%[===================>] 2,02M 9,79MB/s ds 0,2s 2024-05-01 17:19:03 (9,79 MB/s) — « mainsail.zip » sauvegardé [2114772/2114772] [✓ OK] Download complete! ###### Extracting archive ... [✓ OK] Done! ###### Remove downloaded archive ... [✓ OK] Done! /=======================================================\ | It is recommended to use special macros in order to | | have Mainsail fully functional and working. | | | | The recommended macros for Mainsail can be seen here: | | https://github.com/mainsail-crew/mainsail-config | | | | If you already use these macros skip this step. | | Otherwise you should consider to answer with 'yes' to | | download the recommended macros. | \=======================================================/ ###### Download the recommended macros? (Y/n): [➔] Yes ###### Cloning mainsail-config ... Clonage dans '/home/mks/mainsail-config'... remote: Enumerating objects: 89, done. remote: Counting objects: 100% (56/56), done. remote: Compressing objects: 100% (35/35), done. remote: Total 89 (delta 51), reused 21 (delta 21), pack-reused 33 Réception d'objets: 100% (89/89), 43.76 Kio | 1.68 Mio/s, fait. Résolution des deltas: 100% (52/52), fait. ###### Adding Mainsail-Config to update manager in file: /home/mks/printer_data/config/moonraker.conf ###### Restart moonraker.service ... [✓ OK] Restart moonraker.service successfull! [✓ OK] Done! ###### Checking for the following dependencies: ● nginx [✓ OK] Dependencies already met! ###### Creating NGINX configuration for Mainsail ... [✓ OK] Mainsail configured for port 80! [✓ OK] NGINX configuration for Mainsail was set! ###### Granting NGINX the required permissions ... [✓ OK] Done! ###### Creating symlink for /var/log/nginx/mainsail-access.log ... [✓ OK] Symlink created: /home/mks/printer_data/logs/mainsail-access.log ###### Creating symlink for /var/log/nginx/mainsail-error.log ... [✓ OK] Symlink created: /home/mks/printer_data/logs/mainsail-error.log ###### Adding Mainsail to update manager in file: /home/mks/printer_data/config/moonraker.conf ###### Restart moonraker.service ... [✓ OK] Restart moonraker.service successfull! #=======================================================# Mainsail has been set up! #=======================================================# Mainsail installé FLUIDD Mainsail (si installé en premier) utilise le port standard HTTP (80), il est nécessaire d'en indiquer un différent pour l'accès à Fluidd (Qidi Tech utilise le port 10088). Normalement, Mainsail ayant déjà été installé, les macros (client.cfg) indispensables ont elles-aussi été ajoutées, inutile de les réinstaller pour Fluidd (répondre Non à la demande d'installation). Ces deux interfaces Web utilisent désormais les mêmes macros (PAUSE, RESUME. …). Citation /=======================================================\ | ~~~~~~~~~~~~~~~~~ [ KIAUH ] ~~~~~~~~~~~~~~~~~ | | Klipper Installation And Update Helper | | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | \=======================================================/ ###### Checking for the following dependencies: ● wget ● nginx [✓ OK] Dependencies already met! ###### Initializing Fluidd installation ... ###### Timestamp: 240501-1720 ###### Create backup of /home/mks/printer_data/config ... [✓ OK] Backup created in: /home/mks/kiauh-backups/configs/240501-1720/printer_data ###### Detected other enabled interfaces: ● Mainsail - Port: 80 /=======================================================\ | !!!WARNING!!! | | You need to choose a different port for Fluidd! | | The following web interface is listening at port 80: | | | | ● Mainsail | | | | Make sure you don't choose a port which was already | | assigned to another webinterface! | | | | Be aware: there is NO sanity check for the following | | input. So make sure to choose a valid port! | \=======================================================/ Please enter a new Port: 10088 [➔] Setting port 10088 for Fluidd! ###### Downloading Fluidd from https://github.com/fluidd-core/fluidd/releases/latest/download/fluidd.zip ... --2024-05-01 17:20:42-- https://github.com/fluidd-core/fluidd/releases/latest/download/fluidd.zip Résolution de github.com (github.com)… 140.82.121.3 Connexion à github.com (github.com)|140.82.121.3|:443… connecté. requête HTTP transmise, en attente de la réponse… 302 Found Emplacement : https://github.com/fluidd-core/fluidd/releases/download/v1.29.1/fluidd.zip [suivant] --2024-05-01 17:20:42-- https://github.com/fluidd-core/fluidd/releases/download/v1.29.1/fluidd.zip Réutilisation de la connexion existante à github.com:443. requête HTTP transmise, en attente de la réponse… 302 Found Emplacement : https://objects.githubusercontent.com/github-production-release-asset-2e65be/295836951/71aafabe-9e9a-4a9f-b9a5-2e09cd260505?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240501%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240501T152042Z&X-Amz-Expires=300&X-Amz-Signature=299bc438661e5cadaa68d3ce18bc341ed7a4eeabafe973d269bcb6c5f53515a3&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=295836951&response-content-disposition=attachment%3B filename%3Dfluidd.zip&response-content-type=application%2Foctet-stream [suivant] --2024-05-01 17:20:42-- https://objects.githubusercontent.com/github-production-release-asset-2e65be/295836951/71aafabe-9e9a-4a9f-b9a5-2e09cd260505?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240501%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240501T152042Z&X-Amz-Expires=300&X-Amz-Signature=299bc438661e5cadaa68d3ce18bc341ed7a4eeabafe973d269bcb6c5f53515a3&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=295836951&response-content-disposition=attachment%3B filename%3Dfluidd.zip&response-content-type=application%2Foctet-stream Résolution de objects.githubusercontent.com (objects.githubusercontent.com)… 185.199.109.133, 185.199.108.133, 185.199.110.133, ... Connexion à objects.githubusercontent.com (objects.githubusercontent.com)|185.199.109.133|:443… connecté. requête HTTP transmise, en attente de la réponse… 200 OK Taille : 3684373 (3,5M) [application/octet-stream] Sauvegarde en : « fluidd.zip » fluidd.zip 100%[===================>] 3,51M 9,63MB/s ds 0,4s 2024-05-01 17:20:43 (9,63 MB/s) — « fluidd.zip » sauvegardé [3684373/3684373] [✓ OK] Download complete! ###### Extracting archive ... [✓ OK] Done! ###### Remove downloaded archive ... [✓ OK] Done! /=======================================================\ | It is recommended to use special macros in order to | | have Fluidd fully functional and working. | | | | The recommended macros for Fluidd can be found here: | | https://github.com/fluidd-core/fluidd-config | | | | If you already use these macros skip this step. | | Otherwise you should consider to answer with 'yes' to | | download the recommended macros. | \=======================================================/ ###### Download the recommended macros? (Y/n): n [➔] No ###### Checking for the following dependencies: ● nginx [✓ OK] Dependencies already met! ###### Creating NGINX configuration for Fluidd ... [✓ OK] Fluidd configured for port 10088! [✓ OK] NGINX configuration for Fluidd was set! ###### Granting NGINX the required permissions ... [✓ OK] Done! ###### Creating symlink for /var/log/nginx/fluidd-access.log ... [✓ OK] Symlink created: /home/mks/printer_data/logs/fluidd-access.log ###### Creating symlink for /var/log/nginx/fluidd-error.log ... [✓ OK] Symlink created: /home/mks/printer_data/logs/fluidd-error.log ###### Adding Fluidd to update manager in file: /home/mks/printer_data/config/moonraker.conf ###### Restart moonraker.service ... [✓ OK] Restart moonraker.service successfull! #=======================================================# Fluidd has been set up! #=======================================================# A l'issue de ces installations: ----------------------------------------------------------------------- Installations facultatives mais bien pratiques ----------------------------------------------------------------------- CROWSNEST Crowsnest est responsable de la configuration et du contrôle des webcams (même en l'absence de caméra, autant l'installer de suite). Citation /=======================================================\ | ~~~~~~~~~~~~~~~~~ [ KIAUH ] ~~~~~~~~~~~~~~~~~ | | Klipper Installation And Update Helper | | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | \=======================================================/ ###### Cloning 'crowsnest' repository ... Clonage dans '/home/mks/crowsnest'... remote: Enumerating objects: 1698, done. remote: Counting objects: 100% (320/320), done. remote: Compressing objects: 100% (163/163), done. remote: Total 1698 (delta 197), reused 235 (delta 150), pack-reused 1378 Réception d'objets: 100% (1698/1698), 656.79 Kio | 3.08 Mio/s, fait. Résolution des deltas: 100% (1021/1021), fait. ###### Checking for the following dependencies: ● git ● make [✓ OK] Dependencies already met! Installer will prompt you for sudo password! ###### Launching crowsnest installer ... crowsnest - A webcam daemon for multiple cams and stream services. Ahoy! Thank you for installing crowsnest This will take a while ... Please reboot after the installation has finished. Running apt-get update first ... Atteint :1 http://security.debian.org bookworm-security InRelease Atteint :2 http://deb.debian.org/debian bookworm InRelease Réception de :3 http://deb.debian.org/debian bookworm-updates InRelease [55,4 kB] Réception de :4 http://deb.debian.org/debian bookworm-backports InRelease [56,5 kB] Atteint :5 http://fi.mirror.armbian.de/apt bookworm InRelease Réception de :6 http://deb.debian.org/debian bookworm-backports/main arm64 Packages.diff/Index [63,3 kB] Réception de :7 http://deb.debian.org/debian bookworm-backports/main arm64 Contents (deb).diff/Index [63,4 kB] Réception de :8 http://deb.debian.org/debian bookworm-backports/main all Contents (deb).diff/Index [63,6 kB] Réception de :9 http://deb.debian.org/debian bookworm-backports/main arm64 Packages T-2024-05-01-1413.56-F-2024-05-01-1413.56.pdiff [3429 B] Réception de :10 http://deb.debian.org/debian bookworm-backports/main arm64 Contents (deb) T-2024-05-01-1413.56-F-2024-05-01-1413.56.pdiff [401 B] Réception de :9 http://deb.debian.org/debian bookworm-backports/main arm64 Packages T-2024-05-01-1413.56-F-2024-05-01-1413.56.pdiff [3429 B] Réception de :10 http://deb.debian.org/debian bookworm-backports/main arm64 Contents (deb) T-2024-05-01-1413.56-F-2024-05-01-1413.56.pdiff [401 B] Réception de :11 http://deb.debian.org/debian bookworm-backports/main all Contents (deb) T-2024-05-01-1413.56-F-2024-05-01-1413.56.pdiff [579 B] Réception de :11 http://deb.debian.org/debian bookworm-backports/main all Contents (deb) T-2024-05-01-1413.56-F-2024-05-01-1413.56.pdiff [579 B] 307 ko réceptionnés en 10s (29,6 ko/s) Lecture des listes de paquets… Running apt-get update first ... [OK] Doing some tests ... Checking for mjpg-streamer ... Checking for mjpg-streamer ... [OK] Checking for camera-streamer dependencies ... Checking if device is a Raspberry Pi ... Checking if device is a Raspberry Pi ... [FAILED] This device is not a Raspberry Pi therefore camera-streeamer cannot be installed ... Doing some tests ... [OK] Installing without camera-streamer ... Installing dependencies ... Lecture des listes de paquets... Fait Construction de l'arbre des dépendances... Fait Lecture des informations d'état... Fait git est déjà la version la plus récente (1:2.39.2-1.1). bsdutils est déjà la version la plus récente (1:2.38.1-5+deb12u1). findutils est déjà la version la plus récente (4.9.0-4). curl est déjà la version la plus récente (7.88.1-10+deb12u5). build-essential est déjà la version la plus récente (12.9). libjpeg-dev est déjà la version la plus récente (1:2.1.5-2). Les paquets supplémentaires suivants seront installés : libevent-2.1-7 libevent-extra-2.1-7 libevent-openssl-2.1-7 libevent-pthreads-2.1-7 libmd-dev libv4l-0 libv4l2rds0 libv4lconvert0 python3-iniparse Les NOUVEAUX paquets suivants seront installés : crudini libbsd-dev libevent-2.1-7 libevent-dev libevent-extra-2.1-7 libevent-openssl-2.1-7 libevent-pthreads-2.1-7 libmd-dev libv4l-0 libv4l2rds0 libv4lconvert0 python3-iniparse v4l-utils 0 mis à jour, 13 nouvellement installés, 0 à enlever et 8 non mis à jour. Il est nécessaire de prendre 1953 ko dans les archives. Après cette opération, 8080 ko d'espace disque supplémentaires seront utilisés. Réception de :1 http://deb.debian.org/debian bookworm/main arm64 python3-iniparse all 0.5-1 [21,9 kB] Réception de :2 http://deb.debian.org/debian bookworm/main arm64 crudini arm64 0.9.4-1 [18,6 kB] Réception de :3 http://deb.debian.org/debian bookworm/main arm64 libmd-dev arm64 1.0.4-2 [47,4 kB] Réception de :4 http://deb.debian.org/debian bookworm/main arm64 libbsd-dev arm64 0.11.7-2 [242 kB] Réception de :5 http://deb.debian.org/debian bookworm/main arm64 libevent-2.1-7 arm64 2.1.12-stable-8 [168 kB] Réception de :6 http://deb.debian.org/debian bookworm/main arm64 libevent-extra-2.1-7 arm64 2.1.12-stable-8 [101 kB] Réception de :7 http://deb.debian.org/debian bookworm/main arm64 libevent-pthreads-2.1-7 arm64 2.1.12-stable-8 [53,7 kB] Réception de :8 http://deb.debian.org/debian bookworm/main arm64 libevent-openssl-2.1-7 arm64 2.1.12-stable-8 [59,7 kB] Réception de :9 http://deb.debian.org/debian bookworm/main arm64 libevent-dev arm64 2.1.12-stable-8 [302 kB] Réception de :10 http://deb.debian.org/debian bookworm/main arm64 libv4lconvert0 arm64 1.22.1-5+b2 [141 kB] Réception de :11 http://deb.debian.org/debian bookworm/main arm64 libv4l-0 arm64 1.22.1-5+b2 [107 kB] Réception de :12 http://deb.debian.org/debian bookworm/main arm64 libv4l2rds0 arm64 1.22.1-5+b2 [80,3 kB] Réception de :13 http://deb.debian.org/debian bookworm/main arm64 v4l-utils arm64 1.22.1-5+b2 [610 kB] 1953 ko réceptionnés en 0s (4501 ko/s) Sélection du paquet python3-iniparse précédemment désélectionné. (Lecture de la base de données... 75051 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../00-python3-iniparse_0.5-1_all.deb ... Dépaquetage de python3-iniparse (0.5-1) ... Sélection du paquet crudini précédemment désélectionné. Préparation du dépaquetage de .../01-crudini_0.9.4-1_arm64.deb ... Dépaquetage de crudini (0.9.4-1) ... Sélection du paquet libmd-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../02-libmd-dev_1.0.4-2_arm64.deb ... Dépaquetage de libmd-dev:arm64 (1.0.4-2) ... Sélection du paquet libbsd-dev:arm64 précédemment désélectionné. Préparation du dépaquetage de .../03-libbsd-dev_0.11.7-2_arm64.deb ... Dépaquetage de libbsd-dev:arm64 (0.11.7-2) ... Sélection du paquet libevent-2.1-7:arm64 précédemment désélectionné. Préparation du dépaquetage de .../04-libevent-2.1-7_2.1.12-stable-8_arm64.deb ... Dépaquetage de libevent-2.1-7:arm64 (2.1.12-stable-8) ... Sélection du paquet libevent-extra-2.1-7:arm64 précédemment désélectionné. Préparation du dépaquetage de .../05-libevent-extra-2.1-7_2.1.12-stable-8_arm64.deb ... Dépaquetage de libevent-extra-2.1-7:arm64 (2.1.12-stable-8) ... Sélection du paquet libevent-pthreads-2.1-7:arm64 précédemment désélectionné. Préparation du dépaquetage de .../06-libevent-pthreads-2.1-7_2.1.12-stable-8_arm64.deb ... Dépaquetage de libevent-pthreads-2.1-7:arm64 (2.1.12-stable-8) ... Sélection du paquet libevent-openssl-2.1-7:arm64 précédemment désélectionné. Préparation du dépaquetage de .../07-libevent-openssl-2.1-7_2.1.12-stable-8_arm64.deb ... Dépaquetage de libevent-openssl-2.1-7:arm64 (2.1.12-stable-8) ... Sélection du paquet libevent-dev précédemment désélectionné. Préparation du dépaquetage de .../08-libevent-dev_2.1.12-stable-8_arm64.deb ... Dépaquetage de libevent-dev (2.1.12-stable-8) ... Sélection du paquet libv4lconvert0:arm64 précédemment désélectionné. Préparation du dépaquetage de .../09-libv4lconvert0_1.22.1-5+b2_arm64.deb ... Dépaquetage de libv4lconvert0:arm64 (1.22.1-5+b2) ... Sélection du paquet libv4l-0:arm64 précédemment désélectionné. Préparation du dépaquetage de .../10-libv4l-0_1.22.1-5+b2_arm64.deb ... Dépaquetage de libv4l-0:arm64 (1.22.1-5+b2) ... Sélection du paquet libv4l2rds0:arm64 précédemment désélectionné. Préparation du dépaquetage de .../11-libv4l2rds0_1.22.1-5+b2_arm64.deb ... Dépaquetage de libv4l2rds0:arm64 (1.22.1-5+b2) ... Sélection du paquet v4l-utils précédemment désélectionné. Préparation du dépaquetage de .../12-v4l-utils_1.22.1-5+b2_arm64.deb ... Dépaquetage de v4l-utils (1.22.1-5+b2) ... Paramétrage de libevent-extra-2.1-7:arm64 (2.1.12-stable-8) ... Paramétrage de libevent-openssl-2.1-7:arm64 (2.1.12-stable-8) ... Paramétrage de libevent-2.1-7:arm64 (2.1.12-stable-8) ... Paramétrage de libv4lconvert0:arm64 (1.22.1-5+b2) ... Paramétrage de libmd-dev:arm64 (1.0.4-2) ... Paramétrage de libv4l2rds0:arm64 (1.22.1-5+b2) ... Paramétrage de libbsd-dev:arm64 (0.11.7-2) ... Paramétrage de python3-iniparse (0.5-1) ... Paramétrage de libevent-pthreads-2.1-7:arm64 (2.1.12-stable-8) ... Paramétrage de crudini (0.9.4-1) ... Paramétrage de libv4l-0:arm64 (1.22.1-5+b2) ... Paramétrage de libevent-dev (2.1.12-stable-8) ... Paramétrage de v4l-utils (1.22.1-5+b2) ... Traitement des actions différées (« triggers ») pour libc-bin (2.36-9+deb12u6) ... Traitement des actions différées (« triggers ») pour man-db (2.11.2-2) ... Install dependencies ... [OK] Reading configuration ... No user configuration file found ... Using default configuration ... [OK] Creating file structure ... Directory /home/mks/printer_data/config already exists ... Directory /home/mks/printer_data/logs already exists ... Directory /home/mks/printer_data/systemd already exists ... Creating file structure ... [OK] Link crowsnest to /usr/local/bin ... [OK] Install service file ... [OK] Install environment file ... [OK] Install logrotate configuration ... [OK] Install crowsnest.conf ... [OK] Enable crowsnest.service ... [OK] Add User mks to group 'video' ... [SKIPPED] ==> User mks is already in group 'video' Build dependend Stream Apps ... Cloning ustreamer repository ... Clonage dans 'bin/ustreamer'... remote: Enumerating objects: 201, done. remote: Counting objects: 100% (201/201), done. remote: Compressing objects: 100% (142/142), done. remote: Total 201 (delta 69), reused 119 (delta 36), pack-reused 0 Réception d'objets: 100% (201/201), 178.44 Kio | 2.44 Mio/s, fait. Résolution des deltas: 100% (69/69), fait. Note : basculement sur '9ec59143dda445859e0ddb4027b44029ced5ac14'. Vous êtes dans l'état « HEAD détachée ». Vous pouvez visiter, faire des modifications expérimentales et les valider. Il vous suffit de faire un autre basculement pour abandonner les commits que vous faites dans cet état sans impacter les autres branches Si vous voulez créer une nouvelle branche pour conserver les commits que vous créez, il vous suffit d'utiliser l'option -c de la commande switch comme ceci : git switch -c <nom-de-la-nouvelle-branche> Ou annuler cette opération avec : git switch - Désactivez ce conseil en renseignant la variable de configuration advice.detachedHead à false Install of camera-streamer skipped, only supported on Raspberry SBC's! ... Build 'ustreamer' using 2 Cores ... make apps make[1] : on entre dans le répertoire « /home/mks/crowsnest/bin/ustreamer » make -C src make[2] : on entre dans le répertoire « /home/mks/crowsnest/bin/ustreamer/src » -- CC libs/base64.c -- CC libs/capture.c -- CC libs/fpsi.c -- CC libs/frame.c -- CC libs/frametext.c -- CC libs/frametext_font.c -- CC libs/logging.c -- CC libs/memsink.c -- CC libs/memsinksh.c -- CC libs/options.c -- CC libs/queue.c -- CC libs/ring.c -- CC libs/signal.c -- CC libs/tc358743.c -- CC libs/unjpeg.c -- CC ustreamer/blank.c -- CC ustreamer/data/favicon_ico.c -- CC ustreamer/data/index_html.c -- CC ustreamer/encoder.c -- CC ustreamer/encoders/cpu/encoder.c -- CC ustreamer/encoders/hw/encoder.c -- CC ustreamer/http/bev.c -- CC ustreamer/http/mime.c -- CC ustreamer/http/path.c -- CC ustreamer/http/server.c -- CC ustreamer/http/static.c -- CC ustreamer/http/unix.c -- CC ustreamer/http/uri.c -- CC ustreamer/m2m.c -- CC ustreamer/main.c -- CC ustreamer/options.c -- CC ustreamer/stream.c -- CC ustreamer/workers.c -- CC dump/file.c -- CC dump/main.c == LD ustreamer.bin == LD ustreamer-dump.bin make[2] : on quitte le répertoire « /home/mks/crowsnest/bin/ustreamer/src » for i in src/*.bin; do \ test ! -x $i || ln -sf $i `basename $i .bin`; \ done make[1] : on quitte le répertoire « /home/mks/crowsnest/bin/ustreamer » Build 'ustreamer' ... [SUCCESS] '/home/mks/crowsnest/bin/camera-streamer' does not exist! Build skipped ... [WARN] Do you want to add 'update manager' entry to your moonraker.conf? [Y/n]: Y Trying to add 'update manager' entry to moonraker.conf ... Adding Crowsnest Update Manager entry to moonraker.conf ... [OK] Installation successful. Reboot your machine for the changes to take effect! Reboot NOW? [y/N]: N Not to reboot may cause issues! Reboot as soon as possible! Goodbye ... Crowsnest installé NOTE IMPORTANTE Un redémarrage du système sera nécessaire pour prendre pleinement en compte cette installation de Crowsnest GCODE SHELL COMMAND Permet d'étendre les fonctionnalités des macros G-code en utilisant des scripts shell. Choix (4) du menu principal puis dans le nouveau menu choix (8) Citation /=======================================================\ | ~~~~~~~~~~~~~~~~~ [ KIAUH ] ~~~~~~~~~~~~~~~~~ | | Klipper Installation And Update Helper | | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | \=======================================================/ /=======================================================\ | You are about to install the 'G-Code Shell Command' | | extension. Please make sure to read the instructions | | before you continue and remember that potential risks | | can be involved after installing this extension! | | | | You accept that you are doing this on your own risk! | \=======================================================/ ###### Do you want to continue? (Y/n): [➔] Yes ###### Installing gcode shell command extension ... ###### Stop klipper.service ... [✓ OK] Stop klipper.service successfull! ###### Copy 'gcode_shell_command.py' to '/home/mks/klipper/klippy/extras' ... [✓ OK] Done! ###### Create an example shell command? (Y/n): [➔] Yes ###### Timestamp: 240501-1727 ###### Create backup of /home/mks/printer_data/config ... [✓ OK] Backup created in: /home/mks/kiauh-backups/configs/240501-1727/printer_data ###### Copy shell_command.cfg to /home/mks/printer_data/config ... [✓ OK] /home/mks/printer_data/config/shell_command.cfg created! ###### Restart klipper.service ... [✓ OK] Restart klipper.service successfull! #=======================================================# Shell command extension installed! #=======================================================# A la fin de ces installations, l'écosystème Klipper est prêt. Mon eMMC de 8Go est occupée à plus de 60%, il reste encore plus de 2.5Go disponibles (avec le système originel, on disposait de moins de 1Go). NOTE IMPORTANTE Le menu principal affiche ce qui a été installé, le choix (2) permet de vérifier les versions des composants que l'on pourra mettre à jour si besoin Les premières tentatives d'accès que ce soit avec Fluidd ou Mainsail affichent des messages d'erreurs Mainsail Fluidd Le fichier de configuration, printer.cfg installé par Klipper est minimaliste, vous devez le remplacer par le fichier printer.cfg que vous avez sauvegarder avant toute cette installation avec Fluidd ou Mainsail, vous devez également ajouter ces 2 fichiers : MKS_THR.cfg et include MCU_ID.cfg Après enregistrement et redémarrage les erreurs sont plus précises, vous avez : Là il vous indique tout simplement qu'avec la dernière version de Klipper v0.12 les firmware ne sont pas à jour --------------------------------------------------------------- Mainsail (et Fluidd) possède une bonne documentation. Ce lien (Mainsail) explique la raison de ce message d'erreur «MCU protocol error»: De temps en temps, des changements sont réalisés dans la communication Klipper entre l'hôte et le MCU. Cela nécessite de mettre à jour tous vos MCU pour corriger l'erreur de communication. --------------------------------------------------------------- Le firmware Klipper n'est à jour sur aucun des MCUs utilisés. Le dépôt Klipper a installé une version 0.12.x alors que les firmwares Klipper flashés sur les MCUs sont en version 0.10.x (version utilisée par Two Trees). Il reste à installer le firmware Klipper sur les MCU (Micro Controler Unit) de l'imprimante : carte contrôleur (STM32F402) la carte MKS-THR de la tête (RP2040) le Linux MCU (nommé fréquemment «rpi») Modifié (le) Juillet 26 par pascal_lb 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Juillet 24 Auteur Partager Posté(e) Juillet 24 (modifié) RAPPEL La carte mère «tout-en-un» s'occupe à la fois du fonctionnement de Klipper (klippy) via le système d'exploitation et de la gestion matérielle (voir ce sujet pour plus d'explications si besoin) via les firmwares installés sur chaque MCU. Les deux unités ci-dessous communiquent via une liaison série directement câblée. une unité de calcul (SBC) une unité de contrôle (MCU) Jusqu'à maintenant, on s'est occupé de la partie «unité de calculs» installée sur le système d'exploitation, il reste la partie MCU à mettre en place. FIRMWARE KLIPPER FIRMWARE, GÉNÉRALITÉS Pour chacun des contrôleurs (MCU): principal secondaire (la tête «MKS-THR») Linux les étapes à suivre sont quasi identiques: se placer dans le répertoire Klipper du dossier personnel de l'utilisateur «mks»: cd ~/klipper ou cd /home/mks/klipper ou si on est déjà dans le dossier perso cd klipper ou cd ./klipper configurer le firmware: make menuconfig dans la fenêtre de configuration, sélectionner les paramètres adéquats (dépend de chaque MCU) sauvegarder cette configuration préparer la compilation: make clean compiler: make (le microcontrôleur RK3328 possédant plusieurs cœurs, utiliser une compilation parallèle à l'aide de make -j4) à l'issue de la compilation, récupérer le firmware dans le dossier out (~/klipper/out/). Le nom du fichier compilé dépend des directives de compilation ( klipper.bin / klipper.uf2 / klipper.elf ) flasher ce firmware sur le MCU ( la méthode dépend du MCU à flasher ) Connaissant le principe, on va pouvoir entrer dans les détails. PRÉREQUIS Quelques outils sont nécessaires: clés Allen Fer à souder maxi 30w Etain avec âme décapante Cable USB / carte μSD, clé USB ou adaptateur USB/μSD logiciels: pour l'accès distant (SSH) pour le transfert de fichiers entre matériels en réseau PRÉPARATION MATÉRIELLE Imprimante éteinte accéder au dessous de l'imprimante pour retirer les vis du capot renfermant l'électronique retirer ce capot Mettre sous tension l'Imprimante accéder à l'aide d'un client SSH à l'imprimante via son adresse IP se connecter en utilisateur mks (mot de passe par défaut si inchangé: makerbase) se déplacer dans le dossier klipper cd klipper vérifier que l'on est dans le dossier correct pwd MCU PRINCIPAL Configurer le firmware Klipper Connecté en ssh, lancer la suite de commandes: cd ~/klipper make clean make menuconfig Le menu de configuration du firmware apparait, choisir les options : cocher «Enable extra low-level» STMicroelectronic STM32 comme famille de contrôleur Processor model (STM32F401) (le STM32F402 de la carte en est un ) Bootloader offset (32 Kio bootloader) Communication interface (USB (on PA11/PA12) Au final, la configuration complète doit être comme ci-dessous : une fois ces options sélectionnées, presser Q pour sortir de ce menu, valider par Y pour sauvegarder la configuration Compiler compiler le firmware (utiliser une compilation parallèle à l'aide de plusieurs cœurs du contrôleur RK3328 => paramètre -j4) make -j4 attendre que le processus se termine Le firmware compilé se trouve dans le dossier ~/klipper/out et porte le nom klipper.bin Flasher le firmware Le processus de flashage utilise une carte μSD (formatée FAT32 d'une capacité de moins de 32 Go) introduite dans le lecteur de carte μSD situé sur la carte mère Important Pour que le flashage réussisse, le fichier klipper.bin doit porter un nom précis : mks_skipr_mini.bin Important Reste à récupérer ce fichier, le renommer puis le copier à la racine de la carte μSD Récupérer (télécharger) le firmware Plusieurs méthodes permettent de le faire : le copier dans le répertoire de configuration de Klipper (~/printer_data/config) c'est la méthode que j'ai utilisé cp ~/klipper/out/klipper.bin ~/printer_data/config/mks_skipr_mini.bin Le récupérer ensuite en utilisant Fluidd (clic droit sur le fichier, télécharger) le mettre à disposition sur le réseau local via Python qui possède un serveur web python3 -m http.server -d "/home/mks/klipper/out" 8888 Une fois le serveur lancé sur le port utilisé dans la commande précédente (8888): - via un navigateur, accéder à l'adresse http://adresse-ip-imprimante:8888 - récupérer le fichier klipper.bin - le renommer en mks_skipr_mini.bin - le copier sur la carte μSD - CTRL + C pour interrompre et quitter le serveur Web Si Samba a été ajouté au système, on peut accéder au répertoire personnel de l'utilisateur «mks» à partir de l'explorateur de fichiers Si l'automontage de périphériques de stockage a été installé sur le système, utiliser une clé USB adaptateur SD après l'avoir insérée : cp ~/klipper/out/klipper.bin ~/printer_data/gcodes/USB/mks_skipr_mini.bin Procéder au flashage une fois le fichier mks_skipr_mini.bin recopié à la racine de la carte μSD: introduire celle-ci dans le lecteur de carte allumer l'imprimante (si elle était allumée, l'éteindre et patienter au moins 30 secondes, le temps que le supercondensateur se décharge, allumer alors) Patienter (très peu de temps), le temps que le processus de flashage se termine Modifié (le) Juillet 27 par pascal_lb Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Juillet 27 Auteur Partager Posté(e) Juillet 27 (modifié) MCU Linux (contrôleur de la carte X-4 / X-6, Rockchip RK3328) Source Les microcontrôleurs dédiés au contrôle des imprimantes 3D disposent d'un nombre limité et pré-configuré de broches gérant les principales fonctions d'impression (thermistances, extrudeurs, pilotes moteurs, …). L'utilisation du contrôleur, ici le Rockchip RK3328 où Klipper est installé, en tant que MCU secondaire donne la possibilité d'utiliser directement les GPIO et les bus (i2c, spi) du contrôleur directement via Klipper Installer le script RC Une étape préliminaire est nécessaire: pour utiliser l'hôte comme MCU secondaire, un daemon système (klipper_mcu) doit être installé. Son démarrage devra se faire avant celui de Klipper cd ~/klipper/ sudo cp ./scripts/klipper-mcu.service /etc/systemd/system/ sudo systemctl enable klipper-mcu.service Configurer Klipper cd ~/klipper/ make menuconfig Le menu de configuration du firmware apparait, choisir les options : cocher «Enable extra low-level» Linux process comme contrôleur au final : une fois ces options sélectionnées, presser Q pour sortir de ce menu, valider par Y pour sauvegarder la configuration Flasher compiler et installer le nouveau code du microcontrôleur sudo systemctl stop klipper make flash sudo systemctl start klipper pour utiliser ce «MCU», il faut ajouter au fichier printer.cfg la section suivante : [mcu host] serial: /tmp/klipper_host_mcu Modifié (le) Juillet 27 par pascal_lb Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Juillet 27 Auteur Partager Posté(e) Juillet 27 (modifié) MCU tête (carte THR contrôleur RP2040) C'est maintenant qu'il va falloir faire un peu de soudure Il faut préparer un cable USB et lui mettre une prise JST-XH 2.54 femelle (4 broches), personnellement j'ai récupéré un morceau de câble avec la prise sur un ancien câble moteur Bien respecter les couleurs (droite sur la photo c'est le câble blanc à l'aide d'un petit tournevis cruciforme, retirer les quatre vis de fixation du capot arrière de la tête pour pouvoir accéder à la carte fille «MKS-THR» dévisser la vis qui maintient la chaine câble au dessus de la tête retirer le passe fils en haut et à l'arrière de la tête (2 vis cruciforme) débrancher la grosse prise noire à 4 fils sur le haut de la carte THR Crédit photo Tom's Basement dévisser les 4 vis de maintient de la carte fille, vous pouvez maintenant basculer la carte, attention la carte peut être collé... Sur la carte THR il faut soudeur une prise JST-XH 2.54 male (4 broches) Crédit photo Tom's Basement Sur le dos de la carte, en bas à droite on peut voir la prise soudé ainsi que le sens du branchement fil rouge => 5v fil noir => G fil vert => D+ fil blanc => D- Vous pouvez maintenant refixer la carte avec les 4 vis cruciformes, mais ne remontez pas le capot arrière Préparer le firmware Connecté en ssh, lancer la suite de commandes: cd ~/klipper make clean make menuconfig Le menu de configuration du firmware apparait, choisir les options : cocher «Enable extra low-level» RP2040 comme contrôleur Pas de chargeur de démarrage UART0 on GPIO0/GPIO1 comme interface de communication ce qui donne comme configuration complète: une fois ces options sélectionnées, presser Q pour sortir de ce menu, valider par Y pour sauvegarder la configuration compiler le firmware 'make'. On peut profiter d'une compilation parallèle en utilisant plusieurs cœurs du contrôleur RK3328 avec un 'make -j4' attendre que le processus se termine Le firmware a été compilé et se trouve dans le dossier ~/klipper/out et porte le nom klipper.uf2 Flasher le firmware Pour flasher ce firmware, le contrôleur RP2040 doit passer en mode émulation du stockage (BOOTSEL mode). Maintenant il faut dans l'ordre : éteindre l'imprimante Débrancher le câble avec la prise noire en haut de la carte THR brancher le câble USB brancher la prise JST-XH appuyer sur le bouton Boot (bouton juste au dessus de la prise que vous avez soudée) mettre en route la machine (maintenir le bouton Boot appuyé pendant une trentaine de secondes pour donner le temps à la machine de démarrer) se connecter en SSH et faire make flash FLASH_DEVICE=2e8a:0003 Vous devriez avoir : Citation mks@mkspi:~/klipper$ make flash FLASH_DEVICE=2e8a:0003 Building rp2040_flash gcc -c -Wall -ggdb -I../rp2040/ `pkg-config libusb-1.0 --cflags` main.c -o main.o gcc -c -Wall -ggdb -I../rp2040/ `pkg-config libusb-1.0 --cflags` picoboot_connection.c -o picoboot_connection.o gcc main.o picoboot_connection.o `pkg-config libusb-1.0 --libs` -o rp2040_flash Flashing out/klipper.uf2 to 2e8a:0003 sudo lib/rp2040_flash/rp2040_flash out/klipper.uf2 Loaded UF2 image with 131 pages Found rp2040 device on USB bus 2 address 2 Flashing... Resetting interface Locking Exiting XIP mode Erasing Flashing Rebooting device Le RP2040 de la carte THR a été flashé Vous prouvez maintenant : éteindre la machine débrancher le câble USB/JST-XH rebrancher le câble en haut de la carte THR avant de remettre le capot il est préférable de vérifier que tout fonctionne : allumer l'imprimante se connecter via fluidd ou mainsail Vous devriez avoir à peu près ces messages d'erreurs et ne plus avoir de message concernant la carte THR Fluidd / Mainsail sont plutôt explicites et donnent la solution il faut supprimer le "max_accel_to_decel" dans le printer.cfg c'est une option «dépréciée» qui à terme sera abandonnée modifier la section [virtual_sdcard] dans le printer.cfg en [virtual_sdcard] path: ~/printer_data/gcodes Ensuite après enregistrement et redémarrage vous ne devriez plus avoir d'erreur Arrivé à ce stade, votre SK1 est fonctionnel en la pilotant par fluidd ou mainsail via le port ethernet Quelques infos complémentaires pour prouver que l'on est bien sur la version d'Armbian Bookworm Modifié (le) Juillet 28 par pascal_lb Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Juillet 28 Auteur Partager Posté(e) Juillet 28 (modifié) Wifi Jusqu'à maintenant le wifi n'était pas opérationnel, voici la procédure pour l'ajouter : si vous avez remis la plaque du dessous de la SK1, il va falloir la démonter pour accéder à l'électronique retirer l'eMMC et branchez le sur l'adaptateur eMMC/USB et branchez le sur votre PC fermer toutes les fenêtres vous demandant de formater le lecteur dans l'explorateur windows vous avez accès à la partition /boot (qui est en fat32) rendez vous dans le répertoire /boot/dtb/rockchip/ recherchez le fichier rk3328-roc-cc.dtb et renommez le par exemple en rk3328-roc-cc.dtb.bookworm maintenant vous allez prendre ce fichier rk3328-roc-cc.dtb.txt le renommer en rk3328-roc-cc.dtb (j'ai juste mis l'extension .txt pour pouvoir l'ajouter sur ce forum) copier le dans le répertoire /boot/dtb/rockchip/ vous allez maintenant pouvoir remettre l'eMMC sur votre Sk1 et la redémarrer Il va falloir maintenant l'activer connectez vous en SSH sudo iwconfig le retour va vous donner ça sudo iwconfig [sudo] Mot de passe de mks : lo no wireless extensions. eth0 no wireless extensions. wlan0 IEEE 802.11 ESSID:off/any Mode:Managed Access Point: Not-Associated Tx-Power=31 dBm Retry short limit:7 RTS thr:off Fragment thr:off Encryption key:off Power Management:off ouvrez l'utilitaire réseau nmtui sudo nmtui allez à Modifier une connexion <Ajouter>, vous entrez le nom du profil et le périphérique comme indiquer ci-dessous et vous <validez> ça devient comme ça : et une fois enregistré c'est le système qui demande directement les SSID et mot de passe Vous <validez> et vous redémarrez votre SK1 Pour vérifier, et pour connaitre votre adresse IP wifi (wlan0) ouvrez Fluidd et allez dans Information système Au passage vous voyez que le système n'occupe que 5.1 Go Voilà c'est terminé, vous avez maintenant un système récent qui peut être mis à jour via Fluidd ou Mainsail Votre Two Trees SK1 est totalement opérationnelle Concernant l'écran celui d'origine comme annoncé au début de ce tuto ne fonctionnera pas, je reviendrai compléter ce tuto avec une solution qu'a donné @fran6p (mon maitre, mon prof ) pour sa Qidi x-max3 Pour ma part, j'attend l'arrivée d'un écran BIGTREETECH K-Touch et je ne manquerai pas de vous faire un retour. Modifié (le) Aout 28 par pascal_lb Lien vers le commentaire Partager sur d’autres sites More sharing options...
fran6p Posté(e) Juillet 29 Partager Posté(e) Juillet 29 Beau boulot Et une nouvelle imprimante libérée de ses chaines 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Aout 2 Auteur Partager Posté(e) Aout 2 (modifié) Voilà j'ai reçu et installé l'écran BIGTREETECH K-Touch Si vous souhaitez un écran ayant à peu près les mêmes fonctionnalités que l'écran d'origine de la SK1 le K-Touch fera le job. Très facile d'installation, le K-Touch se connectera via Wifi => Wifi ou Ethernet de votre imprimante J'ai créé un support pour l'installer sur la SK1 support_ecran_ktouch_v2.stl il vous faudra 2 vis M3x12 et 2 vis M3x8 et 2 écrous M3 Modifié (le) Aout 12 par pascal_lb 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Aout 13 Auteur Partager Posté(e) Aout 13 (modifié) ÉCRAN TACTILE Nous l'avons vu plus haut, on ne peut pas garder l'écran d'origine de la Two Trees SK1, l'écran BIGTREETECH K-Touch est une option mais ne correspond pas à mes attentes, j'ai donc décidé de me tourner vers la solution que propose notre ami @fran6p pour sa Qidi X-max3 Matériels nécessaires un écran tactile, par exemple celui-ci de Bigtreetech ( BTT HDMI 5" , manuel ) un SBC, par exemple un Raspberry Pi 0 v2 ou ce kit avec câblage et radiateur un câble HDMI avec les bons connecteurs ou pour le côté RPi0v2 un adaptateur HDMI femelle vers HDMI mini mâle un câble USB pour la gestion du tactile une alimentation 5V 3A, elle servira à alimenter la carte PI et l'écran, j'ai utilisé un chargeur de téléphone Xiaomi une carte μSD (8 Go ou plus) Logiciel nécessaire Raspberry Pi Imager Installation du système Raspberry Pi OS Prendre la la carte μSD et la brancher sur votre ordinateur lancer le logiciel Raspberry Pi Imager dans model de Raspberry Pi on sélectionne le type de carte, dans mon cas Raspberry Pi Zero 2W dans système d'exploitation on sélectionne Raspberry Pi OS (other) => Raspberry Pi OS lite, Bookworm, 64 bits dans stockage on sélectionne la carte μSD après avoir cliqué sur suivant vous avez cet écran Modifier réglages Remplir cette fenêtre avec les mêmes paramètres que ci-dessus (pour peu que vous habitiez en France et que votre langue soit le français , utilisateur «mks» avec son mot de passe «makerbase» et en dessous les paramètres de votre réseau wifi, enregistrer, cliquer sur oui, encore une fois sur oui et maintenant l'écriture de votre OS commence. Une fois l'installation et la vérification terminée, en fonction de l'écran HDMI, utilisé, il faut réaliser quelques ajustements dans le fichier config.txt (/bootfs/config.txt). Le dossier /bootfs est sur une partition en FAT32, avec l'explorateur Windows on peut donc y accéder pour éditer ce fichier. Pour mon écran, voici les lignes que j'ai ajoutées en fin de fichier (si vous utilisez un autre écran, veuillez consulter le site web du fabricant) : # BTT HDMI5 hdmi_group=2 hdmi_mode=87 hdmi_cvt 800 480 60 6 0 0 0 hdmi_drive=2 Enregistrer ces modifications, éjecter proprement la carte SD démarrer le Raspberry Pi 0v2 avec la carte μSD sur laquelle l'OS a été installé récupérer par tout moyen approprié l'adresse IP du RPi0v2 et s'y connecter en ssh avec par exemple Putty (vous connaissez la procédure) faire les mises à jour sudo apt update && sudo apt upgrade -y installer git (normalement déjà présent mais ça ne peut pas faire de mal) $ sudo apt install git -y comme on n'installe pas Klipper, créer les dossiers printer_data/config et printer_data/logs mkdir -p ~/printer_data/config ~/printer_data/logs cloner le dépôt KIAUH git clone https://github.com/dw-0/kiauh lancer KIAUH ./kiauh/kiauh.sh dans KIAUH, installer KlipperScreen : choix 1 [Install] puis 5 [KlipperScreen] quitter KIAUH créer le fichier de configuration KlipperScreen.conf ( K et S en majuscules ) cd printer_data/config nano KlipperScreen.conf ajouter ces lignes de configuration, quitter nano en enregistrant ces modifications) Le fichier KlipperScreen.conf : [main] [printer Nom-de-l-imprimante-a-afficher] moonraker_host: IP-de-l-imprimante moonraker_port: 7125 … Ce qui donne par exemple chez moi : [main] [printer SK1] moonraker_host: 192.168.0.40 moonraker_port: 7125 redémarrer le RPi sudo shutdown -r now (ou sudo reboot) Si vous avez tout branché, à l'issue du redémarrage, si tout s'est bien passé, l'écran de Klipperscreen s'affiche... Modifié (le) Aout 16 par pascal_lb 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Aout 16 Auteur Partager Posté(e) Aout 16 (modifié) Voilà l'écran fonctionne très bien, pas de latence bien que les commandes passent par le wifi, certaines macros devront être adaptées pour qu'elles fonctionnent avec l'écran. J'ai modifié un support pour l'adapter à la SK1, l'écran BTT HDMI 5" V1.2 a les prises USB et HDMI derrière la carte et ça prend beaucoup de place Certains diront que la vitre de la porte est sale... Et bien oui je n'ai pas encore donné un coup de propre Modifié (le) Aout 16 par pascal_lb 2 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Aout 16 Auteur Partager Posté(e) Aout 16 (modifié) Voici les fichiers STL du support d'écran BTT HDMI 5" v1.2, c'est une version modifié du model "Creality K1 BTT HDMI 5 v1.2 Mount" ecran bbt hdmi 5-devant.stlecran bbt hdmi 5-fond.stlecran bbt hdmi 5-piece_1.stlecran bbt hdmi 5-piece_2.stl Modifié (le) Aout 16 par pascal_lb 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Aout 19 Auteur Partager Posté(e) Aout 19 (modifié) Maintenant que vous avez tout installé, une petite astuce pour avoir comme sur cette image les températures du processeur Rockchip, du RP2040 et du STM32 Dans le fichier printer.cfg ajouter le code ci dessous ################################################# # Temperature settings # ################################################# # Affichage températures du processeur et du contrôleur # dans l'interface Fluidd [temperature_sensor Rockchip] # RK3328 sensor_type: rpi_temperature sensor_type: temperature_host min_temp: 5 max_temp: 80 #[temperature_sensor mcu_temp] #STM32F401 [temperature_sensor STM32] sensor_type: temperature_mcu [temperature_sensor RP2040] # RP2040 sensor_type: temperature_mcu sensor_mcu: MKS_THR min_temp: 0 max_temp: 80 Enregistrer, redémarrer et le tour est joué Pas de panique si vous voyez la température du processeur Rockchip monter à 50/55° c'est normal Modifié (le) Aout 19 par pascal_lb 1 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Aout 19 Auteur Partager Posté(e) Aout 19 (modifié) Une deuxième astuce, si vous avez le kit enclosure pour la Two Tree SK1 avec le ventilateur additionnel et le ventilateur de filtration et que vous utilisez OrcaSlicer il y a une modification à faire pour que ces ventilateurs soient pris en compte Attention si vous avez l'OS de la machine et l'écran d'origine, ne pas faire ces modifications sous peine de ne plus pouvoir commander les ventilateurs via l'écran Dans le fichier printer.cfg vous allez devoir remplacer ces lignes : #[fan] #pin: MKS_THR:gpio3 #[fan_generic Side_fan] #pin: PC9 #[fan_generic Filter_fan] #pin: PC12 par ces lignes (source OrcaSlicer) : # instead of using [fan], we define the default part cooling fan with [fan_generic] here # this is the default part cooling fan [fan_generic fan0] pin: MKS_THR:gpio3 cycle_time: 0.01 hardware_pwm: false # this is the auxiliary fan # comment out it if you don't have auxiliary fan [fan_generic fan2] pin: PC9 cycle_time: 0.01 hardware_pwm: false # this is the exhaust fan # comment out it if you don't have exhaust fan [fan_generic fan3] pin: PC12 cycle_time: 0.01 hardware_pwm: false [gcode_macro M106] gcode: {% set fan = 'fan' + (params.P|int if params.P is defined else 0)|string %} {% set speed = (params.S|float / 255 if params.S is defined else 1.0) %} SET_FAN_SPEED FAN={fan} SPEED={speed} Vous devrez ensuite activer ces ventilateurs dans ce slicer Le ventilateur additionnel ou auxiliaire dans paramètres de l'imprimante : Dans réglages du filament => refroidissement (vous devez le mettre à 100% sinon il ne tournera pas) : Pour le ventilateur de filtration ou d'extraction dans Réglages filament => refroidissement : Modifié (le) Aout 19 par pascal_lb 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Aout 22 Auteur Partager Posté(e) Aout 22 (modifié) Si comme moi vous êtes passé sous Bookworm, un écran tactile connecté via un Pi zéro et Klipperscreen vous allez vous apercevoir que certaines fonctionnalités ne fonctionnent plus avec ce nouvel écran, par exemple le chargement et le déchargement du filament... En effet dans votre fichier printer.cfg la macro originale pour les chargements se nomme "LOAD_MATERIAL" hors pour que cela fonctionne avec le nouvel écran elle doit se nommer "LOAD_FILAMENT" et de manière identique la macro de déchargement se nomme "UNLOAD_MATERIAL" et doit se nommer maintenant "UNLOAD_FILAMENT" Comme d'autres macros appellent ces macros de chargement et de déchargement, j'ai du faire des modifications dans ces autres macros, j'ai fait également quelques modifs pour que par exemple le système vous demande un préchauffage avant un chargement ou un déchargement. Remplacer la macro PAUSE : [gcode_macro PAUSE] rename_existing: BASE_PAUSE variable_pause_detected: 0 gcode: {% if pause_detected == 0 %} M400 {% set current_temp = printer.extruder.temperature %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=resume_temperature VALUE={current_temp} SET_GCODE_VARIABLE MACRO=LOAD_MATERIAL VARIABLE=saved_temperature VALUE={current_temp} SET_GCODE_VARIABLE MACRO=UNLOAD_MATERIAL VARIABLE=unsaved_temperature VALUE={current_temp} {% set current_bed = printer["heater_bed"].temperature %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=resume_bed VALUE={current_bed} {% set z = params.Z|default(10)|int %} {% set e = params.E|default(2.5) %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=zhop VALUE={z} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=etemp VALUE={printer['extruder'].target} SAVE_GCODE_STATE NAME=PAUSE M25 {% if (printer.gcode_move.position.z + z) < printer.toolhead.axis_maximum.z %} G91 M83 G1 E-{e} F2100 G1 Z{z} F900 {% else %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=zhop VALUE=0 {% endif %} SAVE_GCODE_STATE NAME=PAUSEPARK G90 G1 X10 Y220 F6000 G1 E{e} F2100 SET_IDLE_TIMEOUT TIMEOUT=43200 SET_GCODE_VARIABLE MACRO=PAUSE VARIABLE=pause_detected VALUE=1 SET_GCODE_VARIABLE MACRO=LOAD_MATERIAL VARIABLE=load_detected VALUE=1 SET_GCODE_VARIABLE MACRO=UNLOAD_MATERIAL VARIABLE=unload_detected VALUE=1 {% endif %} par : [gcode_macro PAUSE] rename_existing: BASE_PAUSE variable_pause_detected: 0 gcode: {% if pause_detected == 0 %} M400 {% set current_temp = printer.extruder.temperature %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=resume_temperature VALUE={current_temp} SET_GCODE_VARIABLE MACRO=LOAD_FILAMENT VARIABLE=saved_temperature VALUE={current_temp} SET_GCODE_VARIABLE MACRO=UNLOAD_FILAMENT VARIABLE=unsaved_temperature VALUE={current_temp} {% set current_bed = printer["heater_bed"].temperature %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=resume_bed VALUE={current_bed} {% set z = params.Z|default(10)|int %} {% set e = params.E|default(2.5) %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=zhop VALUE={z} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=etemp VALUE={printer['extruder'].target} SAVE_GCODE_STATE NAME=PAUSE M25 {% if (printer.gcode_move.position.z + z) < printer.toolhead.axis_maximum.z %} G91 M83 G1 E-{e} F2100 G1 Z{z} F900 {% else %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=zhop VALUE=0 {% endif %} SAVE_GCODE_STATE NAME=PAUSEPARK G90 G1 X10 Y220 F6000 G1 E{e} F2100 SET_IDLE_TIMEOUT TIMEOUT=43200 SET_GCODE_VARIABLE MACRO=PAUSE VARIABLE=pause_detected VALUE=1 SET_GCODE_VARIABLE MACRO=LOAD_FILAMENT VARIABLE=load_detected VALUE=1 SET_GCODE_VARIABLE MACRO=UNLOAD_FILAMENT VARIABLE=unload_detected VALUE=1 {% endif %} Remplacer la macro CANCEL_PRINT : [gcode_macro CANCEL_PRINT] variable_runout_detected: 0 rename_existing: BASE_CANCEL_PRINT gcode: SET_IDLE_TIMEOUT TIMEOUT={printer.configfile.settings.idle_timeout.timeout} SDCARD_RESET_FILE M400 ; wait for buffer to clear G92 E0 ; zero the extruder G1 E-1.0 F1200 ; retract filament TURN_OFF_HEATERS M107 ; turn off fan G28 X0 Y0 M84 SET_GCODE_VARIABLE MACRO=PAUSE VARIABLE=pause_detected VALUE=0 SET_GCODE_VARIABLE MACRO=LOAD_MATERIAL VARIABLE=load_detected VALUE=0 SET_GCODE_VARIABLE MACRO=UNLOAD_MATERIAL VARIABLE=unload_detected VALUE=0 Par : [gcode_macro CANCEL_PRINT] variable_runout_detected: 0 rename_existing: BASE_CANCEL_PRINT gcode: SET_IDLE_TIMEOUT TIMEOUT={printer.configfile.settings.idle_timeout.timeout} SDCARD_RESET_FILE M400 ; wait for buffer to clear G92 E0 ; zero the extruder G1 E-1.0 F1200 ; retract filament TURN_OFF_HEATERS M107 ; turn off fan G28 X0 Y0 M84 SET_GCODE_VARIABLE MACRO=PAUSE VARIABLE=pause_detected VALUE=0 SET_GCODE_VARIABLE MACRO=LOAD_FILAMENT VARIABLE=load_detected VALUE=0 SET_GCODE_VARIABLE MACRO=UNLOAD_FILAMENT VARIABLE=unload_detected VALUE=0 Remplacer la macro END_PRINT : [gcode_macro END_PRINT] gcode: G4 P10000 Side_fan_Off Filter_fan_Off SET_GCODE_VARIABLE MACRO=PAUSE VARIABLE=pause_detected VALUE=0 SET_GCODE_VARIABLE MACRO=LOAD_MATERIAL VARIABLE=load_detected VALUE=0 SET_GCODE_VARIABLE MACRO=UNLOAD_MATERIAL VARIABLE=unload_detected VALUE=0 Par : [gcode_macro END_PRINT] gcode: G4 P10000 Side_fan_Off Filter_fan_Off SET_GCODE_VARIABLE MACRO=PAUSE VARIABLE=pause_detected VALUE=0 SET_GCODE_VARIABLE MACRO=LOAD_FILAMENT VARIABLE=load_detected VALUE=0 SET_GCODE_VARIABLE MACRO=UNLOAD_FILAMENT VARIABLE=unload_detected VALUE=0 Remplacer la macro LOAD_MATERIAL : [gcode_macro LOAD_MATERIAL] variable_load_detected: 0 variable_saved_temperature: 240 gcode: SET_GCODE_VARIABLE MACRO=INSERT_FILA VARIABLE=insert_watchdog VALUE=1 SET_GCODE_VARIABLE MACRO=RUNOUT_FILA VARIABLE=runout_watchdog VALUE=1 SAVE_GCODE_STATE NAME=recovery_state G92 E0 PUSH {% if load_detected == 1 %} M104 S{saved_temperature} {% else %} M104 S0 {% endif %} RESTORE_GCODE_STATE NAME=recovery_state SET_GCODE_VARIABLE MACRO=INSERT_FILA VARIABLE=insert_watchdog VALUE=0 SET_GCODE_VARIABLE MACRO=RUNOUT_FILA VARIABLE=runout_watchdog VALUE=0 Par la macro LOAD_FILAMENT : [gcode_macro LOAD_FILAMENT] variable_load_detected: 0 variable_saved_temperature: 240 gcode: {% if printer.extruder.temperature < 180 %} RESPOND TYPE=error MSG='{"Load filament aborted !!! %s° not hot enough, please heat more than 180°" % printer.extruder.temperature}' {% else %} SET_GCODE_VARIABLE MACRO=INSERT_FILA VARIABLE=insert_watchdog VALUE=1 SET_GCODE_VARIABLE MACRO=RUNOUT_FILA VARIABLE=runout_watchdog VALUE=1 SAVE_GCODE_STATE NAME=recovery_state G92 E0 PUSH {% if load_detected == 1 %} M104 S{saved_temperature} {% else %} M104 S0 {% endif %} RESTORE_GCODE_STATE NAME=recovery_state SET_GCODE_VARIABLE MACRO=INSERT_FILA VARIABLE=insert_watchdog VALUE=0 SET_GCODE_VARIABLE MACRO=RUNOUT_FILA VARIABLE=runout_watchdog VALUE=0 {% endif %} Remplacer la macro UNLOAD_MATERIAL : [gcode_macro UNLOAD_MATERIAL] variable_unload_detected: 0 variable_unsaved_temperature: 240 gcode: SET_GCODE_VARIABLE MACRO=INSERT_FILA VARIABLE=insert_watchdog VALUE=1 SET_GCODE_VARIABLE MACRO=RUNOUT_FILA VARIABLE=runout_watchdog VALUE=1 SAVE_GCODE_STATE NAME=recovery_state G92 E0 M109 S220 M400 M83 G1 E100 F300 INVERT G4 P20000 INVERT M83 G1 E-30 F30 M83 G1 E-20 F1800 M83 G1 E-30 F300 M400 {% if unload_detected == 1 %} M104 S{unsaved_temperature} {% else %} M104 S0 {% endif %} RESTORE_GCODE_STATE NAME=recovery_state SET_GCODE_VARIABLE MACRO=INSERT_FILA VARIABLE=insert_watchdog VALUE=0 SET_GCODE_VARIABLE MACRO=RUNOUT_FILA VARIABLE=runout_watchdog VALUE=0 Par la macro UNLOAD_FILAMENT : [gcode_macro UNLOAD_FILAMENT] variable_unload_detected: 0 variable_unsaved_temperature: 240 gcode: {% if printer.extruder.temperature < 180 %} RESPOND TYPE=error MSG='{"Load filament aborted !!! %s° not hot enough, please heat more than 180°" % printer.extruder.temperature}' {% else %} SET_GCODE_VARIABLE MACRO=INSERT_FILA VARIABLE=insert_watchdog VALUE=1 SET_GCODE_VARIABLE MACRO=RUNOUT_FILA VARIABLE=runout_watchdog VALUE=1 SAVE_GCODE_STATE NAME=recovery_state G92 E0 M109 S220 M400 M83 G1 E100 F300 INVERT G4 P20000 INVERT M83 G1 E-30 F30 M83 G1 E-20 F1800 M83 G1 E-30 F300 M400 {% if unload_detected == 1 %} M104 S{unsaved_temperature} {% else %} M104 S0 {% endif %} RESTORE_GCODE_STATE NAME=recovery_state SET_GCODE_VARIABLE MACRO=INSERT_FILA VARIABLE=insert_watchdog VALUE=0 SET_GCODE_VARIABLE MACRO=RUNOUT_FILA VARIABLE=runout_watchdog VALUE=0 {% endif %} Remplacer la macro RUNOUT_FILA : [gcode_macro RUNOUT_FILA] variable_runout_watchdog: 0 gcode: SET_GCODE_VARIABLE MACRO=PAUSE VARIABLE=pause_detected VALUE=1 SET_GCODE_VARIABLE MACRO=INSERT_BII VARIABLE=insert_flag VALUE=1 {% if printer["output_pin caselight"].value == 0 %} SET_PIN PIN=caselight VALUE=1 SET_GCODE_VARIABLE MACRO=INSERT_BII VARIABLE=insert_light VALUE=0 {% else %} SET_GCODE_VARIABLE MACRO=INSERT_BII VARIABLE=insert_light VALUE=1 {% endif %} {% if runout_watchdog == 0 %} SAVE_GCODE_STATE NAME=runout_state {% set current_temp = printer.extruder.temperature %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=resume_temperature VALUE={current_temp} SET_GCODE_VARIABLE MACRO=LOAD_MATERIAL VARIABLE=saved_temperature VALUE={current_temp} SET_GCODE_VARIABLE MACRO=UNLOAD_MATERIAL VARIABLE=unsaved_temperature VALUE={current_temp} SET_GCODE_VARIABLE MACRO=LOAD_MATERIAL VARIABLE=load_detected VALUE=1 SET_GCODE_VARIABLE MACRO=UNLOAD_MATERIAL VARIABLE=unload_detected VALUE=1 RESTORE_GCODE_STATE NAME=runout_state {% endif %} {% for i in range(4) %} #8 SET_PIN PIN=biii VALUE=1 G4 P300 SET_PIN PIN=biii VALUE=0 G4 P200 {% endfor %} SET_FILAMENT_SENSOR SENSOR=fila ENABLE=1 Par : [gcode_macro RUNOUT_FILA] variable_runout_watchdog: 0 gcode: SET_GCODE_VARIABLE MACRO=PAUSE VARIABLE=pause_detected VALUE=1 SET_GCODE_VARIABLE MACRO=INSERT_BII VARIABLE=insert_flag VALUE=1 {% if printer["output_pin caselight"].value == 0 %} SET_PIN PIN=caselight VALUE=1 SET_GCODE_VARIABLE MACRO=INSERT_BII VARIABLE=insert_light VALUE=0 {% else %} SET_GCODE_VARIABLE MACRO=INSERT_BII VARIABLE=insert_light VALUE=1 {% endif %} {% if runout_watchdog == 0 %} SAVE_GCODE_STATE NAME=runout_state {% set current_temp = printer.extruder.temperature %} SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=resume_temperature VALUE={current_temp} SET_GCODE_VARIABLE MACRO=LOAD_FILAMENT VARIABLE=saved_temperature VALUE={current_temp} SET_GCODE_VARIABLE MACRO=UNLOAD_FILAMENT VARIABLE=unsaved_temperature VALUE={current_temp} SET_GCODE_VARIABLE MACRO=LOAD_FILAMENT VARIABLE=load_detected VALUE=1 SET_GCODE_VARIABLE MACRO=UNLOAD_FILAMENT VARIABLE=unload_detected VALUE=1 RESTORE_GCODE_STATE NAME=runout_state {% endif %} {% for i in range(4) %} #8 SET_PIN PIN=biii VALUE=1 G4 P300 SET_PIN PIN=biii VALUE=0 G4 P200 {% endfor %} SET_FILAMENT_SENSOR SENSOR=fila ENABLE=1 Voilà ce fut long mais c'est fini Si vous avez des questions ou remarques sur ce tuto, merci d'ouvrir un autre sujet en spécifiant que c'est pour la version Bookworm pour SK1 Modifié (le) Aout 28 par pascal_lb 2 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
PPAC Posté(e) Aout 25 Partager Posté(e) Aout 25 Il n'y a pas de notion d'alias pour les macros ? ou l'équivalent de faire une macro B qui appel juste une macro A pour faire des alias d'une même fonction ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
pascal_lb Posté(e) Aout 26 Auteur Partager Posté(e) Aout 26 On pourrait effectivement mais TT dans un soucis de transparence mettait dans le printer.cfg des macros qui n'étaient pas complètes par rapport au macros qui étaient dans l'écran, exemple dans LOAD_FILAMENT le contrôle de la température fonctionnait avec l'écran mais n'y ai pas dans le printer.cfg 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
fran6p Posté(e) Aout 26 Partager Posté(e) Aout 26 Citation l n'y a pas de notion d'alias pour les macros ? Si ça existe mais ça ne fonctionnera pas toujours Il suffit de créer une macro avec un nom différent. Exemple avec PRINT_START qu'on trouve parfois sous la dénomination START_PRINT. Si on a déjà la macro PRINT_START, on peut en faire un alias nommé START_PRINT : [Gcode_macro START_PRINT] description: alias de PRINT_START gcode: PRINT_START {rawparams} Je n'ai rien inventé Les guides de Zippy sont une bonne lecture. 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant