Aller au contenu

GO Print

[TUTO] Installer et configurer Klipper


Nibb31

Messages recommandés

Oui c'est mieux elle ce connecte directement maintenant Merci
Par contre qu'elle galère pour tout reparametrer et 100mm/s sur l'anet ca le fait pas apparemment, même pas sûr de pas repasser sous marlin car je n'est pas l'impression d'énormément gagner en qualité voir en vitesse

Modifié (le) par Dams161
Lien vers le commentaire
Partager sur d’autres sites

  • 3 weeks later...

Avant toute chose, un grand merci à @Nibb31 pour ce tuto. 😉
Klipper est un firmware un peu spécial qui m'a assez longtemps intrigué. J'avais l'habitude de Marlin (2.0.x) sur ma i3M-S, mais Klipper est quasiment adopté pour moi à l'heure actuelle (encore 2-3 bricoles à régler sur Pressure Advance). Définitivement le jour et la nuit.

En revanche, une chose me chiffonne un peu : la macro pour M300 (beeep ... beeep ...). Ça fonctionne, là n'est pas le problème, mais ça ne semble pas tout à fait se comporter comme sous Marlin.
Là où une séquence de notes, comme dans mon G-Code de fin [le "1 UP!" de Super Mario Bros], est très fluide sous Marlin et les notes toutes au même niveau, elle est plus hasardeuse sous Klipper : Klipper me sort un truc du genre "Note1 [pause] Note2 [pause] etc", assez hachuré (comme en staccato, pour les collègues musicos), avec certaines notes pas si hautes un peu passées à la trappe. 🤷🏻‍♂️
Je suis le seul dans ce cas, où quelqu'un d'autre aurait rencontré ce comportement quelque peu singulier ?

Lien vers le commentaire
Partager sur d’autres sites

  • 1 month later...

Hello les amis !! J'espère que vous allez bien ! 

Ça fait maintenant un moment que je suis sous klipper et qu'il me comble de bonheur lol. 

J'envisage sérieusement de monter un mmu2 sur ma sovol sv01 pour du filament switch et du multicolor. 

Cependant je ne trouve pas de sources sur la config et l'installation (bon pour le setup c'est branchement sur un uart et pinnages dans le printer.cfg, jusque là pas de problèmes), comment cela se passe sur l'interface ? Est-ce compatible sur klipperscreen ? Et y a t'il des particularités ? 

J'ai trouvé des exemples de config sur github ou encore reddit mais rien de très concret. 

Si certains ont déjà setup l'ensemble ou saurais me guider ça serais top !! Merci d'avance 😉

Lien vers le commentaire
Partager sur d’autres sites

@Binary FpvLe MMU2 n'est pas compatible avec Klipper. La seule solution actuellement est de remplacer la carte par quelque chose de plus générique et de tout faire en macro. Il y a un exemple sur le github de Klipper: https://github.com/KevinOConnor/klipper/blob/master/config/sample-mmu2s-diy.cfg
AMHA, quitte à faire des changements autant partir sur du DIY complet: il y a l'Enraged Rabbit Carrot Feeder (ERCF) qui marche bien ou le Smart Multi Filament Feeder (SMuFF) éventuellement.

Modifié (le) par Tircown
  • J'aime 1
Lien vers le commentaire
Partager sur d’autres sites

J'ai un ERCF, je participe au développement d'ailleurs. C'est assez récent comme projet et pour l'instant le mien ne tourne pas, je suis à la bourre. Mon implication dans le projet concerne des éléments précis donc ça je teste à part et c'est plutôt pour la prochaine version. Le mien est un 6 voies ce qui est plutôt petit. On trouve principalement des 9 voies mais il n'y a pas de règle, ça rajoute juste 21mm pour chaque voie et 5mm toutes les 3 voies.

Toutes les macros sont fournies, il y a des guides; certains en cours de rédaction. J'irais pas jusqu'à dire que c'est facile mais la voie est en partie tracée. Le nerf de la guerre avec ces bébêttes, quelque soit le modèle, c'est le réglage pour obtenir des fins de filament propre. Et malheureusement ce réglage est propre à chaque hotend, marque de filament, couleur, etc.

