M577 command for extruder endstops on the Duex4 v0.2 board



  • Hello,

    Is it possible to use the M577 command together with the endstops on the Duex4 v0.2 board connected to a DUET 0.6 board? I used the M577 command with the X and Y axis and that works fine but if I try to use it with the extruder endstops on the Duex board nothing happens. The Endstops are connected correctly (the LED indicator works correctly).

    Do I need to configure the endstops as active in the configuration file with the M574 command? If so how do I activate the endstops of multiple extruders and will the extruders stop if these endstops are triggered (not desired).

    What G code did I use:

    works correctly:
    M577 X0 S1
    M577 Y0 S1

    These do not work correctly:
    M577 E0 S1
    M577 E1 S1
    M577 E2 S1
    M577 E3 S1
    M577 E4 S1

    Thanks in advance for your help!

    Greetings,

    Eric


  • administrators

    From looking at the code, I believe it should work if you use S2 instead of S1.



  • Thanks, that fixed it I tried this before I added the M574 command to the config file it didn't work then. But it works now so it seems that the M574 comand is also needed.

    By the way very nice work on the duet firmware. I think that it is the best thing about the Duet. I hope I can soon share my 5 colour singel nozzel design with these forums.


  • administrators

    The M574 command no longer applies to extruder endstop inputs. Any E parameter you provide will be ignored.

    Looking forward to hear more about your 5-colour nozzle!



  • @dc42:

    ….....................Looking forward to hear more about your 5-colour nozzle!

    Me too!



  • The method I am using should be easily extendable to more than 5 materials. But it does require some extensive purging (from test around 20 to 30 mm filament per material change). Do you know some good slicer post-processing scripts for making purge towers?


  • administrators

    Depending on your printer geometry, you may be able to use a purge bin instead, then you can put the commands to purge the nozzle in your tool change files.

    How sharp is the transition? You may be able to use deckingman's approach described at https://somei3deas.wordpress.com/blog/. I hope to integrate this into RRF.



  • If it's 20 to 30mm of purge, then I'd have though my approach would be an ideal candidate. Even if the transition is long and there is a considerable mixing between colour changes, I doubt it would be anything like the 20 to30 mm total. So advancing the tool change position could take up most of the purge, then use a small tower or purge bin to take care of the rest.



  • @dc42:

    ….......................... I hope to integrate this into RRF.

    I'd be delighted to help or collaborate in any way.



  • I also thought about a bucket for purging the problem that I see it that it is not quite the same for priming than actual printing.

    I found a nice post processing script that should work if I implement the tool change G code in the configuration files.
    http://makertum.com/en/wipe-and-prime-towers-for-slic3r/

    I have already written a few post about what I am doing in September on the RepRap forums. It did not get much atention:
    http://forums.reprap.org/read.php?1,700227

    Due to work had put the project on hold for a few months but I am going to make it work now. The hardware all works I will now start focusing on the G-Code and slicer configuration and post processing and actual print testing.



  • I now got reliable tool change G-Code. I tried to implement it into the tpre and tpost system files for each tool but that does not seem to trigger with the tool change command. Is there any way to do this?

    Tool change G-Code;

    ;retract so molten end is at the cutter
    G1 E-22 F1200

    ;cutting cycle to cut of molten end
    M42 P4 S1 ; Put relay (motor) in forwards direction
    M42 P5 S1 ; Activate motor
    M577 E4 S2 ; Wait until endstop full stroke is triggered
    M42 P4 S0 ;Put relay (motor) in the backward direction
    M577 E3 S2 ; Wiat until enstop parking is triggered
    M42 P5 S0; motor of

    ; retract further to allow other materials into the nozzle
    G1 E-35 F1200

    ; tool 0
    T0

    ; tpost0.g
    ; Put G/M Codes in here to run after Tool 0 is selected
    ; Move material back into the nozzle
    G1 E35 F1200
    G1 E22 F1200

    ; the tool should be ready for purging



  • Hello Deckingman,

    Your method sounds very good if you have diamond-like hotend with a small chamber. My nozzle is an old reprappro nozzle and the filament guides that lead multiple filaments in them are printed. To keep melted filament out of the printed section the molten tip is cut from the retracted filament. After cutting the next filament is fed into the nozzle. The whole process takes around 5- to 10 seconds. If I would do this directly on the print it would form blobs (at least I think so). This means that it is better to create a purge tower.
    While this is a disadvantage the method should be easily adaptable to more than five materials.


  • administrators

    @Eric:

    I now got reliable tool change G-Code. I tried to implement it into the tpre and tpost system files for each tool but that does not seem to trigger with the tool change command. Is there any way to do this?

    Tool change G-Code;

    ;retract so molten end is at the cutter
    G1 E-22 F1200

    ;cutting cycle to cut of molten end
    M42 P4 S1 ; Put relay (motor) in forwards direction
    M42 P5 S1 ; Activate motor
    M577 E4 S2 ; Wait until endstop full stroke is triggered
    M42 P4 S0 ;Put relay (motor) in the backward direction
    M577 E3 S2 ; Wiat until enstop parking is triggered
    M42 P5 S0; motor of

    ; retract further to allow other materials into the nozzle
    G1 E-35 F1200

    ; tool 0
    T0

    ; tpost0.g
    ; Put G/M Codes in here to run after Tool 0 is selected
    ; Move material back into the nozzle
    G1 E35 F1200
    G1 E22 F1200

    ; the tool should be ready for purging

    You will need to do the retraction and cutting step in the tfree#.g file because it uses the old tool.



  • Hmm, still if I switch whit the tool change command nothing happens.

    I tried this:
    tfree# files (one for each tool):
    ; retract so molten end is at the cutter
    G1 E-22 F1200

    ; cutting cycle to cut of molten end
    M42 P4 S1 ; Put relay (motor) in forwards direction
    M42 P5 S1 ; Activate motor
    M577 E4 S2 ; Wait until endstop full stroke is triggered
    M42 P4 S0 ;Put relay (motor) in the backward direction
    M577 E3 S2 ; Wait until endstop parking is triggered
    M42 P5 S0; motor of

    ; retract further to allow other materials into the nozzle
    G1 E-35 F1200

    tpost# files (one for each tool):
    ; Put G/M Codes in here to run after Tool 0 is selected
    ; Move material back into the nozzle
    G1 E35 F1200
    G1 E22 F600



  • @Eric:

    Hello Deckingman,

    Your method sounds very good if you have diamond-like hotend with a small chamber. My nozzle is an old reprappro nozzle and the filament guides that lead multiple filaments in them are printed. To keep melted filament out of the printed section the molten tip is cut from the retracted filament. After cutting the next filament is fed into the nozzle. The whole process takes around 5- to 10 seconds. If I would do this directly on the print it would form blobs (at least I think so). This means that it is better to create a purge tower.
    While this is a disadvantage the method should be easily adaptable to more than five materials.

    Ah OK. So it's a kind of automated way of changing filament. In which case, you are right that advancing the tool change position within the gcode file probably isn't going to help much. Ian



  • correction the codes work fine if a print is in progress


Log in to reply