Wiring Z-stop directly to hot end and aluminum bed / spacersBed leveling method not working with Repetier firmware 0.92.9?Auto bed levelling with Rumba board - Servo not deployingUnable to install auto-bed levelling sensor into my Anet A8Problem with print bed height on Creality Ender 4Inductive Sensor in 24 V machine?3DTouch sensor fails after probe deployment and triggeringM12 vs M18 V5 inductive probeThe BLTouch is hitting the bed on the double-probingHow to connect optocoupler module to ABL sensor and Ender 3 boardMarlin Bed-Leveling Vs Skew Correction

Pgfplots fillbetween and Tikz shade

How can I deal with someone that wants to kill something that isn't supposed to be killed?

How did pilots avoid thunderstorms and related weather before “reliable” airborne weather radar was introduced on airliners?

Why can't a country print its own money to spend it only abroad?

Does switching on an old games console without a cartridge damage it?

Where is this photo of a group of hikers taken? Is it really in the Ural?

Does Impedance Matching Imply any Practical RF Transmitter Must Waste >=50% of Energy?

What is a plausible power source to indefinitely sustain a space station?

Why did NASA use Imperial units?

Does quantity of data extensions impact performance?

How often should alkaline batteries be checked when they are in a device?

How can I calculate the cost of Skyss bus tickets

Can't understand how static works exactly

why my sourdough starter has in the top the liquid separated from the flour?

How am I supposed to put out fires?

What kind of world would drive brains to evolve high-throughput sensory?

Why is there an extra "t" in Lemmatization?

What rules turn any attack that hits a given target into a critical hit?

What was the rationale behind 36 bit computer architectures?

Found more old paper shares from broken up companies

Inverse Colombian Function

Can GPL and BSD licensed applications be used for government work?

Why are Oscar, India, and X-Ray (O, I, and X) not used as taxiway identifiers?

I have a domain, static IP address and many devices I'd like to access outside my house. How do I route them?



Wiring Z-stop directly to hot end and aluminum bed / spacers


Bed leveling method not working with Repetier firmware 0.92.9?Auto bed levelling with Rumba board - Servo not deployingUnable to install auto-bed levelling sensor into my Anet A8Problem with print bed height on Creality Ender 4Inductive Sensor in 24 V machine?3DTouch sensor fails after probe deployment and triggeringM12 vs M18 V5 inductive probeThe BLTouch is hitting the bed on the double-probingHow to connect optocoupler module to ABL sensor and Ender 3 boardMarlin Bed-Leveling Vs Skew Correction






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








3












$begingroup$


So I am really fed up with inductive probes. The one I am using keeps getting shifted slightly every time I switch nozzles or run an oozy print. That means I have to autolevel again, then manually set a Z-offset (as I would have anyway if I didn't have an inductive probe).



On my Lulzbot Mini there is a different scenario. There are four washers at each part of the bed. The nozzle is "grounded" so that when the Mini touches the washers, a current is created that seems to act as the Z-stop. Surprisingly there isn't much out there for a DIY implementation of this.



Since I have an aluminum bed (and aluminum is conductive), I am thinking of doing the following:



1) Put one wire from the Z-stop ground pin to the aluminum bed. Make sure it is away from the wires for the heater / thermister (?)



2) Put one wire from the Z-stop 5V into the heating block of my nozzle.



When the nozzle probes the bed, a current will be created from the 5V heating block, through the conductive nozzle, into the conductive bed, to the Z-stop ground.



I'm always unsure when it comes to circuitry. Will there be any dangerous interference from this technique from, say, the bed heating circuit? I'm not sure what kind of protection circuitry are on each of the Arduino's pins, and I'd rather not fry my board if this sounds like a bad idea to someone.



I figure most people don't do this because they have sheets of PEI or some other non-conductive material on their bed. I can use PET tape but still leave holes in the tape for this autobed leveling probe. It would be really great if it worked and wasn't dangerous.



I shouldn't even need the third pin?










share|improve this question









$endgroup$











  • $begingroup$
    You mean the method that is used in some mills and CNC to find the corners and top of a workpiece?
    $endgroup$
    – Trish
    Jul 14 at 13:20










  • $begingroup$
    ^ Not sure. But just to add to my complaints: Inductive probes take up space that could be used for extruders, my one in particular required a 3D printed piece that was getting warped, and in fact they shrink the overrall bed size because you can't always move an extruder to a spot on the axis that is blocked by the inductive probe
    $endgroup$
    – steve antwan
    Jul 14 at 22:50










  • $begingroup$
    even a conductive probe (what you want to do!) takes space.
    $endgroup$
    – Trish
    Jul 15 at 8:50










  • $begingroup$
    ^ Yes I know what you mean now. In my case it takes significantly less space though
    $endgroup$
    – steve antwan
    Jul 15 at 13:33


















3












$begingroup$


So I am really fed up with inductive probes. The one I am using keeps getting shifted slightly every time I switch nozzles or run an oozy print. That means I have to autolevel again, then manually set a Z-offset (as I would have anyway if I didn't have an inductive probe).



On my Lulzbot Mini there is a different scenario. There are four washers at each part of the bed. The nozzle is "grounded" so that when the Mini touches the washers, a current is created that seems to act as the Z-stop. Surprisingly there isn't much out there for a DIY implementation of this.



Since I have an aluminum bed (and aluminum is conductive), I am thinking of doing the following:



1) Put one wire from the Z-stop ground pin to the aluminum bed. Make sure it is away from the wires for the heater / thermister (?)



2) Put one wire from the Z-stop 5V into the heating block of my nozzle.



When the nozzle probes the bed, a current will be created from the 5V heating block, through the conductive nozzle, into the conductive bed, to the Z-stop ground.



I'm always unsure when it comes to circuitry. Will there be any dangerous interference from this technique from, say, the bed heating circuit? I'm not sure what kind of protection circuitry are on each of the Arduino's pins, and I'd rather not fry my board if this sounds like a bad idea to someone.



I figure most people don't do this because they have sheets of PEI or some other non-conductive material on their bed. I can use PET tape but still leave holes in the tape for this autobed leveling probe. It would be really great if it worked and wasn't dangerous.



I shouldn't even need the third pin?










share|improve this question









$endgroup$











  • $begingroup$
    You mean the method that is used in some mills and CNC to find the corners and top of a workpiece?
    $endgroup$
    – Trish
    Jul 14 at 13:20










  • $begingroup$
    ^ Not sure. But just to add to my complaints: Inductive probes take up space that could be used for extruders, my one in particular required a 3D printed piece that was getting warped, and in fact they shrink the overrall bed size because you can't always move an extruder to a spot on the axis that is blocked by the inductive probe
    $endgroup$
    – steve antwan
    Jul 14 at 22:50










  • $begingroup$
    even a conductive probe (what you want to do!) takes space.
    $endgroup$
    – Trish
    Jul 15 at 8:50










  • $begingroup$
    ^ Yes I know what you mean now. In my case it takes significantly less space though
    $endgroup$
    – steve antwan
    Jul 15 at 13:33














3












3








3


1



$begingroup$


So I am really fed up with inductive probes. The one I am using keeps getting shifted slightly every time I switch nozzles or run an oozy print. That means I have to autolevel again, then manually set a Z-offset (as I would have anyway if I didn't have an inductive probe).



On my Lulzbot Mini there is a different scenario. There are four washers at each part of the bed. The nozzle is "grounded" so that when the Mini touches the washers, a current is created that seems to act as the Z-stop. Surprisingly there isn't much out there for a DIY implementation of this.



Since I have an aluminum bed (and aluminum is conductive), I am thinking of doing the following:



1) Put one wire from the Z-stop ground pin to the aluminum bed. Make sure it is away from the wires for the heater / thermister (?)