Pour l'ERCF, je préviens, tout est modélisé pour être imprimé en ABS avec des machine super bien réglées. Si ton cube de 30mm en ABS ne mesure pas 29.85 (retrait typique de l'ABS) tu vas avoir des soucis pour l'assembler. Y'en a qui ont essayé...

Modifié (le) par Tircown
Lien vers le commentaire
Partager sur d’autres sites

Hello 

Déjà un grand merci pour ce tuto , en une matinée j'ai réussi à faire ma première impression.

 

Mais là je rame depuis 1 semaine et aprés avoir essayé plus conf je n'arrive à rien 

Alors mon setup 

COREXY 310x310x360

SKR 1.4 turbo avec TMC2209 +BLTOUCH

Sous marlin , j'avais le mesh bed leving  en 4 points avec une marge de sécu de 20 mm sur les cotés et 60 mm sur l'avant et l'arrière + la visualisation du bed sous octoprint

+ une compensation du bed si celui ci était de travers , car j'ai un bed magnétique 

 

J'aimerais faire la même sous klipper , j'ai suivi des tuto mais une fois fait le g29 j'ai de façon aléatoire un message d'erreur comme quoi ma trajectoire sors de la limite de l'imprimante. 

et je n'ai pas su trouver pour la compensation 

J'ai mis en copie ma conf klipper

je suis ouvert au amélioration , si vous avez des petites astuces qui arrange la vie 

 

merci d'avance

 

CONF.txt

Lien vers le commentaire
Partager sur d’autres sites

Bon j'ai trouvé quelques réponses

Déjà mon Gcode de départ d'impression posait problème

Mais je n'ai pas trouvé concernant mon mesh bed leving 

Sous marlin , j'avais l'option leveling bi lineare,

Mon bed n'étant pas parfait (bed magnétique), mes deux moteurs Z compensaient en direct ce defaut , et ça sur les 5 premiers mm

Quelqu'un aurait l'astuce sur klipper ? je pensais que c'etait bed tilt mais ça n'a rien a voir 

merci d'avance les makers

Lien vers le commentaire
Partager sur d’autres sites

z-tilt c'est pour une compensation automatique, donc  bed avec plusieurs moteurs pour le déplacer.

Pour un réglage manuel tu as le  bed-screw-adjust. Ensuite tu pourras utiliser le bed-mesh.

Lien vers le commentaire
Partager sur d’autres sites

@Romain2634

La compensation des défauts ainsi que les méthodes sont traitées dans https://github.com/KevinOConnor/klipper/blob/master/docs/Bed_Mesh.md

🙂

Lien vers le commentaire
Partager sur d’autres sites

Il y a 1 heure, Tircown a dit :

z-tilt c'est pour une compensation automatique, donc  bed avec plusieurs moteurs pour le déplacer.

Pour un réglage manuel tu as le  bed-screw-adjust. Ensuite tu pourras utiliser le bed-mesh.

oky donc se n'est pas ce que je recherche merci

il y a une heure, fran6p a dit :

@Romain2634

La compensation des défauts ainsi que les méthodes sont traitées dans https://github.com/KevinOConnor/klipper/blob/master/docs/Bed_Mesh.md

🙂

oui j'ai trouvé ça ce matin , mais je t'avoue que je suis un peu perdu , j'ai rentrée les valeurs des paragraphes correspondants 

mais lors de mes impressions , je ne vois pas les axes z bougeaient en même temps que le x et y 

Du coup , aucune compensation , et je me retrouve à écraser la première couche d'un coté , et ne pas adhérer de l autre.

Lien vers le commentaire
Partager sur d’autres sites

Sans le fichier printer.cfg, c'est compliqué de savoir ce qui a été modifié 😉

Lien vers le commentaire
Partager sur d’autres sites

Alors j'ai fait plusieurs changement et rien n'y fait. 

Lors du G29 tout se passe bien , mais j'ai l'impression que lors de l'impression , les infos du mesh bed ne sont pas pris en compte ......

En vue des réglages de la première couche de mon slicer , je n'arrive plus à imprimer.....dur

Lien vers le commentaire
Partager sur d’autres sites

Salut @Romain2634

Dans la Macro G29 au lieu de BED_MESH_PROFILE LOAD=default j'aurais plutôt mis un SAVE_CONFIG 

ou un BED_MESH_PROFILE SAVE=monbedmeshamoi

