Jump to content
UltiMaker Community of 3D Printing Experts

Setting Z=0


Recommended Posts

Posted · Setting Z=0

The UltiController is supposed to have a Set origin feature but it's not in the Prepare menu anymore. How can I position the bed (manually or not) and then tell the printer this is the new Z=0 ?

Bed levelling is a distinct procedure and Z top switch positioning is another distinct procedure.

P.S. this must have been asked many times before but the answer hasn't been made obvious.

 

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    Most of us don't have a distinction between home and a prepared bed.

    You can do this by messing with the gcodes in the start/end gcode tab. Learn about the gcodes first here:

    http://reprap.org/wiki/G-code

    Or if you only want to do this to one print ever then edit the gcode after you "prepare" (slice) your stl.

    But why do you want to do this? I always run the z home command, then move the print head around with my hand and use a piece of paper to check the height at all 4 corners and make sure there is *very* little space. The paper should be just barely slightly tight.

    Then when you hit print, it levels and goes to your layer 0 height (typically .3mm in Cura) and starts printing at that height above your bed.

     

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    Most of us don't have a distinction between home and a prepared bed.

    You can do this by messing with the gcodes in the start/end gcode tab. Learn about the gcodes first here:

    http://reprap.org/wiki/G-code

    Or if you only want to do this to one print ever then edit the gcode after you "prepare" (slice) your stl.

    But why do you want to do this? I always run the z home command, then move the print head around with my hand and use a piece of paper to check the height at all 4 corners and make sure there is *very* little space. The paper should be just barely slightly tight.

    Then when you hit print, it levels and goes to your layer 0 height (typically .3mm in Cura) and starts printing at that height above your bed.

     

    Bear in mind also that any setting of z=0 via gcodes or the ulticontroller will only last until the printer is power-cycled. The activation of the limit switches are how the printer identifies the origin of it's coordinate system. Once you power-cyle the printer, it has no idea where it is in space until you have performed a homing operation and triggered the switches.

     

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    But why do you want to do this? I always run the z home command, then move the print head around with my hand and use a piece of paper to check the height at all 4 corners and make sure there is *very* little space. The paper should be just barely slightly tight.

    Then when you hit print, it levels and goes to your layer 0 height (typically .3mm in Cura) and starts printing at that height above your bed.

     

    Why I want to set Z=0 ? because moving the bed on its axis is the logical and practical way to set the distance between its surface and the nozzle, which is required for printing properly.

    What you describe is bed levelling (making 4 points of the bed equidistant from the vertical print head).

    Limit switches as their names imply are for something else than homing. For XY it doesn't matter but for Z the precision required is too great to be attained by moving the Z top switch.

    I tried homing automatically then moving the bed manually to the proper distance so as to change where Z=0 really is, but it homes again before every print so it's useless.

    I'm not going to bother with gcode, I want a permanent solution.

     

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    The permanent solution is to use the limit switches for homing before each print after having adjusted the bed to be perfect after homing the z-axis. This is the way all of these types of printers work and the precision is more than enough for this purpose.

    You may want to print this: http://www.thingiverse.com/thing:11033 to make it easier to adjust though.

    Also, unless you add homing switches in addition to the limit switches how do you propose the printer is supposed to know where it is before starting a print? I know using the limit switches for both purposes might not be the correct way of doing it in the world of "real" CNC machines but for our use it works just fine.

     

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    I removed it. Because of the reasons mentioned above. A 3D printer is not a CNC mill, so it shouldn't try to act like one.

    And fine-tuning the Z endstop is a bitch. There are a few solutions on thingiverse that help. But what I always do is not fine-tuning the endstop, but fine-tuning the 4 bed screws. This gives much better control then the Z endstop.

     

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    Also, unless you add homing switches in addition to the limit switches how do you propose the printer is supposed to know where it is before starting a print? I know using the limit switches for both purposes might not be the correct way of doing it in the world of "real" CNC machines but for our use it works just fine.

    Those switches (at least their implementation) are not adapted for calibration, so adding extra switches would only repeat the problem. The printer would know where its print head is because we would have used the Set origin and Store memory functions and it could find it again from the limit switches. example= Z=0 corresponds to Z top limit + 0,45mm

    That screw and plastic fine tuner seems like an excellent solution that should be adopted by Ultimaking. Too bad I can't print it.

    I removed it. Because of the reasons mentioned above. A 3D printer is not a CNC mill, so it shouldn't try to act like one.

    So you removed a feature that made something very difficult very easy, that did not pose any issue, for a reason that nobody cared about ? This can only be a bad decision.

    Both are CNC mills and 3D printers are 3D coordinates machines, so they can share solutions, even use any solution. In the end, it's the usability that rules over.

     

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    I'm not going to bother with gcode, I want a permanent solution.

    Playing with gcode would be a permanent solution. I guess you misunderstood. You asked for a way to *not* run home before printing. The answer is in Cura. Go to the start/end-gcode tab, look for the line that says "move Z to min endstops". Comment that out by putting a semicolon as the first character on the line. DONE. Now when you start printing it will use the current Z height as zero. Or you can *add* a move z command up or down and have the G92 reset *that* position as zero. or you can use the g92 command to set the initial position to any value you want - you can make the start position considered "1" and then the printer will treat zero as 1mm below where it starts printing.

     

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    So there are thousands of users of the ultimaker and a few people have built optical endstops which are probably more accurate than the limit switch but the limit switch seems to be consistent much more than .1mm so it works fine for us.

    The bed warps, tilts, changes over time. Especially the first few months. I have to re-level every day as the part of the bed towards the front keeps drooping from day to day. By now I can now usually do it in under a minute with a piece of paper. It's not a big deal or people would have modified the ultimaker by now. The most common leveling changes are things like stronger springs, 3 screws instead of 4, but changing the Z=0 height isn't an issue.

    I'm sorry you are having trouble printing. Maybe if you post a picture or video of the issue someone can help.

     

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    The limit switch is accurate up to 2 micron in repeatability. Yes, that accurate. It the bed that is changing shape on most machines (but not all of them) depending on the printer this can cause up to 0.5mm difference in tilt. But a tilted platform needs re-calibration not just a different Z start height.

    Manually setting an origin on a CNC mill is done to mark the position on the material that you are milling. With a 3D printer you don't have material, so no need for an origin point on it. The normal start code that everyone uses also overrides the origin point, as well as homing resets the origin point.

    Just because you used it doesn't make it a good idea. Nor makes me stupid for removing it. And it's commented out in the firmware, you can always put it back in yourself. So far you're the first to bitch about it, and before that I've seen multiple questions from people asking what the option did (which could only be explained as "it does nothing in a normal setup")

     

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    Corngolem - I can't help but think that your workflow is probably more complicated than it needs to be. But if you just can't live without the ability to set the origin point manually, just use a text editor to create a one line gcode file, and store it on your SD card.

    The line needs to be:

    G92 X0 Y0 Z0

    If you're only interested in setting Z, then leave the x and y parts out of the line.

    Then, when you have the head where you want it, just run that file from the SD card.

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    That won't work as there is already a g92 in there. And he wanted a *permanent* solution. So I gave him one in my previous post.

     

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    I was just responding to the issue that the 'Set Origin' option is now gone. All that did was to execute a G92 X0 Y0 Z0 command. So putting that in a dedicated gcode file that he can run whenever he wants does EXACTLY the same thing. The command only ever lived in the Prepare menu, as far as I can see, so it went away during printing (to be replaced with the 'Tune' menu). Therefore, this was something that Corngolem wanted to be able to do outside of a print, when running a file from the SD card would be an accessible option.

    I agree that it's kinda redundant, and that you'd also need to edit the start gcode to remove any extra homing commands etc. But since I'm not sure I understand the workflow that we're trying to recreate here... I was merely offering it as an alternative for the missing command that was being complained about.

     

  • Link to post
    Share on other sites

    Posted · Setting Z=0

    Why I want to set Z=0 ? because moving the bed on its axis is the logical and practical way to set the distance between its surface and the nozzle, which is required for printing properly.

    What you describe is bed levelling (making 4 points of the bed equidistant from the vertical print head).

    Limit switches as their names imply are for something else than homing. For XY it doesn't matter but for Z the precision required is too great to be attained by moving the Z top switch.

    I tried homing automatically then moving the bed manually to the proper distance so as to change where Z=0 really is, but it homes again before every print so it's useless.

    I'm not going to bother with gcode, I want a permanent solution.

     

    I agree with you. My CubeX separates the bed leveling process from the Z-height adjustment and I've found it to be easier to get a really level bed without having to set perfect print height at the same time. Once it's perfectly level, the Z-height setting is truly the same over the entire bed when you set it. On the other hand, it's a 3 point level system and I prefer the 4 point on my Ultimaker for the leveling aspect. Just because a plane CAN be defined with only 3 points, doesn't mean it SHOULD be defined that way. Because it's 3 points, when you lower the right rear corner, the front left corner moves up. It's definitely trickier to get to "level" than four point. At least the CubeX has lock nuts which prevent the bed level from changing print-to-print. I have to level my bed every 3 or 4 prints on the Ultimaker. I did it once on the CubeX and tightened the lock nuts down to keep it that way. Plus, the plastic build plate isn't perfectly flat on my Ultimaker. It has a slight upward warp on the right side. It makes large prints less accurate and perfect leveling impossible. The build plate on my CubeX is laminated layers of glass with a white ceramic surface. It's really flat with no flex. If it just had 4 point leveling, it would be perfect. As it is, neither is perfect.

     

  • Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    • Our picks

      • UltiMaker Cura 5.3 stable released
        In this stable release, Cura 5.3 achieves yet another huge leap forward in 3D printing thanks to material interlocking! As well as introducing an expanded recommended print settings menu and lots of print quality improvements. Not to mention, a whole bunch of new printer profiles for non-UltiMaker printers!
          • Thanks
          • Like
        • 24 replies
      • Here it is. The new UltiMaker S7
        The UltiMaker S7 is built on the success of the UltiMaker S5 and its design decisions were heavily based on feedback from customers.
         
         
        So what’s new?
        The obvious change is the S7’s height. It now includes an integrated Air Manager. This filters the exhaust air of every print and also improves build temperature stability. To further enclose the build chamber the S7 only has one magnetically latched door.
         
        The build stack has also been completely redesigned. A PEI-coated flexible steel build plate makes a big difference to productivity. Not only do you not need tools to pop a printed part off. But we also don’t recommend using or adhesion structures for UltiMaker materials (except PC, because...it’s PC). Along with that, 4 pins and 25 magnets make it easy to replace the flex plate perfectly – even with one hand.
         
        The re-engineered print head has an inductive sensor which reduces noise when probing the build plate. This effectively makes it much harder to not achieve a perfect first layer, improving overall print success. We also reversed the front fan direction (fewer plastic hairs, less maintenance), made the print core door magnets stronger, and add a sensor that helps avoid flooding.
         

         
        The UltiMaker S7 also includes quality of life improvements:
        Reliable bed tilt compensation (no more thumbscrews) 2.4 and 5 GHz Wi-Fi A 1080p camera (mounted higher for a better view) Compatibility with 280+ Marketplace materials Compatibility with S5 project files (no reslicing needed) And a whole lot more  
        Curious to see the S7 in action?
        We’re hosting a free tech demo on February 7.
        It will be live and you can ask any questions to our CTO, Miguel Calvo.
        Register here for the Webinar
          • Like
        • 18 replies
      • UltiMaker Cura Alpha 🎄 Tree Support Spotlight 🎄
        Are you a fan of tree support, but dislike the removal process and the amount of filament it uses? Then we would like to invite you to try this special release of UltiMaker Cura. Brought to you by our special community contributor @thomasrahm
         
        We generated a special version of Cura 5.2 called 5.3.0 Alpha + Xmas. The only changes we introduced compared to UltiMaker Cura 5.2.1 are those which are needed for the new supports. So keep in mind, this is not a sneak peek for Cura 5.3 (there are some really cool new features coming up) but a spotlight release highlighting this new version of tree supports.  
          • Like
        • 22 replies
    ×
    ×
    • Create New...