E3D ToolChanger - Z positioning Issues

Discussion in 'Tool heads & ToolChanger' started by Ben Norton, May 26, 2020.

  1. Ben Norton

    Ben Norton Member

    Joined:
    May 14, 2020
    Messages:
    7
    Likes Received:
    0
    Hello All

    I have been working on my Toolchanger for a little while now and I have always had an issue with the Z positioning during a print. I believe this is caused by the fact that my 3 tools have differing Z offsets (2x V6 and 1x Super Volcano) and that the bed lowers during every tool change but does not raise up again at the end (I tried to configure this by raising the bed back up with no luck as the z offsets were not playing nice).

    Previously, in Prusa Slicer 2.2.0, I was been able to overcome this issue by saving the current position with G60 S0 before a tool change and then telling the toolhead to return to the saved Z position after a toolchange (in the filament custom GCode). I have now moved to Simpify3D for some other benefits it has, but I am having this issue again and am not able to use the same method I was using in Prusa Slicer.

    I have heard from @Greg Holloway that most people can get away with using any slicer as all of the toolchanges and tool offsets are controlled by the firmware. Are you able to weigh in on this?

    Specs:
    - Duet 2 Wifi (1.02 or later) with Duex5
    - Reprap Firmware
    - Firmware Version 2.03 (2019-06-13b2)

    Thanks
    Benjamin Norton
     
  2. Greg Holloway

    Greg Holloway Administrator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    946
    Likes Received:
    615
    Update the firmware. There have been some bugs to do with offsets in earlier versions. If you can manage it, change to RRF3 too, it has waaaay more features and functions that RRF2, and runs on the Duet2.


    https://github.com/Duet3D/RepRapFirmware/releases
     
  3. Clarin

    Clarin Member

    Joined:
    Jan 10, 2020
    Messages:
    8
    Likes Received:
    0
    It would be great if you could post the config, ... files for a standard configuration with the updated RRF3
     
  4. Greg Holloway

    Greg Holloway Administrator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    946
    Likes Received:
    615
    I don't have one at this time, I'm still on Duet2. I do intend to work with the Duet3 config at some point.
     
  5. Clarin

    Clarin Member

    Joined:
    Jan 10, 2020
    Messages:
    8
    Likes Received:
    0
    Perfect, I was asking for Duet 2 not the 3
     
  6. Greg Holloway

    Greg Holloway Administrator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    946
    Likes Received:
    615
  7. Clarin

    Clarin Member

    Joined:
    Jan 10, 2020
    Messages:
    8
    Likes Received:
    0
  8. Greg Holloway

    Greg Holloway Administrator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    946
    Likes Received:
    615

    Ah, crossed wires here. There isn't any RRF3 implementation yet, still RRF2 on the Duet2.
     
  9. Clarin

    Clarin Member

    Joined:
    Jan 10, 2020
    Messages:
    8
    Likes Received:
    0
    Cool, looking forward to have the update, do you have an estimated time?
    Thanks
     
  10. Greg Holloway

    Greg Holloway Administrator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    946
    Likes Received:
    615
    Soon™
     
    Michael Pearson and Clarin like this.
  11. Krayn

    Krayn Well-Known Member

    Joined:
    Aug 11, 2019
    Messages:
    49
    Likes Received:
    13
    I had some weird problems with toolchanges after a certain duet firmware update. I'm not sure why it started happening but it's possible it was my fault. My config is barely recognizable from the stock config on the github. I ended up having to wrap all of my movements in my toolchange scripts to G53s or I would crash when I switched from certain tools to others.

    Due to firmware retracting I had the same problem where my z height wouldn't return after a toolchange. Prusa slicer with firmware retraction almost never throws z moves unless its needed and toolchanges weren't one of them.
    Most importantly (and relevant to you) is that my prime script now throws out a G0 R2 Z0 F50000 as its last line. This moves the z position back the point it was pre-toolchange. The R2 position is saved automatically by duet on all toolchanges and so shouldn't require any special slicer support for it to work. I just throw that line at the end of Post[N].g or the end of your prime script. Specifically if you only specify Z0 it will only return to the previous Z height but take the tool offset into account, other axes not mentioned will be ignored.
     
  12. Ben Norton

    Ben Norton Member

    Joined:
    May 14, 2020
    Messages:
    7
    Likes Received:
    0
    Hello All
    Thank you all for your reply.

    @Greg Holloway - I have updated the firmware to the lastest Rev 2 (2.05.1) but with no changes to my issue unfortunately. I am still seeing a change in the Z while printing. It is on my list to update to RRF3 but with deadlines at work I have to meet, I am unable to do it at this point. Can you think of any other reason I am facing this issue?

    @Krayn - Previously I was using this trick but was manually saving the position with G60 S0 before a toolchange (which works in Prusa Slicer). It seems like taking out this manual save and using the firmware saved position in slot 2 hasn't worked for me either. I still face the same issue as before.

    I have attached a zip containing my sys files if you could please take a look to see if I have done something wrong there.

    Thank you for all of the help
    Ben Norton
     

    Attached Files:

  13. Krayn

    Krayn Well-Known Member

    Joined:
    Aug 11, 2019
    Messages:
    49
    Likes Received:
    13
    I don't know exactly how the duet firmware handles it but here are two potential differences between your tool change scripts and mine:

    1- I don't use any M208 commands to reset the maximum and minimum travel dynamically based on hotend. This seems like a smart move but I wonder if this is wiping out saved positions in firmware. I don't actually know but I figure I would point this out as I don't touch the M208 command at all in my toolchanges.

    2- I use G0 instead of G1 to recall position ( I don't think this matters, but again just noting a difference) but more importantly I don't actually recall a position until I get to my prime script. This means I don't try and recall a position in the middle of a toolchange, rather I wait until after that process is done. According to the duet wiki the position is saved to R2 at the start of a toolchange so the value SHOULD be in place but I wonder if for some reason the value isn't available mid toolchange.

    I can try and move some of my commands around tomorrow to see if I can replicate the issue. I don't have simplify 3d at the moment, I am waiting for their next version to come out before I pull the trigger, but there is a post on their forums that seems to show a way to add custom gcode for a toolchange. Worst case scenario you could try and replicate what you did in prusaslicer with Simplify3d.

    It seems like the solution in S3D according to the forum post is:
    Code:
    {IF NEWTOOL=0} S60 S0
    {IF NEWTOOL=0} T0
    {IF NEWTOOL=0} S0 R0 Z0 F5000
    
    {IF NEWTOOL=1} S60 S0
    {IF NEWTOOL=1} T1
    {IF NEWTOOL=1} S0 R0 Z0 F5000
    
    {IF NEWTOOL=2} S60 S0
    {IF NEWTOOL=2} T2
    {IF NEWTOOL=2} S0 R0 Z0 F5000
     
  14. Ben Norton

    Ben Norton Member

    Joined:
    May 14, 2020
    Messages:
    7
    Likes Received:
    0
    Hello Krayn

    Thank you again for your reply. That would be amazing if you could do some investigation on those changes in your config if you can find the time. Even just for our own knowledge.
    The M208 command is a handy one, that small change allows the bed to only move down when it needs to during a toolchange.

    So that code is placed in the toolchange script tab in S3D? I will give that a go when I get a chance.
    I am currently now facing an offset in the Y direction between my tools, but I think it's only down to poor calibration of the Super volcano extruder. Its very to calibrate it when trying to print TPU at a high flow.
     
  15. Krayn

    Krayn Well-Known Member

    Joined:
    Aug 11, 2019
    Messages:
    49
    Likes Received:
    13
    I'll give it a test as soon as I can. I have been distracted building a shapeoko enclosure.

    As for S3D: You place it in the toolchange scripts tab.
     
  16. Nibbels

    Nibbels Well-Known Member

    Joined:
    Dec 12, 2019
    Messages:
    164
    Likes Received:
    31
    Hello there.
    I suppose some of you can continue reading here:
    # https://forum.e3d-online.com/threads/layer-heights-different-between-tools.3637/

    If your Z coordinate shifts whenever you pause and unpause.
    Or
    if your Z coordinate shifts whenever you change your tool without an additional G1 Zxxx

    Then upgrade to RRF 3.01 RC11 or later. I guess the to 3.1.x or later at best.

    This is my active 3.1.1 configuration: https://github.com/Nibbels/e3d-toolchanger-config

    But be aware that I switched the stepper drivers for X, Y, Z, C, E:E:E:E to other ports.
     
    #16 Nibbels, May 29, 2020
    Last edited: May 29, 2020
  17. Ben Norton

    Ben Norton Member

    Joined:
    May 14, 2020
    Messages:
    7
    Likes Received:
    0
    Hi Krayn

    That would be amazing, thank you. Let me know if you have any luck.

    Nibbels - Thank you for your suggestion and the link to the useful forum. I am wanting to make the switch to RF3 but I am under a deadline for work so it will have to wait for now!
     
  18. Ben Norton

    Ben Norton Member

    Joined:
    May 14, 2020
    Messages:
    7
    Likes Received:
    0
    Hi @Nibbels

    I found the time to update my firmware to RRF3 and it all went relatively smoothly.
    I used your sys files as a guide and implemented the change to my config.

    I ran into an issue with the homing of the C axis in that after it has finished homing it did not fully move back to the unlock position (parallel to the build plate). I had to extend the min/max of the axis and change the position within the unlock macro to 255 to fix this.
    Was this set to 123 deliberately? I have checked my E steps and other motor settings and they match your settings.

    Thanks
     
  19. Nibbels

    Nibbels Well-Known Member

    Joined:
    Dec 12, 2019
    Messages:
    164
    Likes Received:
    31
    Hmm,
    on my machine the position is nearly korrect. +-2° maybe.

    I do remember some weird things ... ?
    As I remember it, I could have made two choices when assembling the toolhead. It had something to do with the alignment of the inner "C-Endstop-T-Pin" which is supposed to "crash" within the coupler.
    I remember that I didnt know why my toolhead was "the other way around". But I cannot tell details. So guess I changed it by disassembling the mechanical parts of the coupler at the back, pulled the inner axis, turned it somehow and reinserted the T-Pin. I cannot tell you that my setting is correct now, but the switch somehow turned my C axis scale.
    I hope my brain gets back this information, then I can hopefully tell you more. If you figure out the solution, please tell me ^^

    Another problem I had was, that the front pin got loose once. Be aware of this.
    And I once forgot to tighten the grub screw of the gear at the back. That pulled a tool and crashed a nozzle tip xD.

    Once my coupler did correctly stop at the crash point. I did not change the firmware and suddenly the sensorless homing stopped working again. But there is this fallback. So It does not really matter.

    About toolhead fans: I did never test them! Family first ... Those are still on my todo list.
     
  20. Ben Norton

    Ben Norton Member

    Joined:
    May 14, 2020
    Messages:
    7
    Likes Received:
    0
    That's very interesting, let me know if you can remember any more of the details.
    At the moment the tool changes seem reliable at C position 255. Your config at 123 is half of that which leads me to think it is moving only half of what it should be, even though the E steps and micro-stepping are the same as before.

    One thing that has always confused me is the option to disable the "Run free Macro", "Run pre macro" and "Run post macro" in the UI settings under tool changes. What exactly does this change?

    Thank you for all of your help.
     

Share This Page