et dans le Gcode de démarrage un  BED_MESH_PROFILE LOAD=monbedmeshamoi

Modifié (le) par Savate
Lien vers le commentaire
Partager sur d’autres sites

il y a 44 minutes, Savate a dit :

Salut @Romain2634

Dans la Macro G29 au lieu de BED_MESH_PROFILE LOAD=default j'aurais plutôt mis un SAVE_CONFIG 

ou un BED_MESH_PROFILE SAVE=monbedmeshamoi

et dans le Gcode de démarrage un  BED_MESH_PROFILE LOAD=monbedmeshamoi

J'ai essayé , pour le Gcode de démarrage , tu parles bien de celui du slicer ? 

merci de ton aide 

Lien vers le commentaire
Partager sur d’autres sites

à l’instant, Romain2634 a dit :

pour le Gcode de démarrage , tu parles bien de celui du slicer

oui,

Par sécurité, il faut le mettre après le G28 (si il y en a un)

 

Quel est le problème lors de l'impression ?

Lien vers le commentaire
Partager sur d’autres sites

il y a 4 minutes, Savate a dit :

oui,

Par sécurité, il faut le mettre après le G28 (si il y en a un)

 

Quel est le problème lors de l'impression ?

Voila à quoi ressemble mon bed , sur de grand impression , à l'extérieur ça n'accroche pas .

Avec marlin , on voyez bien le bed se rapprocher de la tête quand elle allait vers l'exterieur 

Sur klipper , le bed ne bouge pas , il n'y a pas de commende envoyer en Z dans le terminal

 

J'ai essayé ta modif et il ne se passe rien .

 

Capture.JPG

Capture 1.JPG

Lien vers le commentaire
Partager sur d’autres sites

@Romain2634

Tu l'as plié en deux ? 🙂 

J'utilise ce paramétrage pour mon bed_mesh (j'ai adapté les paramètres pour ta config, donc tu peux recopier sans rien changer)

[bed_mesh]
speed: 80
horizontal_move_z: 5
mesh_min: 20,60
mesh_max: 280, 240
probe_count: 5,5
algorithm: bicubic
fade_start: 0.6
fade_end: 10.0
relative_reference_index: 12

aucune autre option pour mon bed_mesh

 

Après pourquoi est-ce que tu refait le mesh à chaque impression ?

il vaut mieux rajouter une macro que tu lances quand tu le souhaites

[PREPARER_MON_MESH]

G28 ; homme all axes
BED_MESH_CLEAR ; Clear bed mesh data
BED_MESH_CALIBRATE ; Palpation du plateau -> Mesh   

SAVE_CONFIG ; Sauvegarde de la config par défaut

 

Dans le GCODE de démarrage

Remplacer le G29 par G28

supprimer le load du gcode de démarrage (SAVE_CONFIG sauve le mesh comme default et est chargé automatiquement)

Lien vers le commentaire
Partager sur d’autres sites

il y a 41 minutes, Savate a dit :

@Romain2634

Tu l'as plié en deux ? 🙂 

J'utilise ce paramétrage pour mon bed_mesh (j'ai adapté les paramètres pour ta config, donc tu peux recopier sans rien changer)

[bed_mesh]
speed: 80
horizontal_move_z: 5
mesh_min: 20,60
mesh_max: 280, 240
probe_count: 5,5
algorithm: bicubic
fade_start: 0.6
fade_end: 10.0
relative_reference_index: 12

aucune autre option pour mon bed_mesh

 

Après pourquoi est-ce que tu refait le mesh à chaque impression ?

il vaut mieux rajouter une macro que tu lances quand tu le souhaites

[PREPARER_MON_MESH]

G28 ; homme all axes
BED_MESH_CLEAR ; Clear bed mesh data
BED_MESH_CALIBRATE ; Palpation du plateau -> Mesh   

SAVE_CONFIG ; Sauvegarde de la config par défaut

 

Dans le GCODE de démarrage

Remplacer le G29 par G28

supprimer le load du gcode de démarrage (SAVE_CONFIG sauve le mesh comme default et est chargé automatiquement)

Ben écoute ,avant avec marlin je n'avais que 4 pointes de mesure dans les angles

avec klipper c'est 9 minimum donc j'espère qu'il à toujours été comme ça

sinon ça veut que mon axe x est tordu ^^

 

