Aller au contenu

Messages recommandés

Posté(e) (modifié)

Ce sujet regroupe les discutions que nous avons eu pour passer la Two Trees SK1 sous Armbian Bookworm (Linux kernel : 6.6.x) et installer les dernières versions de Klipper et Moonraker.

Un tuto très complet est disponible ici https://www.lesimprimantes3d.fr/forum/topic/59184-passer-la-two-trees-sk1-sous-armbian-bookworm-linux-kernel-66x-et-installer-les-dernières-versions-de-klipper-et-moonraker/

 

Nous savons que Two Trees fournis avec sa SK1 une version de son système modifié ne permettant pas de faire directement les mises à jour de Klipper et de Moonraker, Tom's Basement propose sur son GitHub des modifications permettant ces mises à jour vers les dernières versions, il précise que "il faut tout de même que vous ayez les compétences requises en Klipper et nécessite quelques compétences en soudure" mais personnellement avec ses instructions je pense qu'il n'y a rien d'insurmontable.

Je pense que je vais tenter l'expérience prochainement, par contre il n'est pas spécifié si c'est réversible...

Après j'ai du mal à apprécier les plus de cette manipulation...

Si vous avez des idées à ce sujet 🤔 vous avez toute mon attention 😉 

Modifié (le) par pascal_lb
Posté(e)
il y a 16 minutes, pascal_lb a dit :

Après j'ai du mal à apprécier les plus de cette manipulation...

Bonjour,

Je ne connais pas du tout cette machine mais comme toutes les bécanes qui tournent sous klipper il y a une mise à jour qui peut être "délicate".

En effet lorsqu'une mise à jour de Klipper saute d'un centième de version, comme de la 0.11 à 0.12 en novembre dernier, il faut reflasher la MCU.

Avec les versions bricolées par les constructeurs ça ne doit pas être triste.

Et en plus si il y a un CanBus , champagne !

En clair, ne faites jamais une mise à jour de Klipper avec ces bécanes. Pas plus qu'avec les autres d'ailleurs.

Tant que ça marche on ne touche pas.

Posté(e)
il y a 3 minutes, Funboard29 a dit :

Et en plus si il y a un CanBus

ben oui il y en a un 😉

il y a 4 minutes, Funboard29 a dit :

En clair, ne faites jamais une mise à jour de Klipper avec ces bécanes. Pas plus qu'avec les autres d'ailleurs.

Tant que ça marche on ne touche pas.

Bon conseil car elle fonctionne très bien, je voulais juste faire cette mise à jour pour le fun d'où ma réflexion sur la réversibilité 

Posté(e) (modifié)

