Pagina 1 van 1

Klipper en 3 extruders!

Geplaatst: 12/11/23, 15:57
door swets
Ik probeer mijn Geeetech A10T met klipper aan de gang te krijgen... en ik ben een heel eind, maar ik krijg dat verhaal rondom de 3 extruders maar niet goed...

Code: Selecteer alles

[gcode_macro T2]
gcode:
    # Deactivate stepper in my_extruder_stepper
    SYNC_EXTRUDER_MOTION EXTRUDER=extruder MOTION_QUEUE=
    SYNC_EXTRUDER_MOTION EXTRUDER=extruder1 MOTION_QUEUE=
    SET_EXTRUDER_ROTATION_DISTANCE EXTRUDER=extruder2 DISTANCE={7.943242}
    # Activate stepper in extruder
    SYNC_EXTRUDER_MOTION EXTRUDER=extruder2 MOTION_QUEUE=extruder

[gcode_macro T1]
gcode:
    # Deactivate stepper in my_extruder_stepper
    SYNC_EXTRUDER_MOTION EXTRUDER=extruder MOTION_QUEUE=
    SYNC_EXTRUDER_MOTION EXTRUDER=extruder2 MOTION_QUEUE=
    SET_EXTRUDER_ROTATION_DISTANCE EXTRUDER=extruder DISTANCE={7.943242}
    # Activate stepper in extruder
    SYNC_EXTRUDER_MOTION EXTRUDER=extruder1 MOTION_QUEUE=extruder

[gcode_macro T0]
gcode:
    # Deactivate stepper in my_extruder_stepper
    SYNC_EXTRUDER_MOTION EXTRUDER=extruder1 MOTION_QUEUE=
    SYNC_EXTRUDER_MOTION EXTRUDER=extruder2 MOTION_QUEUE=
    SET_EXTRUDER_ROTATION_DISTANCE EXTRUDER=extruder DISTANCE={7.943242}
    # Activate stepper in extruder
    SYNC_EXTRUDER_MOTION EXTRUDER=extruder MOTION_QUEUE=extruder
met het bovenstaande in de print.cfg file, kan ik dmv toetsen T0, T1 en T2 wel, als ik daarna op de knop extrude druk, de verschillende extruder motors aansturen....

maar ik wil het ook graag met die M163 en M164 laten werken...

iemand ervaring mee?

Re: Klipper en 3 extruders!

Geplaatst: 12/11/23, 17:26
door Wim62
Leuk verhaal .

Welkom .

Ik weet het het ook niet .

Re: Klipper en 3 extruders!

Geplaatst: 12/11/23, 20:26
door 3DWim
Hallo welkom,

Werkte het al wel met drie extruders of heeft het al gewerkt?

Re: Klipper en 3 extruders!

Geplaatst: 15/11/23, 20:08
door swets
toen hij draaide op de standaard firmware werkte het... nu op klipper dus niet.. (nog niet hoop ik... :-) )

mijn Ender3v2 werkte zo via klipper, maar voor de geeetech was heel weinig informatie te vinden.....

Re: Klipper en 3 extruders!

Geplaatst: 15/11/23, 21:03
door Wim62
Dan zou ik het gewoon bij de standerd firmware houden .

Re: Klipper en 3 extruders!

Geplaatst: 16/11/23, 07:33
door MaestroLmpio
Ik heb geen ervaring met "kleurenmixen", maar na wat opzoekwerk zie ik dat de M163 en M164 ook een macro zijn in Marlin, dus die ga je niet in de "standaard" klipper vinden. In dit geval en zoals in vele andere gevallen kan je hier dan zelf je macro voor maken en toevoegen aan je config.

In de onderstaande link lijkt het erop dat iemand dit heeft kunnen maken en implementeren. scroll naar de laatste post (gebruiker aes) en daar vind je een snippet van zijn config en de gebruikte macro. Succes!

https://klipper.discourse.group/t/mixin ... rt/2246/11

Re: Klipper en 3 extruders!

Geplaatst: 16/11/23, 15:29
door swets
Wim62 schreef: 15/11/23, 21:03 Dan zou ik het gewoon bij de standerd firmware houden .
Ja :-) dat zou ook kunnen... maar ik vind het juist leuk om dit proberen aan de gang te krijgen....
en ik heb meer printers staan, dus tis niet dat ik hem super hard nodig heb.....
MaestroLmpio schreef: 16/11/23, 07:33 Ik heb geen ervaring met "kleurenmixen", maar na wat opzoekwerk zie ik dat de M163 en M164 ook een macro zijn in Marlin, dus die ga je niet in de "standaard" klipper vinden. In dit geval en zoals in vele andere gevallen kan je hier dan zelf je macro voor maken en toevoegen aan je config.

