Timing of M163 color definition

edited November 1 in Repetier-Firmware
I have a problem with the color change starting earlier than defined.
The pink (going from left to right) should start at the middle of the cube, but instead already starts at the left corner.
Checking with a gcode viewer the M163 command is placed at the middle of the cube, but looking at the extruders and the
end result I can see that it starts ealier than expected.


What might be the reason for this?


I only use one virtual extruder and when I change color I just overwrite T0 like this
M163 S0 P0
M163 S1 P0
M163 S2 P0
M163 S3 P0
M163 S4 P1
M164 S0
T0

Comments

  • edited November 1
    //
  • Yes, they are not made to be used during a print. If you need exact timing prepend a M400 before the first M163 and firmware will first stop all motion at that point and then change it. Will cause visible seam if you do not use correct advance, but is the only way to get correct timing.

    And even then you will see a delay depending on how long it takes for the extruder to fill it with new color.
  • Okay, not exactly sure what during a print means? Even if the line is segmented like this?
    G1 X1
    G1 X2
    M163..
    G1 X3

    The color change in my case will appear before G1 X2, though it's set to change AFTER G1 X2.
    Is there a fixed amount of advance?

    I'm aware of the delay caused by the mixing chamber and thought maybe repetier tries to preposition the color change so there is less material to wipe?!


  • During print means while moving. You need to sync it with M400 before your M163 to get correct timing. We do not alter positions - the problem is that moves are buffered and executed independently from mixed in commands so timings do not match unless you sync with M400 which causes the moves to stop and then execute the commands and then continues to move. That buffering is required for good quality prints.
  • Ah Okay, thank you, I think I understand. There is no way to know the buffer in advance, is it? It depends on the individual gcode? No way to reliably preposition via postprocessing? Segmentation of every line to 0.01mm will help, but hard to handle for bigger files.
    I will try with M400 and check the seam? Using the newest dev version will help, because of the improved advance feature?
  • Yes 1.0.4 has best advance in repetier and with direct drive extruders you get good pressure control so thickening from decelleration/acceleration is less visible then without.
  • Thank you, tested M400 and the color change starts at the right spot now.
    I could not see any visible pause or blob forming.
Sign In or Register to comment.