Je fais un mesh à chaque impression comme ça je suis sur du truc, vu que j'ai un bed magnetique que je retire à chaque impression au moins je suis sur.

je vais tester ta modif 

Lien vers le commentaire
Partager sur d’autres sites

@Romain2634

Il est vraiment bizarre ton «start gcode» 🤔 : aucun G28 , comment ton imprimante arrive-t'elle à se repérer dans son espace ?

Dans mes trancheurs (Ideamaker, Superslicer, Kiri-Moto), pour la séquence de début, j'ai :

Citation

; gcode macro Klipper
START_PRINT T_BED=[first_layer_bed_temperature] T_EXTRUDER=[first_layer_temperature]

ou (Cura) :

Citation

; gcode macro Klipper

START_PRINT T_BED={material_bed_temperature_layer_0} T_EXTRUDER={material_print_temperature_layer_0}

La différence concerne les noms de variables entre les trancheurs et leur «encadrement» des crochets ou des accolades 😉

Pour celle de fin:

Citation

; gcode macro Klipper
END_PRINT

Mes macros :

Citation

######################################################################
# Start Print and End Print
######################################################################

# Replace the slicer's custom start and end g-code scripts with
# START_PRINT and END_PRINT.

[gcode_macro START_PRINT]
variable_T_BED: 60
variable_T_EXTRUDER: 200
gcode:
    M117 Homing
    # Use absolute coordinates
    G90
    # Reset the G-Code Z offset (adjust Z offset if needed)
    SET_GCODE_OFFSET Z=0.0
    # Home the printer
    G28
    # Use the bed mesh
    #G29
    BED_MESH_PROFILE LOAD=cr10v2
    # Move the nozzle near the bed
    G1 X15 Y20 Z5 F6000
    
    M117 Waiting for temperature
    # Start bed heating and continue
    M140 S{T_BED}
    {% if printer.heater_bed.temperature < params.T_BED|float*0.85 %}
        M190 S{params.T_BED|float*0.85} # wait till 0.85 of bed temp is reached, then continue  
    {% endif %}
    
    M140 S{T_BED}
    M104 S170
    M190 S{T_BED}
    M109 S{T_EXTRUDER}
    
    # Prime line
    PURGE
    M117 Printing...

[gcode_macro END_PRINT]
gcode:
    M117 Done printing 🙂
    # move z up
    G91
    G1 E-2 Z+10 F3000
    # absolute xy
    G90
    G1 X5 Y295 F2000
    #disable hotend and heated bed
    M104 S0
    M140 S0
    # disable steppers
    M84
    BED_MESH_CLEAR

# prime the nozzle
[gcode_macro PURGE]
gcode:
    M117 Prime Line
    G92 E0 ;Reset Extruder
    # move z axis
    G1 Z2.0 F3000 ;Move Z Axis up
    # move to prime position
    G1 X2 Y30 Z0.28 F5000.0 ;Move to start position
    G1 X2 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line
    G1 X3 Y200.0 Z0.28 F5000.0 ;Move to side a little
    G1 X3 Y50 Z0.28 F1500.0 E30 ;Draw the second line
    G92 E0 ;Reset Extruder
    G1 Z2.0 F3000 ;Move Z Axis up
 
# G29 => (1) home all (2) get bed mesh (3) move nozzle to corner so it doesnt ooze on the bed while heating up.
[gcode_macro G29]
gcode:
    G28
    BED_MESH_CALIBRATE
    G0 X0 Y0 Z10 F6000
    BED_MESH_PROFILE save=cr10v2

 

J'utilise une première fois la macro G29 afin de sauvegarder la topographie et ensuite, je n'utilise plus le G29 mais recharge le maillage sauvegardé.

La section concernant mon «bed_mesh» est très semblable à celle de @Savatesauf que je n'utilise pas la compensation :

Citation

[bed_mesh]
speed: 100
probe_count: 5,5
mesh_min: 57,10
mesh_max: 290,290
horizontal_move_z: 5
mesh_pps: 2,2
#algorithm: lagrange
#fade_start: 1
#fade_end: 10
#fade_target: 0

Les données sauvegardées se trouvent à la fin du fichier printer.cfg :

Citation