In de onderstaande link lijkt het erop dat iemand dit heeft kunnen maken en implementeren. scroll naar de laatste post (gebruiker aes) en daar vind je een snippet van zijn config en de gebruikte macro. Succes!

https://klipper.discourse.group/t/mixin ... rt/2246/11
Ja dat klopt...Dus ik probeer een M163 en een M164 macro te maken in klipper....

In de g-code van uit cura word dmv

M163 S0,1.0
M163 S1,0.0
M163 S2,0.0

verzonden, eigenlijk is dat de snelheid die je wil dat de exturders gaan draaien...
Dus extruder1 op 100% en de andere 2 staan stil,

en met een

M164,S1

sla je eigenlijk die 3 snelheden op in in een Toolnummer,

Dus T1 , gebruikt extruder1 100% en de andere 2 extruders staan stil...

Maar je kan dus ook M163 S0,0.5 en M163 S1,0.5 en M163 S2,0.0 en een M164 S2 , en dan zou tool T2 dus de eerste 2 extruders op 50% aansturen...

volgens mij heb ik dat aansturen van de verschillende snelheden al voor elkaar...
maar nu wil ik alleen nog, als er in de G-code een toolnummer staan , Bijvoorbeeld T4, dat dan in macro T4 de 3 snelheden van T4 opgehaald worden...

Maar ik weet helemaal niet of je in de config van klipper, eeehhh, ja dat je als bijvoorbeeld een M164 S4 vanuit de G-code binnen komt, of het dan mogelijk is, in Macro M164 ten eerst die S4 uit te lezen?

en die S4 dan gebruiken om de 3 snelheden in een Array te zetten op de 4 plaats...?

en dan dus later, als er in de G-code een T4 staat, dat dan dmv Macro T4 , de 3 snelheden uit de Array gelezen word....

Dus in theorie weet ik wel wat ik wil.... :-) nu alleen ff uitzoeken of het kan, en hoe....

Toegevoegd in 6 uren 52 minuten 34 secondes:
Misschien hier iemand die het weet?

Als ik via het console M163 S0 P1.0 geeft, gaat het niet goed.
Maar ik begrijp niet waarom niet... misschien iemand anders die het weet...

want de S0 word wel goed uit gevoerd, want ik " RESPOND TYPE=command MSG='M163 extruder 0' " goed terug

maar nu probeer ik ook die P1.0 uit te lezen.... en dat wil maar niet lukken...

misschien iemand een idee wat ik fout doe?


Code: Selecteer alles

[gcode_macro M163]
gcode:
  
  variable_temp_target: 0
gcode:

    {% set rot_dist0 = params.ROT_DIST_0|default(7.943242)|float %} # define in default the rotation distance of the extruder0
    {% set rot_dist1 = params.ROT_DIST_1|default(7.943242)|float %} # define in default the rotation distance of the extruder1
    {% set rot_dist2 = params.ROT_DIST_2|default(7.943242)|float %} # define in default the rotation distance of the extruder2
   
   
    {% set Speed_extruder0 = params.EXTRUDER_0 | default(7.943242) | float %}
    {% set Speed_extruder1 = params.EXTRUDER_1 | default(7.943242) | float %}
    {% set Speed_extruder2 = params.EXTRUDER_2 | default(7.943242) | float %}
   
   #SET_GCODE_VARIABLE MACRO=START_PRINT VARIABLE=temp_target VALUE={ TARGET_TEMP }
  
  
#[P<factor>] [S<index>] Set a single mix factor (in proportion to the sum total of all mix factors). The mix must be committed to a virtual tool by M164 before it takes effect.

    {% if 'S' in params %}
      {% if 'P' in params %}
 #   #Set Mix
        {% if params.S|int == 0 %}
          #SET_EXTRUDER_ROTATION_DISTANCE EXTRUDER=extruder DISTANCE={ rot_dist0 * (100.0/ (((params.P|float)*100.0)) +0.00001) }
          #Speed_extruder0 {((rot_dist0 /100.0)*(params.P|float))}
         
          M117 {(params.P|float)}
          RESPOND TYPE=command MSG='M163 extruder 0'
                  
        {% endif %}

        {% if params.S|int == 1 %} 
          #SET_EXTRUDER_ROTATION_DISTANCE EXTRUDER=extruder1 DISTANCE={ rot_dist1 * (100.0/ (((params.P|float)*100.0))  +0.00001) }
          RESPOND TYPE=command MSG='M163 extruder 1'
        {% endif %}

        {% if params.S|int == 2 %} 
          #SET_EXTRUDER_ROTATION_DISTANCE EXTRUDER=extruder2 DISTANCE={ rot_dist2 * (100.0/ (((params.P|float)*100.0)) +0.00001) }
          RESPOND TYPE=command MSG='M163 extruder 2'
        {% endif %}

     {% endif %}

  {% endif %}