2) Put one wire from the Z-stop 5V into the heating block of my nozzle.



When the nozzle probes the bed, a current will be created from the 5V heating block, through the conductive nozzle, into the conductive bed, to the Z-stop ground.



I'm always unsure when it comes to circuitry. Will there be any dangerous interference from this technique from, say, the bed heating circuit? I'm not sure what kind of protection circuitry are on each of the Arduino's pins, and I'd rather not fry my board if this sounds like a bad idea to someone.



I figure most people don't do this because they have sheets of PEI or some other non-conductive material on their bed. I can use PET tape but still leave holes in the tape for this autobed leveling probe. It would be really great if it worked and wasn't dangerous.



I shouldn't even need the third pin?










share|improve this question









$endgroup$




So I am really fed up with inductive probes. The one I am using keeps getting shifted slightly every time I switch nozzles or run an oozy print. That means I have to autolevel again, then manually set a Z-offset (as I would have anyway if I didn't have an inductive probe).



On my Lulzbot Mini there is a different scenario. There are four washers at each part of the bed. The nozzle is "grounded" so that when the Mini touches the washers, a current is created that seems to act as the Z-stop. Surprisingly there isn't much out there for a DIY implementation of this.



Since I have an aluminum bed (and aluminum is conductive), I am thinking of doing the following:



1) Put one wire from the Z-stop ground pin to the aluminum bed. Make sure it is away from the wires for the heater / thermister (?)



2) Put one wire from the Z-stop 5V into the heating block of my nozzle.



When the nozzle probes the bed, a current will be created from the 5V heating block, through the conductive nozzle, into the conductive bed, to the Z-stop ground.



I'm always unsure when it comes to circuitry. Will there be any dangerous interference from this technique from, say, the bed heating circuit? I'm not sure what kind of protection circuitry are on each of the Arduino's pins, and I'd rather not fry my board if this sounds like a bad idea to someone.



I figure most people don't do this because they have sheets of PEI or some other non-conductive material on their bed. I can use PET tape but still leave holes in the tape for this autobed leveling probe. It would be really great if it worked and wasn't dangerous.



I shouldn't even need the third pin?







z-probe






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Jul 14 at 4:20









steve antwansteve antwan

926 bronze badges




926 bronze badges











  • $begingroup$
    You mean the method that is used in some mills and CNC to find the corners and top of a workpiece?
    $endgroup$
    – Trish
    Jul 14 at 13:20










  • $begingroup$
    ^ Not sure. But just to add to my complaints: Inductive probes take up space that could be used for extruders, my one in particular required a 3D printed piece that was getting warped, and in fact they shrink the overrall bed size because you can't always move an extruder to a spot on the axis that is blocked by the inductive probe
    $endgroup$
    – steve antwan
    Jul 14 at 22:50










  • $begingroup$
    even a conductive probe (what you want to do!) takes space.
    $endgroup$
    – Trish
    Jul 15 at 8:50










  • $begingroup$
    ^ Yes I know what you mean now. In my case it takes significantly less space though
    $endgroup$
    – steve antwan
    Jul 15 at 13:33

















  • $begingroup$
    You mean the method that is used in some mills and CNC to find the corners and top of a workpiece?
    $endgroup$
    – Trish
    Jul 14 at 13:20










  • $begingroup$
    ^ Not sure. But just to add to my complaints: Inductive probes take up space that could be used for extruders, my one in particular required a 3D printed piece that was getting warped, and in fact they shrink the overrall bed size because you can't always move an extruder to a spot on the axis that is blocked by the inductive probe
    $endgroup$
    – steve antwan
    Jul 14 at 22:50










  • $begingroup$
    even a conductive probe (what you want to do!) takes space.
    $endgroup$
    – Trish
    Jul 15 at 8:50










  • $begingroup$
    ^ Yes I know what you mean now. In my case it takes significantly less space though
    $endgroup$
    – steve antwan
    Jul 15 at 13:33
















$begingroup$
You mean the method that is used in some mills and CNC to find the corners and top of a workpiece?
$endgroup$
– Trish
Jul 14 at 13:20




$begingroup$
You mean the method that is used in some mills and CNC to find the corners and top of a workpiece?
$endgroup$
– Trish
Jul 14 at 13:20












$begingroup$
^ Not sure. But just to add to my complaints: Inductive probes take up space that could be used for extruders, my one in particular required a 3D printed piece that was getting warped, and in fact they shrink the overrall bed size because you can't always move an extruder to a spot on the axis that is blocked by the inductive probe
$endgroup$
– steve antwan
Jul 14 at 22:50




$begingroup$
^ Not sure. But just to add to my complaints: Inductive probes take up space that could be used for extruders, my one in particular required a 3D printed piece that was getting warped, and in fact they shrink the overrall bed size because you can't always move an extruder to a spot on the axis that is blocked by the inductive probe
$endgroup$
– steve antwan
Jul 14 at 22:50












$begingroup$
even a conductive probe (what you want to do!) takes space.
$endgroup$
– Trish
Jul 15 at 8:50




$begingroup$
even a conductive probe (what you want to do!) takes space.
$endgroup$
– Trish
Jul 15 at 8:50












$begingroup$
^ Yes I know what you mean now. In my case it takes significantly less space though
$endgroup$
– steve antwan
Jul 15 at 13:33





$begingroup$
^ Yes I know what you mean now. In my case it takes significantly less space though
$endgroup$
– steve antwan
Jul 15 at 13:33











3 Answers
3






active

oldest

votes


















3












$begingroup$

Aluminium is conductive, but aluminium oxide is not, which is just so what there (unavoidably, since aluminium rapidly oxidises in air) happens to be a thin layer of on top of your bed. The coating is very thin, but it might foul your plans. It would work better with a sharp probe (that can puncture the layer) than with a 3D printer nozzle. You should be careful, because your probing method might be unreliable (which could cause the nozzle to crash into the bed).



Wiring the endstop 5V directly to ground will create a short circuit which will damage your printer. You should use the third (signal) pin and ground instead.






share|improve this answer