#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
#*# [extruder]
#*# control = pid
#*# pid_kp = 25.640
#*# pid_ki = 1.554
#*# pid_kd = 105.766
#*#
#*# [heater_bed]
#*# control = pid
#*# pid_kp = 70.936
#*# pid_ki = 0.967
#*# pid_kd = 1300.785
#*#
#*# [bltouch]
#*# z_offset = 1.600
#*#
#*# [bed_mesh default]
#*# version = 1
#*# points =
#*#     0.067500, 0.055000, 0.078750, 0.070000, 0.070000
#*#     -0.011250, -0.020000, 0.032500, 0.043750, 0.073750
#*#     -0.062500, -0.066250, -0.018750, 0.020000, 0.052500
#*#     -0.062500, -0.058750, -0.046250, -0.025000, 0.022500
#*#     -0.090000, -0.097500, -0.090000, -0.071250, -0.022500
#*# x_count = 5
#*# y_count = 5
#*# mesh_x_pps = 2
#*# mesh_y_pps = 2
#*# algo = lagrange
#*# tension = 0.2
#*# min_x = 57.0000000001
#*# max_x = 290.0
#*# min_y = 10.0000000001
#*# max_y = 290.0
#*#
#*# [bed_mesh cr10v2]
#*# version = 1
#*# points =
#*#     0.086250, 0.066250, 0.081250, 0.076250, 0.092500
#*#     -0.002500, -0.011250, 0.043750, 0.046250, 0.095000
#*#     -0.057500, -0.061250, -0.010000, 0.025000, 0.045000
#*#     -0.045000, -0.062500, -0.037500, -0.003750, 0.027500
#*#     -0.070000, -0.093750, -0.060000, -0.045000, -0.002500
#*# x_count = 5
#*# y_count = 5
#*# mesh_x_pps = 2
#*# mesh_y_pps = 2
#*# algo = lagrange
#*# tension = 0.2
#*# min_x = 57.0000000001
#*# max_x = 290.0
#*# min_y = 10.0000000001
#*# max_y = 290.0

 

🙂

Lien vers le commentaire
Partager sur d’autres sites

il y a 3 minutes, Romain2634 a dit :

j'ai un bed magnetique que je retire à chaque impression

j'ai aussi des beds magnétiques, mais je ne fait le mesh qu'une fois de temps en temps (et lorsque je change la plaque magnétique pour une autre)

  • J'aime 1
Lien vers le commentaire
Partager sur d’autres sites

il y a 26 minutes, fran6p a dit :

@Romain2634

Il est vraiment bizarre ton «start gcode» 🤔 : aucun G28 , comment ton imprimante arrive-t'elle à se repérer dans son espace ?

La macro G29 définie sous Klipper contient plus que probablement un G28 en première instruction. Beaucoup le font ainsi (pas moi. G28 séparé):

[gcode_macro G29]
gcode:
    G28
    BED_MESH_CALIBRATE
Lien vers le commentaire
Partager sur d’autres sites

il y a une heure, Lidocain777 a dit :

La macro G29 définie sous Klipper contient plus que probablement un G28 en première instruction. Beaucoup le font ainsi (pas moi. G28 séparé):

[gcode_macro G29]
gcode:
    G28
    BED_MESH_CALIBRATE

C'est ça , dans la macro G29 il y a G28 sinon ça ne démarre pas ^^

 

Il y a 1 heure, Savate a dit :

j'ai aussi des beds magnétiques, mais je ne fait le mesh qu'une fois de temps en temps (et lorsque je change la plaque magnétique pour une autre)

Ok , je devrais faire comme toi , en plus c'est un gain de temps mais je ne sais pas que le mesh restait en mémoire.

Il y a 1 heure, Romain2634 a dit :

Ben écoute ,avant avec marlin je n'avais que 4 pointes de mesure dans les angles

avec klipper c'est 9 minimum donc j'espère qu'il à toujours été comme ça

sinon ça veut que mon axe x est tordu ^^

 

Je fais un mesh à chaque impression comme ça je suis sur du truc, vu que j'ai un bed magnetique que je retire à chaque impression au moins je suis sur.

je vais tester ta modif 

alors j'ai testé ta macro , est ce normal ce message ?image.png.0fc27c1e11530de49de663eec37f8ebb.png

Lien vers le commentaire
Partager sur d’autres sites

Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.
×
×
  • Créer...