C'est réversible à la condition que Two trees fournisse l'image (OS) originelle. Il n'y aurait que le firmware Klipper à reflasher pour chaque MCU. Si en plus le CANbus est déjà installé (correctement), reflasher Klipper via son intermédiaire est franchement pas compliqué 😉 Après lecture du dépôt de @bistory, la carte fille de la tête, ne communique pas via un bus CAN mais via UART (en gros USB) 😉 La seule «réelle» difficulté sera la partie soudure car Two trees n'a pas utilisé de câble USB (comme par exemple sur les Qidi Series 3 mais les Q1 Pro utilisent elles aussi cette connexion UART nécessitant un peu de soudure (l'emplacement accueillant une prise USB est présent).

En fait, c'est à la portée de bon nombre de membres de ce forum, particulièrement, ceux qui auraient monté leur propre imprimante (Voron, par exemple).

Les montées de version de Klipper ne nécessitent pas toujours de reflasher le firmware sur les cartes, Klipper le signale ( Fluidd / Mainsail, plutôt) quand il est nécessaire de le faire.

Révélation

fluidd-error-klipper-version-mksthr.jpg.d9f2e43deacf5ab2dd7ee59f8a45d325.jpg

Après chacun fait bien comme il veut mais je suis entièrement en désaccord avec ce propos :

Il y a 1 heure, Funboard29 a dit :

En clair, ne faites jamais une mise à jour de Klipper avec ces bécanes. Pas plus qu'avec les autres d'ailleurs.

Certaines fonctionnalités ne peuvent être utilisées qu'avec une version récente de Klipper (et de son écosystème (Moonraker, Fluidd/Mainsail)), exemple les sondes à la mode à courants de Foucault (Eddy probe).

Comme un bon nombre d'imprimantes CoreXY de ces derniers mois (Two trees, Sidewinder X4, Neptune 4, etc.), les cartes contrôleurs utilisées sont des dérivées de Makerbase SKRPI, une bonne partie (voire la totalité avec quelques adaptations pour le nom de  quelques broches) de ce que j'ai décrit dans le passage de ma XM3 en version pure Open source peut être réutilisé (en plus c'est en français, si le contenu plait alors pouce bleu et abonnement à la chaine… ah non, c'est vrai on est sur un forum 🤣)

🙂

Modifié (le) par fran6p
Posté(e)
Il y a 4 heures, fran6p a dit :

C'est réversible à la condition que Two trees fournisse l'image (OS) originelle

de ce coté là ça va ils fournissent l'image

Il y a 4 heures, fran6p a dit :

Il n'y aurait que le firmware Klipper à reflasher pour chaque MCU

ok donc refaire ce qui est indiqué pour les MCU dans le dépôt de @bistory (je ne savais pas que Tom's Basement avait un compte ici 😉 )

ma foi ça m'a pas l'air trop compliqué, je vais me faire un cordon USB et on va tester ça, si ça marche et que je ne prend pas les pieds dans le tapis, je testerai ton tuto pour la XM3, ça me permettra d'en apprendre un peu plus sur Klipper et de me remettre à la ligne de commande 😉 je devrais y arriver, il y a une dizaine d'années j'avais loué un serveur web vide et j'avais réussi à installer une distribution linux, apache etc pour mettre mes sites internet

  • +1 1
Posté(e)
Il y a 10 heures, pascal_lb a dit :

je ne savais pas que Tom's Basement avait un compte ici 

J'ai une bonne mémoire 😉 Il était venu faire «sa pub» à l'époque 😄

 

Tu devrais y arriver… sinon le forum est là pour ça 😉

  • J'aime 1
Posté(e)
Le 12/07/2024 at 10:33, fran6p a dit :

Tu devrais y arriver… sinon le forum est là pour ça 😉

je te prend au mot 😉

Je suis parti avec un version propre sur un EMMC

J'ai suivi la procédure à la lettre, j'ai soudé un connecteur JST-XH 2.54 sur la carte fille, préparé un cordon USB, j'ai modifié l'ordre des fils car par rapport au tuto ce n'était pas dans l'ordre sur la carte TH

Au départ tout c'est bien passé, en regardant dans KIAUH j'ai bien les dernières versions de klipper et de Moonraker, dans fluid j'avais bien les 2 MCU qui devait être mis à jour comme dans le tuto, j'ai flashé la carte mère avec le firmware qui a été créé, le fichier est bien passé en .CUR

J'ai ensuite connecté la carte TH comme indiqué et c'est là que ça bug...

ci joint le klippy.logklippy.log.txtet le moonraker.log moonraker.log.txt

 et dans fluid j'ai

 Capture.PNG.c19da4fa7d6ff9d6d9e1d5171af712ed.PNG

Une idée ? 😉

Posté(e)

Sans rapport probable mais la date n'est pas à jour ou alors tu es dans un autre faisceau horaire 😉 (au moment où je poste, il est 19h03, le samedi 13/07/2024. La version du firmware est bien une v0.12.

Citation

Build file /home/mks/klipper/klippy/../out/klipper.dict(8876): Sat Jul 13 22:22:20 2024
Last MCU build version: v0.12.0-263-g0087f04c

Le mcu principal déclaré dans le printer.cfg :

Citation

[mcu]
serial = /dev/serial/by-id/usb-Klipper_stm32f401xc_5A0064000351323532393238-if00

Klipper essaie de se connecter sur ce port série mais n'y arrive pas :

Citation

mcu 'mcu': Starting serial connect
mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-Klipper_stm32f401xc_5A0064000351323532393238-if00: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-Klipper_stm32f401xc_5A0064000351323532393238-if00'

En ssh sur l'imprimante, que retourne :

  • lsusb
  • ls /dev/serial/by-id/*

Désolé mais je nevais pas pouvoir t'aider plus pour ce soir => «apéro time» 😉

Après flashage de la carte «Hotend», tu as bien déconnecté le câble USB ?

Posté(e)

Dans le printer.cfg c'est pas :

[mcu MKS_THR]
serial = /dev/ttyS0
restart_method = command 

mais :

[mcu MKS_THR]
serial: /dev/ttyS0
restart_method: command

Posté(e)
il y a 37 minutes, trotro a dit :

[mcu MKS_THR]
serial: /dev/ttyS0
restart_method: command

Oui dans le printer.cfg c'est bien comme ça 

il y a 50 minutes, fran6p a dit :

En ssh sur l'imprimante, que retourne :

  • lsusb
  • ls /dev/serial/by-id/*

mks@mkspi:~$ lsusb
Bus 005 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
mks@mkspi:~$ ls /dev/serial/by-id/*
ls: cannot access '/dev/serial/by-id/*': No such file or directory

il y a 51 minutes, fran6p a dit :

Désolé mais je nevais pas pouvoir t'aider plus pour ce soir => «apéro time» 😉

pas de soucis bon apéro 😉

il y a 53 minutes, fran6p a dit :

Klipper essaie de se connecter sur ce port série mais n'y arrive pas :

en fait port qu'il y a dans le tuto lorsque je flash la carte TH mais je ne sais pas d'où il sort

Citation
make
sudo service klipper stop
make flash FLASH_DEVICE=/dev/serial/by-id/usb-Klipper_stm32f401xc_500021001451313430333633-if00
sudo service klipper start

je vais testé en inversant le data + et le data - sur la fiche car @bistory dit que parfois ils sont branchés à l'envers sur certains câble USB

il y a une heure, fran6p a dit :

Après flashage de la carte «Hotend», tu as bien déconnecté le câble USB ?

j'ai arrêté la machine, débranché le câble, et rebrancher le câble d'origine

  • +1 1
Posté(e) (modifié)
Il y a 5 heures, pascal_lb a dit :

mais je ne sais pas d'où il sort

j'ai trouvé d'où ça sort j'ai un fichier MCU_ID.cfg qui est appelé dans le printer.cfg

Citation
[mcu]
serial:/dev/serial/by-id/usb-Klipper_stm32f401xc_5A0064000351323532393238-if00
restart_method: command

 

Bon je pense qu'il y a un bug dans cette procédure car j'ai testé plusieurs fois et plus rien ne fonctionne...

Je suis donc revenu à la version d'origine

Je vais donc abandonner cette modification pour me tourner vers la procédure de @fran6p normalement faite pour une XM3

J'ai déjà commencé et suis arrivé sans encombre à :

"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 …))"

mais là je bug car je n'ai jamais utilisé ce type de fichier...

Modifié (le) par pascal_lb
Posté(e) (modifié)

@pascal_lb

Bon après lecture plus approfondie du Github de @bistory et quelques recherches sur Reddit et autres sites, je me pose quelques questions 😱:

  • a-t'il vraiment testé ce qu'il propose de mettre en œuvre ?
    • si oui, est-ce vraiment fonctionnel sur sa SK1 ?

Pourquoi ces questions ?

Le microcontrôleur de la tête, d'après de nombreuses lectures, serait plutôt un RP2040 (Pi pico) (l'utilisation des boutons BOOT et RESET sur cette carte pour passer en mode DFU tendrait à confirmer la présence d'un Pi Pico) => la préparation du firmware Klipper serait donc erronée

image.jpeg.6ee41f4f6c119a097212b28f72f0d946.jpeg

Idem pour le microcontrôleur de la carte qui ne serait pas un STM32F407 mais un STM32F402 (version chinoise du STMF401), là encore la préparation du firmware n'est pas la même (le «serial» utilisé par Twotrees confirmerait d'ailleurs un STM32F401 et pas un F407 (le bootloader n'est pas le même 48K pour ce dernier, 32K pour le 401/402) => serial:/dev/serial/by-id/usb-Klipper_stm32f401xc_5A0064000351323532393238-if00… j'espère que le flash d'un mauvais firmware n'aura pas eu d'incidence sur le reflashage 😳)

image.jpeg.d8b79bb88d1db3c301f936cc1692a3a4.jpeg

Comme ces deux cartes sont fabriquées par Makerbase, ce sont des dérivées de la MKS SKIPR (elle avec un μcontrôleur STM32F407) et de leur carte USB/CAN pour les têtes.

J'ai trouvé les schémas d'attribution des broches de ces deux cartes 😉

La carte principale

sk1-pinout-diagrams-mcu.thumb.png.469337500b46e2a8c39b7a45ce504163.png

La carte fille de la tête

sk1-pinout-diagrams-thr.png.de32c8ae73b217160cc49b3a3fc63700.png

Pour flasher la carte principale, c'est la même procédure que pour la X-Max3 (voir ce lien ou celui-ci), la différence se faisant uniquement sur le nom du firmware Klipper ( mks_skipr_mini.bin pour la SK1 vs X_4.bin pour la XM3)

PS: dans la préparation du firmware la communication UART se fait sur les broches PA11 / PA12 (pour la XM3 c'est PA10/PA9)… pas étonnant que Klipper ne puisse établir la liaison 🙄.

Extrait du schéma des pins ci-dessus (le μcontrôleur est sur ce schéma un STM32 F402 😉 ) :

rk3328-stm32-uart.jpg.da9ffee3d7b36cfe6ccf9edde5e2e4ee.jpg

Idem pour le firmware de la tête, préparé pour un RP2040 => klipper.uf2 (méthode 1 sans installation préalable de Katapult de ce lien ou ) , presser le bouton Boot tout au long du démarrage de l'imprimante (la carte n'a pas de bouton Reset apparent 😞 ) pour passer le RP2040 en mode Bootsel (le RP2040 émule alors un périphérique de stockage USB) (d'où le script d'automontage 😉 )

Il y a 15 heures, pascal_lb a dit :

mais là je bug car je n'ai jamais utilisé ce type de fichier...

C'est un script shell 😉 Normalement, il ne sert que pour ajouter l'automontage de clés USB car l'image de l'OS installé sur ma XM3 «free» est une version Armbian récente (Bookworm) dépouillée de tous les «utilitaires» de Makerbase (utilisés par Qidi, Twotrees, et d'autres).

Donc tu as installé l'image du système que j'ai utilisée ?

🙂

Modifié (le) par fran6p
Posté(e)
il y a 35 minutes, fran6p a dit :

a-t'il vraiment testé ce qu'il propose de mettre en œuvre ?

je ne sais pas mais je n'arrive à rien ou c'est moi qui ne comprend pas 😉

il y a 36 minutes, fran6p a dit :

Donc tu as installé l'image du système que j'ai utilisée ?

oui et je me suis arrêté à ce script shell que je ne sais pas ou placer ni comment 

Posté(e) (modifié)
il y a 45 minutes, pascal_lb a dit :

je me suis arrêté à ce script shell que je ne sais pas ou placer ni comment 

Tu en es à l'étape automontageUSB du fichier «completer-os.md»

En ssh, placé dans le dossier perso de mks, il faut créer le script (il ne servira qu'une seule fois, tu pourras une fois exécuté, le supprimer si tu veux)

Citation

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)

Citation

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érifie une fois que le script a été exécuté que l'insertion du clé USB est bien reconnue :

Citation

lsblk

ls ~/printer_data/gcodes/USB

🙂

Le fichier  à transférer sur la SK1, modifier les droits (chmod +x) : automount.sh

Modifié (le) par fran6p
Posté(e) (modifié)

@fran6p merci de me tenir la main 😇

ok pour le script shell je vais le faire après

j'ai installé klipper, moonraker, fluidd

J'ai copié le printer.cfg de la sk1 et 2 fichiers qui était inclus et je suis arrivé là 😉

Capture.thumb.PNG.90b582fa47658dfd6816f5001756905e.PNG

Modifié (le) par pascal_lb
Posté(e)

pour l'USB apparement c'est bon

Citation

mks@mkspi:~$ lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
mmcblk1      179:0    0   7,3G  0 disk
├─mmcblk1p1  179:1    0   256M  0 part /boot
└─mmcblk1p2  179:2    0   6,9G  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:~$ lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda            8:0    1   3,8G  0 disk
└─sda1         8:1    1   3,7G  0 part
mmcblk1      179:0    0   7,3G  0 disk
├─mmcblk1p1  179:1    0   256M  0 part /boot
└─mmcblk1p2  179:2    0   6,9G  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 ~/printer_data/gcodes/USB
 printer.cfg  'SK1 Machine Documentation V.231030'  'System Volume Information'   TT_UPDATE.deb
 


 

  • +1 1
Posté(e) (modifié)

Le Klipper installé est la dernière version (0.12).

Ce message est «normal» car Fluidd détecte qu'il y a non concordance entre la version klippy installée et les firmwares de chaque mcu (celui de la carte principale (le Rockchip RK3328 + STM32F402) et celui de la tête (MKS_THR)).

Tu en es donc à l'étape où il faut préparer les firmware puis les flasher (ne suit pas la documentation de @bistory sauf pour la connexion qui doit se faire en USB via l'ajout du connecteur sur la carte et un câble USB (déconnexion du câble reliant la carte fille à la carte principale).

Commence d'abord à flasher le firmware pour le STM32F402, redémarre Klipper une fois flashé pour voir s'il est bien pris en compte (lsusb, ls /dev/serial/by-id)

Si Fluid n'émet plus que l'erreur pour la carte MKS-THR, il faudra procéder au flash de cette carte. Comme l'automontage USB est bon, ça devrait être plus facile 😉

🙂

Modifié (le) par fran6p
Posté(e)
il y a 3 minutes, fran6p a dit :

Tu en es donc à l'étape où il faut préparer les firmware puis les flasher

Donc là je peux suivre tes indications pour flasher la carte mère dans ton tuto pour la XM3 ?

Posté(e)

je pense que j'ai bien sélectionné 😉

Capture.PNG.ce80e89b84fac171c5ea811a1904c57a.PNG

Posté(e) (modifié)

Presque, modifie la ligne Communication interface pour sélectionner «on USART1 PA11/PA12» «USB (on PA11/PA12)» comme je l'ai indiqué plus haut :

rk3328-stm32-uart.jpg.dbe46ec1e60b0826313b54a63492636a.jpg

Au final, le menuconfig devrait être celui ci-dessous pour cette carte «MKS/Twotrees-SK1» :

stm32f401-menuconfig.jpg.260e26bc14e437de8b85bafb5cab5561.jpg

🙂

Modifié (le) par fran6p
Posté(e)
il y a 5 minutes, fran6p a dit :

Presque, modifie la ligne Communication interface pour sélectionner «on USART1 PA11/PA12» comme je l'ai indiqué plus haut :

a mince j'ai été plus vite de la musique...

Je recommence 😉

il y a 16 minutes, fran6p a dit :

Presque, modifie la ligne Communication interface pour sélectionner «on USART1 PA11/PA12» comme je l'ai indiqué plus haut :

je crois que ça avance j'ai ça dans fluiddCapture.thumb.PNG.652c4cb5820cf4027f46599105749d5d.PNG

mais je me demande si je n'ai pas fait une boulette car j'ai redémarré la machine avec la clé USB branché et dessus il y avait une mise à jour de chez TT 🫤

Posté(e)

Il n'y a plus que le firmware de la tête à flasher :

Citation

Up to date MCU(s)

mcu: Current version v0.12.0-26xxxxxxxxxxx

Préparer le firmware pour une Pi Pico (RP2040) => klipper.uf2.

Pour le flasher, il faudra passer en mode Bootsel :

  • éteindre l'imprimante,
  • presser le bouton BOOT,
  • allumer l'imprimante,
  • ne relâcher ce bouton qu'une fois celle-ci démarrée

Suivre la procédure https://github.com/fran6p/Xmax3-free/blob/main/Mise-a-jour/firmware-mcus.md#flasher-le-firmware-1

L'automontage étant fonctionnel, le RP2040 s'il passe bien en mode «émulation de stockage» devrait faciliter le flashage:

cp ~/klipper/out/klipper.uf2 ~/printer_data/gcodes/USB

Une fois flashé, un redémarrage de Klipper devrait (on croise les doigts) ne plus afficher d'erreur empêchant le démarrage.

Il restera probablement quelques ajustements à faire dans le fichier printer.cfg.

🙂

Posté(e)
il y a 21 minutes, fran6p a dit :

Préparer le firmware pour une Pi Pico (RP2040) => klipper.uf2.

ok je vais voir ça ce soir

en tout cas merci !!!!

Posté(e)

De rien 😉

Par contre, n'étant pas insomniaque comme @PPAC, je décroche après 19h (apéro time, 14 juillet 😄 ).

  • J'aime 1
  • Haha 1
Posté(e)

@fran6p

J'ai bien cru que ça avait fonctionné mais non 🤧

j'arrive à ça

Capture.PNG.3fefab4268a909135be4bbb66dc59b49.PNG

Pour tant j'ai bien configuré comme tu l'as indiqué

firm.jpeg.ff2baa0d5c449430f43f407587ed6a48.jpeg

j'ai ensuite branché mon cable USB sur la carte THR

avec lsblk j'avais bien la partition sda1 mais en face je n'avais pas le chemin /home/mks/printer_data/gcodes/USB

avec lsusb j'avais bien Raspberry pi RP2 boot

ensuite 

cp ~/klipper/out/klipper.uf2 ~/printer_data/gcodes/USB

sync

j'ai vérifié avec lsusb le RP2040 n'était plus en mode émulation de stockage

j'ai arrêté la machine, rebranché le câble d'origine et ça ne fonctionne pas

Je l'ai refait 2 fois au cas ou mais résultat identique

je te met le klippy.log au cas ouklippy.log.txt

 

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
  • Sur cette page :   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
  • YouTube / Les Imprimantes 3D .fr

×
×
  • Créer...