$endgroup$




















    0












    $begingroup$

    OP here. The top of the aluminum bed is not conductive, but the sides of it are. You can re-create the Lulzbot Mini endstop set-up by connecting the Z-stop ground to the side of the aluminum bed, then using binder clips and nickels as the "washers". In my case I had to use quarters because my bed was really big and the extruder came down far from its edges.



    To do this, you'll need:



    1. A multimeter and a >100 Ohm resistor for safety

    2. Some nickels (or any conductive coin)

    3. Some binder clips (with steel insides)

    4. Some aluminum foil (increases reliability of setup)

    5. A Z end-stop

    Building conductive washer perimeter



    Create a conductive washer system along the sides of your aluminum bed by:



    1. Wrapping a nickel-sized amount of aluminum foil on the bottom, side, and top of the bed


    2. Placing a nickel on top of that aluminum foil on the bedttop



    3. Placing a steel-inside binder clip to hold down the nickel



      Do this multiple times along the perimeter of the bed. It seems you are limited to an evenly-spaced grid structure by the software. In my case I placed the washers at:



    X = 0, Y = 0
    X = 0.5 * Max_X, Y=0
    X = Max_X, Y = 0
    X = 0, Y = Max_Y
    X = 0.5*Max_X, Y = 0.5 * Max_Y
    X = Max_X, Y = Max_X


    The aluminum foil provides a contact between the side of the bed and the top and bottom of it. The binder clip can be pressed inwards against the aluminum foil to ensure high reliability. However, the binder clip can get loose. So, using aluminum foil helps make the bottom of the bed conductive too, increasing the surface area of the contact for the binder clip.



    Attaching red wire to hot end



    Attach the red part of the Z-endstop to your heatblock. It must be in the heatblock somewhere. The thermister hole might work. For me, I was able to slide it in a small space that's used to tighten the screw that holds the heat rod.



    Now we want to attach the Z-stop ground (black wire) to the conductive perimeter.



    Before attaching Z-stop ground underneath one of the binder clips, a word of caution...



    The first time I did this, I stupidly placed a binder clip on top of the 12V heat rod attached to the bottom of the aluminum bed. This put all sides of the aluminum bed (and my conductive washers) at 12V, which created a short into the Z-stop ground pin when I connected it. This resulted in my Z-stop ground pin SMOKING up from the heat going through it. As a word of precaution, you should attach a resistor between the Z-stop ground pin and the side of the aluminum bed should something go wrong in the future. I used a 2.1 kOhm resistor I had laying around. This will limit the current going into the Z-stop ground pin. Since everyone's aluminum bed will be different (for e.g. the bottom of my bed is non-conductive, but yours might be conductive), it is really important to be careful here.



    Before powering on, test to see that all of the nickels have low resistance between them. Test to see that the hot end nozzle is connected to the Z-stop red wire. Use a multimeter for this.



    If you don't have a resistor, wait to attach the Z-stop ground before powering on. This will let you check the voltage to tell if your aluinum bed sides are connected to the 12V heat rod. After that, you can power off and attach the Z-stop ground and power on again.



    Setting up the software



    If you've flashed your firmware before, setting up the software is easy. Go to the "AUTO_BED" section of Configuration.h. First thing to do is to set your Z-offset to about 2.0mm and remove any existing offsets you might've had for a Z-probe (for e.g. X_PROBE_OFFSET... = -40 was set for me). The Z-offset should be set to a positive value this time. Don't forget to change this setting in EEPROM if you set itas well!



    Since I'm only probing the perimeter, I use BILINEAR bed leveling for this one. Bilinear calculates points automatically for me, so I had to set up my perimeter according to an evenly spaced grid like I listed in "Building conductive washer perimeter".



    First I activated AUTO_BED_LEVELING_BILINEAR



    And my IF tree looks like:



    #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)

    // Set the number of grid points per dimension.
    #define GRID_MAX_POINTS_X 3
    #define GRID_MAX_POINTS_Y 2

    // Set the boundaries for probing (where the probe can reach).
    #define LEFT_PROBE_BED_POSITION 1
    #define RIGHT_PROBE_BED_POSITION 264
    #define FRONT_PROBE_BED_POSITION 1
    #define BACK_PROBE_BED_POSITION 264

    // The Z probe minimum outer margin (to validate G29 parameters).
    #define MIN_PROBE_EDGE 0

    // Probe along the Y axis, advancing X after each column
    //#define PROBE_Y_FIRST

    #if ENABLED(AUTO_BED_LEVELING_BILINEAR)

    // Beyond the probed grid, continue the implied tilt?
    // Default is to maintain the height of the nearest edge.

    #define EXTRAPOLATE_BEYOND_GRID
    //
    // Experimental Subdivision of the grid by Catmull-Rom method.
    // Synthesizes intermediate points to produce a more detailed mesh.
    //
    #define ABL_BILINEAR_SUBDIVISION
    #if ENABLED(ABL_BILINEAR_SUBDIVISION)
    // Number of subdivisions between probe points
    #define BILINEAR_SUBDIVISIONS 3
    #endif

    #endif
    #elif // other bed leveling trees


    Feel free to disable EXTRAPOLATE_BEYOND_GRID and BILINEAR_SUBDIVISIONS because they might not be necessary for you.



    Time to autobed level



    Of course, even with all that work, you're still going to want to be able to power off your 3D printer if it doesn't recognize even one of the nickels. So stay close to your power source and be sure to power it off safely if it doesn't recognize one of your contacts or if something comes loose. For example one of my coins was very dirty and yea, it made a huge difference in that corner, so I had to swap it out.



    Last but not least, if you have some extra binder clips, you can enable the "Nozzle cleaning" feature in Configuration.h, just by binder-clipping the dark-green layer of a sponge to the board. Then just set the X-Y coordinates of that layer in the nozzle_clean feature in Configuration.h and make your life a lot easier. These two features working well together basically mean you don't have to do anything between multiple prints except remove the prints from the bed.






    share|improve this answer











    $endgroup$












    • $begingroup$
      I really wanted to add two more perimeter points at: (0, 0.5*MAX_Y) and (MAX_X, 0.5*MAX_Y). But I couldn't do this using Bilinear bed leveling. There is also something called Unified bed leveling, but I couldn't tell if that would be useful. The reason this is a headache is that you obviously don't want to continue the grid, as it would require putting a nickel right in the center of the bed (disrupting prints where the bed temperature is most accurate). If anyone has any advice on how to add just these two points it would be much appreciated
      $endgroup$
      – steve antwan
      Jul 14 at 22:48











    • $begingroup$
      Update: Printing very consistently, but you will want to include the sponge like I suggested at the end and do an autoclean ("G12") after killed prints. Repetier-Host makes this easy. Also add it to your start code. It really only works reliably when you G12 before going home
      $endgroup$
      – steve antwan
      Jul 15 at 22:56


















    0












    $begingroup$

    This will not work reliably.



    I know, I have tried it, for a couple of years, with poor consistency.



    Now, I will tell you that it worked better than the parallax IR sensors. It worked better than trying to slam the head into the bed and listen for the click.



    I used the brass nozzle and the aluminum bed as a switch to detect the bed position.



    I used ABS slurry on the bed. With a 100°C bed the ABS was soft enough for the nozzle to make contact. Elmer's Glue for PLA also was soft enough.



    But, with the elasticity I had in the synthetic Z-axis of the delta machine, the time delay to much the bed adhesive out of the way, and the general problem of trying to conduct electricity through an aluminum oxide layer, I had variability of about 0.1 mm, which was far to much to give a reliable first layer.



    To "level" the delta bed, I would touch each point several times (with a clean bed) and fit my leveling function to the noisy data. For finding my zero reference at the beginning of a print, I would touch off three time and only use the third one. This helped, but it was still super noisy.



    I have subsequently incorporated a strain gauge in the triangular delta-bit. It gives much more accurate contact information and is not effected by the bed glue not does the aluminum oxide layer cause problems.






    share|improve this answer









    $endgroup$








    • 1




      $begingroup$
      The uncertainty and variance I found was less from the bed glue and more from the aluminum oxide breakdown. The brass nozzle had to contact the bed hard enough to scrub a break in the oxide.
      $endgroup$
      – cmm
      Jul 16 at 0:45













    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "640"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    noCode: true, onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2f3dprinting.stackexchange.com%2fquestions%2f10585%2fwiring-z-stop-directly-to-hot-end-and-aluminum-bed-spacers%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    3 Answers
    3






    active

    oldest

    votes








    3 Answers
    3






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    3












    $begingroup$

    Aluminium is conductive, but aluminium oxide is not, which is just so what there (unavoidably, since aluminium rapidly oxidises in air) happens to be a thin layer of on top of your bed. The coating is very thin, but it might foul your plans. It would work better with a sharp probe (that can puncture the layer) than with a 3D printer nozzle. You should be careful, because your probing method might be unreliable (which could cause the nozzle to crash into the bed).



    Wiring the endstop 5V directly to ground will create a short circuit which will damage your printer. You should use the third (signal) pin and ground instead.






    share|improve this answer











    $endgroup$

















      3












      $begingroup$

      Aluminium is conductive, but aluminium oxide is not, which is just so what there (unavoidably, since aluminium rapidly oxidises in air) happens to be a thin layer of on top of your bed. The coating is very thin, but it might foul your plans. It would work better with a sharp probe (that can puncture the layer) than with a 3D printer nozzle. You should be careful, because your probing method might be unreliable (which could cause the nozzle to crash into the bed).



      Wiring the endstop 5V directly to ground will create a short circuit which will damage your printer. You should use the third (signal) pin and ground instead.






      share|improve this answer











      $endgroup$















        3












        3








        3





        $begingroup$

        Aluminium is conductive, but aluminium oxide is not, which is just so what there (unavoidably, since aluminium rapidly oxidises in air) happens to be a thin layer of on top of your bed. The coating is very thin, but it might foul your plans. It would work better with a sharp probe (that can puncture the layer) than with a 3D printer nozzle. You should be careful, because your probing method might be unreliable (which could cause the nozzle to crash into the bed).



        Wiring the endstop 5V directly to ground will create a short circuit which will damage your printer. You should use the third (signal) pin and ground instead.






        share|improve this answer











        $endgroup$



        Aluminium is conductive, but aluminium oxide is not, which is just so what there (unavoidably, since aluminium rapidly oxidises in air) happens to be a thin layer of on top of your bed. The coating is very thin, but it might foul your plans. It would work better with a sharp probe (that can puncture the layer) than with a 3D printer nozzle. You should be careful, because your probing method might be unreliable (which could cause the nozzle to crash into the bed).



        Wiring the endstop 5V directly to ground will create a short circuit which will damage your printer. You should use the third (signal) pin and ground instead.







        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited Jul 14 at 11:54

























        answered Jul 14 at 8:56









        Tom van der ZandenTom van der Zanden

        12k1 gold badge22 silver badges52 bronze badges




        12k1 gold badge22 silver badges52 bronze badges























            0












            $begingroup$

            OP here. The top of the aluminum bed is not conductive, but the sides of it are. You can re-create the Lulzbot Mini endstop set-up by connecting the Z-stop ground to the side of the aluminum bed, then using binder clips and nickels as the "washers". In my case I had to use quarters because my bed was really big and the extruder came down far from its edges.



            To do this, you'll need:



            1. A multimeter and a >100 Ohm resistor for safety

            2. Some nickels (or any conductive coin)

            3. Some binder clips (with steel insides)

            4. Some aluminum foil (increases reliability of setup)

            5. A Z end-stop

            Building conductive washer perimeter



            Create a conductive washer system along the sides of your aluminum bed by:



            1. Wrapping a nickel-sized amount of aluminum foil on the bottom, side, and top of the bed


            2. Placing a nickel on top of that aluminum foil on the bedttop



            3. Placing a steel-inside binder clip to hold down the nickel



              Do this multiple times along the perimeter of the bed. It seems you are limited to an evenly-spaced grid structure by the software. In my case I placed the washers at:



            X = 0, Y = 0
            X = 0.5 * Max_X, Y=0
            X = Max_X, Y = 0
            X = 0, Y = Max_Y
            X = 0.5*Max_X, Y = 0.5 * Max_Y
            X = Max_X, Y = Max_X


            The aluminum foil provides a contact between the side of the bed and the top and bottom of it. The binder clip can be pressed inwards against the aluminum foil to ensure high reliability. However, the binder clip can get loose. So, using aluminum foil helps make the bottom of the bed conductive too, increasing the surface area of the contact for the binder clip.



            Attaching red wire to hot end



            Attach the red part of the Z-endstop to your heatblock. It must be in the heatblock somewhere. The thermister hole might work. For me, I was able to slide it in a small space that's used to tighten the screw that holds the heat rod.



            Now we want to attach the Z-stop ground (black wire) to the conductive perimeter.



            Before attaching Z-stop ground underneath one of the binder clips, a word of caution...



            The first time I did this, I stupidly placed a binder clip on top of the 12V heat rod attached to the bottom of the aluminum bed. This put all sides of the aluminum bed (and my conductive washers) at 12V, which created a short into the Z-stop ground pin when I connected it. This resulted in my Z-stop ground pin SMOKING up from the heat going through it. As a word of precaution, you should attach a resistor between the Z-stop ground pin and the side of the aluminum bed should something go wrong in the future. I used a 2.1 kOhm resistor I had laying around. This will limit the current going into the Z-stop ground pin. Since everyone's aluminum bed will be different (for e.g. the bottom of my bed is non-conductive, but yours might be conductive), it is really important to be careful here.



            Before powering on, test to see that all of the nickels have low resistance between them. Test to see that the hot end nozzle is connected to the Z-stop red wire. Use a multimeter for this.



            If you don't have a resistor, wait to attach the Z-stop ground before powering on. This will let you check the voltage to tell if your aluinum bed sides are connected to the 12V heat rod. After that, you can power off and attach the Z-stop ground and power on again.



            Setting up the software



            If you've flashed your firmware before, setting up the software is easy. Go to the "AUTO_BED" section of Configuration.h. First thing to do is to set your Z-offset to about 2.0mm and remove any existing offsets you might've had for a Z-probe (for e.g. X_PROBE_OFFSET... = -40 was set for me). The Z-offset should be set to a positive value this time. Don't forget to change this setting in EEPROM if you set itas well!



            Since I'm only probing the perimeter, I use BILINEAR bed leveling for this one. Bilinear calculates points automatically for me, so I had to set up my perimeter according to an evenly spaced grid like I listed in "Building conductive washer perimeter".



            First I activated AUTO_BED_LEVELING_BILINEAR



            And my IF tree looks like:



            #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)

            // Set the number of grid points per dimension.
            #define GRID_MAX_POINTS_X 3
            #define GRID_MAX_POINTS_Y 2

            // Set the boundaries for probing (where the probe can reach).
            #define LEFT_PROBE_BED_POSITION 1
            #define RIGHT_PROBE_BED_POSITION 264
            #define FRONT_PROBE_BED_POSITION 1
            #define BACK_PROBE_BED_POSITION 264

            // The Z probe minimum outer margin (to validate G29 parameters).
            #define MIN_PROBE_EDGE 0

            // Probe along the Y axis, advancing X after each column
            //#define PROBE_Y_FIRST

            #if ENABLED(AUTO_BED_LEVELING_BILINEAR)

            // Beyond the probed grid, continue the implied tilt?
            // Default is to maintain the height of the nearest edge.

            #define EXTRAPOLATE_BEYOND_GRID
            //
            // Experimental Subdivision of the grid by Catmull-Rom method.
            // Synthesizes intermediate points to produce a more detailed mesh.
            //
            #define ABL_BILINEAR_SUBDIVISION
            #if ENABLED(ABL_BILINEAR_SUBDIVISION)
            // Number of subdivisions between probe points
            #define BILINEAR_SUBDIVISIONS 3
            #endif

            #endif
            #elif // other bed leveling trees


            Feel free to disable EXTRAPOLATE_BEYOND_GRID and BILINEAR_SUBDIVISIONS because they might not be necessary for you.



            Time to autobed level



            Of course, even with all that work, you're still going to want to be able to power off your 3D printer if it doesn't recognize even one of the nickels. So stay close to your power source and be sure to power it off safely if it doesn't recognize one of your contacts or if something comes loose. For example one of my coins was very dirty and yea, it made a huge difference in that corner, so I had to swap it out.



            Last but not least, if you have some extra binder clips, you can enable the "Nozzle cleaning" feature in Configuration.h, just by binder-clipping the dark-green layer of a sponge to the board. Then just set the X-Y coordinates of that layer in the nozzle_clean feature in Configuration.h and make your life a lot easier. These two features working well together basically mean you don't have to do anything between multiple prints except remove the prints from the bed.






            share|improve this answer











            $endgroup$












            • $begingroup$
              I really wanted to add two more perimeter points at: (0, 0.5*MAX_Y) and (MAX_X, 0.5*MAX_Y). But I couldn't do this using Bilinear bed leveling. There is also something called Unified bed leveling, but I couldn't tell if that would be useful. The reason this is a headache is that you obviously don't want to continue the grid, as it would require putting a nickel right in the center of the bed (disrupting prints where the bed temperature is most accurate). If anyone has any advice on how to add just these two points it would be much appreciated
              $endgroup$
              – steve antwan
              Jul 14 at 22:48











            • $begingroup$
              Update: Printing very consistently, but you will want to include the sponge like I suggested at the end and do an autoclean ("G12") after killed prints. Repetier-Host makes this easy. Also add it to your start code. It really only works reliably when you G12 before going home
              $endgroup$
              – steve antwan
              Jul 15 at 22:56















            0












            $begingroup$

            OP here. The top of the aluminum bed is not conductive, but the sides of it are. You can re-create the Lulzbot Mini endstop set-up by connecting the Z-stop ground to the side of the aluminum bed, then using binder clips and nickels as the "washers". In my case I had to use quarters because my bed was really big and the extruder came down far from its edges.



            To do this, you'll need:



            1. A multimeter and a >100 Ohm resistor for safety

            2. Some nickels (or any conductive coin)

            3. Some binder clips (with steel insides)

            4. Some aluminum foil (increases reliability of setup)

            5. A Z end-stop

            Building conductive washer perimeter



            Create a conductive washer system along the sides of your aluminum bed by:



            1. Wrapping a nickel-sized amount of aluminum foil on the bottom, side, and top of the bed


            2. Placing a nickel on top of that aluminum foil on the bedttop



            3. Placing a steel-inside binder clip to hold down the nickel



              Do this multiple times along the perimeter of the bed. It seems you are limited to an evenly-spaced grid structure by the software. In my case I placed the washers at:



            X = 0, Y = 0
            X = 0.5 * Max_X, Y=0
            X = Max_X, Y = 0
            X = 0, Y = Max_Y
            X = 0.5*Max_X, Y = 0.5 * Max_Y
            X = Max_X, Y = Max_X


            The aluminum foil provides a contact between the side of the bed and the top and bottom of it. The binder clip can be pressed inwards against the aluminum foil to ensure high reliability. However, the binder clip can get loose. So, using aluminum foil helps make the bottom of the bed conductive too, increasing the surface area of the contact for the binder clip.



            Attaching red wire to hot end



            Attach the red part of the Z-endstop to your heatblock. It must be in the heatblock somewhere. The thermister hole might work. For me, I was able to slide it in a small space that's used to tighten the screw that holds the heat rod.



            Now we want to attach the Z-stop ground (black wire) to the conductive perimeter.



            Before attaching Z-stop ground underneath one of the binder clips, a word of caution...



            The first time I did this, I stupidly placed a binder clip on top of the 12V heat rod attached to the bottom of the aluminum bed. This put all sides of the aluminum bed (and my conductive washers) at 12V, which created a short into the Z-stop ground pin when I connected it. This resulted in my Z-stop ground pin SMOKING up from the heat going through it. As a word of precaution, you should attach a resistor between the Z-stop ground pin and the side of the aluminum bed should something go wrong in the future. I used a 2.1 kOhm resistor I had laying around. This will limit the current going into the Z-stop ground pin. Since everyone's aluminum bed will be different (for e.g. the bottom of my bed is non-conductive, but yours might be conductive), it is really important to be careful here.



            Before powering on, test to see that all of the nickels have low resistance between them. Test to see that the hot end nozzle is connected to the Z-stop red wire. Use a multimeter for this.



            If you don't have a resistor, wait to attach the Z-stop ground before powering on. This will let you check the voltage to tell if your aluinum bed sides are connected to the 12V heat rod. After that, you can power off and attach the Z-stop ground and power on again.



            Setting up the software



            If you've flashed your firmware before, setting up the software is easy. Go to the "AUTO_BED" section of Configuration.h. First thing to do is to set your Z-offset to about 2.0mm and remove any existing offsets you might've had for a Z-probe (for e.g. X_PROBE_OFFSET... = -40 was set for me). The Z-offset should be set to a positive value this time. Don't forget to change this setting in EEPROM if you set itas well!



            Since I'm only probing the perimeter, I use BILINEAR bed leveling for this one. Bilinear calculates points automatically for me, so I had to set up my perimeter according to an evenly spaced grid like I listed in "Building conductive washer perimeter".



            First I activated AUTO_BED_LEVELING_BILINEAR



            And my IF tree looks like:



            #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)

            // Set the number of grid points per dimension.
            #define GRID_MAX_POINTS_X 3
            #define GRID_MAX_POINTS_Y 2

            // Set the boundaries for probing (where the probe can reach).
            #define LEFT_PROBE_BED_POSITION 1
            #define RIGHT_PROBE_BED_POSITION 264
            #define FRONT_PROBE_BED_POSITION 1
            #define BACK_PROBE_BED_POSITION 264

            // The Z probe minimum outer margin (to validate G29 parameters).
            #define MIN_PROBE_EDGE 0

            // Probe along the Y axis, advancing X after each column
            //#define PROBE_Y_FIRST

            #if ENABLED(AUTO_BED_LEVELING_BILINEAR)

            // Beyond the probed grid, continue the implied tilt?
            // Default is to maintain the height of the nearest edge.

            #define EXTRAPOLATE_BEYOND_GRID
            //
            // Experimental Subdivision of the grid by Catmull-Rom method.
            // Synthesizes intermediate points to produce a more detailed mesh.
            //
            #define ABL_BILINEAR_SUBDIVISION
            #if ENABLED(ABL_BILINEAR_SUBDIVISION)
            // Number of subdivisions between probe points
            #define BILINEAR_SUBDIVISIONS 3
            #endif

            #endif
            #elif // other bed leveling trees


            Feel free to disable EXTRAPOLATE_BEYOND_GRID and BILINEAR_SUBDIVISIONS because they might not be necessary for you.



            Time to autobed level



            Of course, even with all that work, you're still going to want to be able to power off your 3D printer if it doesn't recognize even one of the nickels. So stay close to your power source and be sure to power it off safely if it doesn't recognize one of your contacts or if something comes loose. For example one of my coins was very dirty and yea, it made a huge difference in that corner, so I had to swap it out.



            Last but not least, if you have some extra binder clips, you can enable the "Nozzle cleaning" feature in Configuration.h, just by binder-clipping the dark-green layer of a sponge to the board. Then just set the X-Y coordinates of that layer in the nozzle_clean feature in Configuration.h and make your life a lot easier. These two features working well together basically mean you don't have to do anything between multiple prints except remove the prints from the bed.






            share|improve this answer











            $endgroup$












            • $begingroup$
              I really wanted to add two more perimeter points at: (0, 0.5*MAX_Y) and (MAX_X, 0.5*MAX_Y). But I couldn't do this using Bilinear bed leveling. There is also something called Unified bed leveling, but I couldn't tell if that would be useful. The reason this is a headache is that you obviously don't want to continue the grid, as it would require putting a nickel right in the center of the bed (disrupting prints where the bed temperature is most accurate). If anyone has any advice on how to add just these two points it would be much appreciated
              $endgroup$
              – steve antwan
              Jul 14 at 22:48











            • $begingroup$
              Update: Printing very consistently, but you will want to include the sponge like I suggested at the end and do an autoclean ("G12") after killed prints. Repetier-Host makes this easy. Also add it to your start code. It really only works reliably when you G12 before going home
              $endgroup$
              – steve antwan
              Jul 15 at 22:56













            0












            0








            0





            $begingroup$

            OP here. The top of the aluminum bed is not conductive, but the sides of it are. You can re-create the Lulzbot Mini endstop set-up by connecting the Z-stop ground to the side of the aluminum bed, then using binder clips and nickels as the "washers". In my case I had to use quarters because my bed was really big and the extruder came down far from its edges.



            To do this, you'll need:



            1. A multimeter and a >100 Ohm resistor for safety

            2. Some nickels (or any conductive coin)

            3. Some binder clips (with steel insides)

            4. Some aluminum foil (increases reliability of setup)

            5. A Z end-stop

            Building conductive washer perimeter



            Create a conductive washer system along the sides of your aluminum bed by:



            1. Wrapping a nickel-sized amount of aluminum foil on the bottom, side, and top of the bed


            2. Placing a nickel on top of that aluminum foil on the bedttop



            3. Placing a steel-inside binder clip to hold down the nickel



              Do this multiple times along the perimeter of the bed. It seems you are limited to an evenly-spaced grid structure by the software. In my case I placed the washers at:



            X = 0, Y = 0
            X = 0.5 * Max_X, Y=0
            X = Max_X, Y = 0
            X = 0, Y = Max_Y
            X = 0.5*Max_X, Y = 0.5 * Max_Y
            X = Max_X, Y = Max_X


            The aluminum foil provides a contact between the side of the bed and the top and bottom of it. The binder clip can be pressed inwards against the aluminum foil to ensure high reliability. However, the binder clip can get loose. So, using aluminum foil helps make the bottom of the bed conductive too, increasing the surface area of the contact for the binder clip.



            Attaching red wire to hot end



            Attach the red part of the Z-endstop to your heatblock. It must be in the heatblock somewhere. The thermister hole might work. For me, I was able to slide it in a small space that's used to tighten the screw that holds the heat rod.



            Now we want to attach the Z-stop ground (black wire) to the conductive perimeter.



            Before attaching Z-stop ground underneath one of the binder clips, a word of caution...



            The first time I did this, I stupidly placed a binder clip on top of the 12V heat rod attached to the bottom of the aluminum bed. This put all sides of the aluminum bed (and my conductive washers) at 12V, which created a short into the Z-stop ground pin when I connected it. This resulted in my Z-stop ground pin SMOKING up from the heat going through it. As a word of precaution, you should attach a resistor between the Z-stop ground pin and the side of the aluminum bed should something go wrong in the future. I used a 2.1 kOhm resistor I had laying around. This will limit the current going into the Z-stop ground pin. Since everyone's aluminum bed will be different (for e.g. the bottom of my bed is non-conductive, but yours might be conductive), it is really important to be careful here.



            Before powering on, test to see that all of the nickels have low resistance between them. Test to see that the hot end nozzle is connected to the Z-stop red wire. Use a multimeter for this.



            If you don't have a resistor, wait to attach the Z-stop ground before powering on. This will let you check the voltage to tell if your aluinum bed sides are connected to the 12V heat rod. After that, you can power off and attach the Z-stop ground and power on again.



            Setting up the software



            If you've flashed your firmware before, setting up the software is easy. Go to the "AUTO_BED" section of Configuration.h. First thing to do is to set your Z-offset to about 2.0mm and remove any existing offsets you might've had for a Z-probe (for e.g. X_PROBE_OFFSET... = -40 was set for me). The Z-offset should be set to a positive value this time. Don't forget to change this setting in EEPROM if you set itas well!



            Since I'm only probing the perimeter, I use BILINEAR bed leveling for this one. Bilinear calculates points automatically for me, so I had to set up my perimeter according to an evenly spaced grid like I listed in "Building conductive washer perimeter".



            First I activated AUTO_BED_LEVELING_BILINEAR



            And my IF tree looks like:



            #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)

            // Set the number of grid points per dimension.
            #define GRID_MAX_POINTS_X 3
            #define GRID_MAX_POINTS_Y 2

            // Set the boundaries for probing (where the probe can reach).
            #define LEFT_PROBE_BED_POSITION 1
            #define RIGHT_PROBE_BED_POSITION 264
            #define FRONT_PROBE_BED_POSITION 1
            #define BACK_PROBE_BED_POSITION 264

            // The Z probe minimum outer margin (to validate G29 parameters).
            #define MIN_PROBE_EDGE 0

            // Probe along the Y axis, advancing X after each column
            //#define PROBE_Y_FIRST

            #if ENABLED(AUTO_BED_LEVELING_BILINEAR)

            // Beyond the probed grid, continue the implied tilt?
            // Default is to maintain the height of the nearest edge.

            #define EXTRAPOLATE_BEYOND_GRID
            //
            // Experimental Subdivision of the grid by Catmull-Rom method.
            // Synthesizes intermediate points to produce a more detailed mesh.
            //
            #define ABL_BILINEAR_SUBDIVISION
            #if ENABLED(ABL_BILINEAR_SUBDIVISION)
            // Number of subdivisions between probe points
            #define BILINEAR_SUBDIVISIONS 3
            #endif

            #endif
            #elif // other bed leveling trees


            Feel free to disable EXTRAPOLATE_BEYOND_GRID and BILINEAR_SUBDIVISIONS because they might not be necessary for you.



            Time to autobed level



            Of course, even with all that work, you're still going to want to be able to power off your 3D printer if it doesn't recognize even one of the nickels. So stay close to your power source and be sure to power it off safely if it doesn't recognize one of your contacts or if something comes loose. For example one of my coins was very dirty and yea, it made a huge difference in that corner, so I had to swap it out.



            Last but not least, if you have some extra binder clips, you can enable the "Nozzle cleaning" feature in Configuration.h, just by binder-clipping the dark-green layer of a sponge to the board. Then just set the X-Y coordinates of that layer in the nozzle_clean feature in Configuration.h and make your life a lot easier. These two features working well together basically mean you don't have to do anything between multiple prints except remove the prints from the bed.






            share|improve this answer











            $endgroup$



            OP here. The top of the aluminum bed is not conductive, but the sides of it are. You can re-create the Lulzbot Mini endstop set-up by connecting the Z-stop ground to the side of the aluminum bed, then using binder clips and nickels as the "washers". In my case I had to use quarters because my bed was really big and the extruder came down far from its edges.



            To do this, you'll need:



            1. A multimeter and a >100 Ohm resistor for safety

            2. Some nickels (or any conductive coin)

            3. Some binder clips (with steel insides)

            4. Some aluminum foil (increases reliability of setup)

            5. A Z end-stop

            Building conductive washer perimeter



            Create a conductive washer system along the sides of your aluminum bed by:



            1. Wrapping a nickel-sized amount of aluminum foil on the bottom, side, and top of the bed


            2. Placing a nickel on top of that aluminum foil on the bedttop



            3. Placing a steel-inside binder clip to hold down the nickel



              Do this multiple times along the perimeter of the bed. It seems you are limited to an evenly-spaced grid structure by the software. In my case I placed the washers at:



            X = 0, Y = 0
            X = 0.5 * Max_X, Y=0
            X = Max_X, Y = 0
            X = 0, Y = Max_Y
            X = 0.5*Max_X, Y = 0.5 * Max_Y
            X = Max_X, Y = Max_X


            The aluminum foil provides a contact between the side of the bed and the top and bottom of it. The binder clip can be pressed inwards against the aluminum foil to ensure high reliability. However, the binder clip can get loose. So, using aluminum foil helps make the bottom of the bed conductive too, increasing the surface area of the contact for the binder clip.



            Attaching red wire to hot end



            Attach the red part of the Z-endstop to your heatblock. It must be in the heatblock somewhere. The thermister hole might work. For me, I was able to slide it in a small space that's used to tighten the screw that holds the heat rod.



            Now we want to attach the Z-stop ground (black wire) to the conductive perimeter.



            Before attaching Z-stop ground underneath one of the binder clips, a word of caution...



            The first time I did this, I stupidly placed a binder clip on top of the 12V heat rod attached to the bottom of the aluminum bed. This put all sides of the aluminum bed (and my conductive washers) at 12V, which created a short into the Z-stop ground pin when I connected it. This resulted in my Z-stop ground pin SMOKING up from the heat going through it. As a word of precaution, you should attach a resistor between the Z-stop ground pin and the side of the aluminum bed should something go wrong in the future. I used a 2.1 kOhm resistor I had laying around. This will limit the current going into the Z-stop ground pin. Since everyone's aluminum bed will be different (for e.g. the bottom of my bed is non-conductive, but yours might be conductive), it is really important to be careful here.



            Before powering on, test to see that all of the nickels have low resistance between them. Test to see that the hot end nozzle is connected to the Z-stop red wire. Use a multimeter for this.



            If you don't have a resistor, wait to attach the Z-stop ground before powering on. This will let you check the voltage to tell if your aluinum bed sides are connected to the 12V heat rod. After that, you can power off and attach the Z-stop ground and power on again.



            Setting up the software



            If you've flashed your firmware before, setting up the software is easy. Go to the "AUTO_BED" section of Configuration.h. First thing to do is to set your Z-offset to about 2.0mm and remove any existing offsets you might've had for a Z-probe (for e.g. X_PROBE_OFFSET... = -40 was set for me). The Z-offset should be set to a positive value this time. Don't forget to change this setting in EEPROM if you set itas well!



            Since I'm only probing the perimeter, I use BILINEAR bed leveling for this one. Bilinear calculates points automatically for me, so I had to set up my perimeter according to an evenly spaced grid like I listed in "Building conductive washer perimeter".



            First I activated AUTO_BED_LEVELING_BILINEAR



            And my IF tree looks like:



            #if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)

            // Set the number of grid points per dimension.
            #define GRID_MAX_POINTS_X 3
            #define GRID_MAX_POINTS_Y 2

            // Set the boundaries for probing (where the probe can reach).
            #define LEFT_PROBE_BED_POSITION 1
            #define RIGHT_PROBE_BED_POSITION 264
            #define FRONT_PROBE_BED_POSITION 1
            #define BACK_PROBE_BED_POSITION 264

            // The Z probe minimum outer margin (to validate G29 parameters).
            #define MIN_PROBE_EDGE 0

            // Probe along the Y axis, advancing X after each column
            //#define PROBE_Y_FIRST

            #if ENABLED(AUTO_BED_LEVELING_BILINEAR)

            // Beyond the probed grid, continue the implied tilt?
            // Default is to maintain the height of the nearest edge.

            #define EXTRAPOLATE_BEYOND_GRID
            //
            // Experimental Subdivision of the grid by Catmull-Rom method.
            // Synthesizes intermediate points to produce a more detailed mesh.
            //
            #define ABL_BILINEAR_SUBDIVISION
            #if ENABLED(ABL_BILINEAR_SUBDIVISION)
            // Number of subdivisions between probe points
            #define BILINEAR_SUBDIVISIONS 3
            #endif

            #endif
            #elif // other bed leveling trees


            Feel free to disable EXTRAPOLATE_BEYOND_GRID and BILINEAR_SUBDIVISIONS because they might not be necessary for you.



            Time to autobed level



            Of course, even with all that work, you're still going to want to be able to power off your 3D printer if it doesn't recognize even one of the nickels. So stay close to your power source and be sure to power it off safely if it doesn't recognize one of your contacts or if something comes loose. For example one of my coins was very dirty and yea, it made a huge difference in that corner, so I had to swap it out.



            Last but not least, if you have some extra binder clips, you can enable the "Nozzle cleaning" feature in Configuration.h, just by binder-clipping the dark-green layer of a sponge to the board. Then just set the X-Y coordinates of that layer in the nozzle_clean feature in Configuration.h and make your life a lot easier. These two features working well together basically mean you don't have to do anything between multiple prints except remove the prints from the bed.







            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited Jul 14 at 23:09

























            answered Jul 14 at 22:36









            steve antwansteve antwan

            926 bronze badges




            926 bronze badges











            • $begingroup$
              I really wanted to add two more perimeter points at: (0, 0.5*MAX_Y) and (MAX_X, 0.5*MAX_Y). But I couldn't do this using Bilinear bed leveling. There is also something called Unified bed leveling, but I couldn't tell if that would be useful. The reason this is a headache is that you obviously don't want to continue the grid, as it would require putting a nickel right in the center of the bed (disrupting prints where the bed temperature is most accurate). If anyone has any advice on how to add just these two points it would be much appreciated
              $endgroup$
              – steve antwan
              Jul 14 at 22:48











            • $begingroup$
              Update: Printing very consistently, but you will want to include the sponge like I suggested at the end and do an autoclean ("G12") after killed prints. Repetier-Host makes this easy. Also add it to your start code. It really only works reliably when you G12 before going home
              $endgroup$
              – steve antwan
              Jul 15 at 22:56
















            • $begingroup$
              I really wanted to add two more perimeter points at: (0, 0.5*MAX_Y) and (MAX_X, 0.5*MAX_Y). But I couldn't do this using Bilinear bed leveling. There is also something called Unified bed leveling, but I couldn't tell if that would be useful. The reason this is a headache is that you obviously don't want to continue the grid, as it would require putting a nickel right in the center of the bed (disrupting prints where the bed temperature is most accurate). If anyone has any advice on how to add just these two points it would be much appreciated
              $endgroup$
              – steve antwan
              Jul 14 at 22:48











            • $begingroup$
              Update: Printing very consistently, but you will want to include the sponge like I suggested at the end and do an autoclean ("G12") after killed prints. Repetier-Host makes this easy. Also add it to your start code. It really only works reliably when you G12 before going home
              $endgroup$
              – steve antwan
              Jul 15 at 22:56















            $begingroup$
            I really wanted to add two more perimeter points at: (0, 0.5*MAX_Y) and (MAX_X, 0.5*MAX_Y). But I couldn't do this using Bilinear bed leveling. There is also something called Unified bed leveling, but I couldn't tell if that would be useful. The reason this is a headache is that you obviously don't want to continue the grid, as it would require putting a nickel right in the center of the bed (disrupting prints where the bed temperature is most accurate). If anyone has any advice on how to add just these two points it would be much appreciated
            $endgroup$
            – steve antwan
            Jul 14 at 22:48





            $begingroup$
            I really wanted to add two more perimeter points at: (0, 0.5*MAX_Y) and (MAX_X, 0.5*MAX_Y). But I couldn't do this using Bilinear bed leveling. There is also something called Unified bed leveling, but I couldn't tell if that would be useful. The reason this is a headache is that you obviously don't want to continue the grid, as it would require putting a nickel right in the center of the bed (disrupting prints where the bed temperature is most accurate). If anyone has any advice on how to add just these two points it would be much appreciated
            $endgroup$
            – steve antwan
            Jul 14 at 22:48













            $begingroup$
            Update: Printing very consistently, but you will want to include the sponge like I suggested at the end and do an autoclean ("G12") after killed prints. Repetier-Host makes this easy. Also add it to your start code. It really only works reliably when you G12 before going home
            $endgroup$
            – steve antwan
            Jul 15 at 22:56




            $begingroup$
            Update: Printing very consistently, but you will want to include the sponge like I suggested at the end and do an autoclean ("G12") after killed prints. Repetier-Host makes this easy. Also add it to your start code. It really only works reliably when you G12 before going home
            $endgroup$
            – steve antwan
            Jul 15 at 22:56











            0












            $begingroup$

            This will not work reliably.



            I know, I have tried it, for a couple of years, with poor consistency.



            Now, I will tell you that it worked better than the parallax IR sensors. It worked better than trying to slam the head into the bed and listen for the click.



            I used the brass nozzle and the aluminum bed as a switch to detect the bed position.



            I used ABS slurry on the bed. With a 100°C bed the ABS was soft enough for the nozzle to make contact. Elmer's Glue for PLA also was soft enough.



            But, with the elasticity I had in the synthetic Z-axis of the delta machine, the time delay to much the bed adhesive out of the way, and the general problem of trying to conduct electricity through an aluminum oxide layer, I had variability of about 0.1 mm, which was far to much to give a reliable first layer.



            To "level" the delta bed, I would touch each point several times (with a clean bed) and fit my leveling function to the noisy data. For finding my zero reference at the beginning of a print, I would touch off three time and only use the third one. This helped, but it was still super noisy.



            I have subsequently incorporated a strain gauge in the triangular delta-bit. It gives much more accurate contact information and is not effected by the bed glue not does the aluminum oxide layer cause problems.






            share|improve this answer









            $endgroup$








            • 1




              $begingroup$
              The uncertainty and variance I found was less from the bed glue and more from the aluminum oxide breakdown. The brass nozzle had to contact the bed hard enough to scrub a break in the oxide.
              $endgroup$
              – cmm
              Jul 16 at 0:45















            0












            $begingroup$

            This will not work reliably.



            I know, I have tried it, for a couple of years, with poor consistency.



            Now, I will tell you that it worked better than the parallax IR sensors. It worked better than trying to slam the head into the bed and listen for the click.



            I used the brass nozzle and the aluminum bed as a switch to detect the bed position.



            I used ABS slurry on the bed. With a 100°C bed the ABS was soft enough for the nozzle to make contact. Elmer's Glue for PLA also was soft enough.



            But, with the elasticity I had in the synthetic Z-axis of the delta machine, the time delay to much the bed adhesive out of the way, and the general problem of trying to conduct electricity through an aluminum oxide layer, I had variability of about 0.1 mm, which was far to much to give a reliable first layer.



            To "level" the delta bed, I would touch each point several times (with a clean bed) and fit my leveling function to the noisy data. For finding my zero reference at the beginning of a print, I would touch off three time and only use the third one. This helped, but it was still super noisy.



            I have subsequently incorporated a strain gauge in the triangular delta-bit. It gives much more accurate contact information and is not effected by the bed glue not does the aluminum oxide layer cause problems.






            share|improve this answer









            $endgroup$








            • 1




              $begingroup$
              The uncertainty and variance I found was less from the bed glue and more from the aluminum oxide breakdown. The brass nozzle had to contact the bed hard enough to scrub a break in the oxide.
              $endgroup$
              – cmm
              Jul 16 at 0:45













            0












            0








            0





            $begingroup$

            This will not work reliably.



            I know, I have tried it, for a couple of years, with poor consistency.



            Now, I will tell you that it worked better than the parallax IR sensors. It worked better than trying to slam the head into the bed and listen for the click.



            I used the brass nozzle and the aluminum bed as a switch to detect the bed position.



            I used ABS slurry on the bed. With a 100°C bed the ABS was soft enough for the nozzle to make contact. Elmer's Glue for PLA also was soft enough.



            But, with the elasticity I had in the synthetic Z-axis of the delta machine, the time delay to much the bed adhesive out of the way, and the general problem of trying to conduct electricity through an aluminum oxide layer, I had variability of about 0.1 mm, which was far to much to give a reliable first layer.



            To "level" the delta bed, I would touch each point several times (with a clean bed) and fit my leveling function to the noisy data. For finding my zero reference at the beginning of a print, I would touch off three time and only use the third one. This helped, but it was still super noisy.



            I have subsequently incorporated a strain gauge in the triangular delta-bit. It gives much more accurate contact information and is not effected by the bed glue not does the aluminum oxide layer cause problems.






            share|improve this answer









            $endgroup$



            This will not work reliably.



            I know, I have tried it, for a couple of years, with poor consistency.



            Now, I will tell you that it worked better than the parallax IR sensors. It worked better than trying to slam the head into the bed and listen for the click.



            I used the brass nozzle and the aluminum bed as a switch to detect the bed position.



            I used ABS slurry on the bed. With a 100°C bed the ABS was soft enough for the nozzle to make contact. Elmer's Glue for PLA also was soft enough.



            But, with the elasticity I had in the synthetic Z-axis of the delta machine, the time delay to much the bed adhesive out of the way, and the general problem of trying to conduct electricity through an aluminum oxide layer, I had variability of about 0.1 mm, which was far to much to give a reliable first layer.



            To "level" the delta bed, I would touch each point several times (with a clean bed) and fit my leveling function to the noisy data. For finding my zero reference at the beginning of a print, I would touch off three time and only use the third one. This helped, but it was still super noisy.



            I have subsequently incorporated a strain gauge in the triangular delta-bit. It gives much more accurate contact information and is not effected by the bed glue not does the aluminum oxide layer cause problems.







            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered Jul 15 at 19:24









            cmmcmm

            2,5905 silver badges23 bronze badges




            2,5905 silver badges23 bronze badges







            • 1




              $begingroup$
              The uncertainty and variance I found was less from the bed glue and more from the aluminum oxide breakdown. The brass nozzle had to contact the bed hard enough to scrub a break in the oxide.
              $endgroup$
              – cmm
              Jul 16 at 0:45












            • 1




              $begingroup$
              The uncertainty and variance I found was less from the bed glue and more from the aluminum oxide breakdown. The brass nozzle had to contact the bed hard enough to scrub a break in the oxide.
              $endgroup$
              – cmm
              Jul 16 at 0:45







            1




            1




            $begingroup$
            The uncertainty and variance I found was less from the bed glue and more from the aluminum oxide breakdown. The brass nozzle had to contact the bed hard enough to scrub a break in the oxide.
            $endgroup$
            – cmm
            Jul 16 at 0:45




            $begingroup$
            The uncertainty and variance I found was less from the bed glue and more from the aluminum oxide breakdown. The brass nozzle had to contact the bed hard enough to scrub a break in the oxide.
            $endgroup$
            – cmm
            Jul 16 at 0:45

















            draft saved

            draft discarded
















































            Thanks for contributing an answer to 3D Printing Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            Use MathJax to format equations. MathJax reference.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2f3dprinting.stackexchange.com%2fquestions%2f10585%2fwiring-z-stop-directly-to-hot-end-and-aluminum-bed-spacers%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Get product attribute by attribute group code in magento 2get product attribute by product attribute group in magento 2Magento 2 Log Bundle Product Data in List Page?How to get all product attribute of a attribute group of Default attribute set?Magento 2.1 Create a filter in the product grid by new attributeMagento 2 : Get Product Attribute values By GroupMagento 2 How to get all existing values for one attributeMagento 2 get custom attribute of a single product inside a pluginMagento 2.3 How to get all the Multi Source Inventory (MSI) locations collection in custom module?Magento2: how to develop rest API to get new productsGet product attribute by attribute group code ( [attribute_group_code] ) in magento 2

            Category:9 (number) SubcategoriesMedia in category "9 (number)"Navigation menuUpload mediaGND ID: 4485639-8Library of Congress authority ID: sh85091979ReasonatorScholiaStatistics

            Magento 2.3: How do i solve this, Not registered handle, on custom form?How can i rewrite TierPrice Block in Magento2magento 2 captcha not rendering if I override layout xmlmain.CRITICAL: Plugin class doesn't existMagento 2 : Problem while adding custom button order view page?Magento 2.2.5: Overriding Admin Controller sales/orderMagento 2.2.5: Add, Update and Delete existing products Custom OptionsMagento 2.3 : File Upload issue in UI Component FormMagento2 Not registered handleHow to configured Form Builder Js in my custom magento 2.3.0 module?Magento 2.3. How to create image upload field in an admin form