Help with Z-probe in Repetier firmware

hi. I just dont understand the instructions on how to get this working. I have a custom CoreXY and there very little information regarding this for this type of printer configuration.

I have manually leveled the nozzle against the bed by just being able to slide a piece of paper.
At that point Prove is triggered ( also min hardware endstop is connected but not triggered since is a little higher )
Then i home all and issue command for probing. Prove high in firmware is set to 1mm

is the above corect? After this now what?
Whats that about not using min endstop and using max endstop? its a little impractical in a CoreXY.

CAn anyone point me to the correct proces?


  • If you set probe height to 1mm it should trigger when nozzle is 1mm over the bed.

    Regarding min endstiop think your bed a tilted 10°. Where can you then home z min? At one side you might not reach the bed because z min will trigger before preventing the z move and on the other side you crash the nozzle into bed. That is why z min and autoleveling does not work good. Autolevel assumes be dis tilted and fixes the error by moving z.

    Why should z max be mor eimpractival for corexy then for any other printer? I have seen many core xy with z max homing.
  • Repetier

    Thanks. Maybe i have misunderstood what is the correct setup of Z_Max. On my printer max would be software endstop with the bed at the bottom and since it is 600mm tall, triggering it would be impractical, but by your response im use im wrong, care to explain? Also should i connect the probe as Zmin and remove the current hardware min endstop?

  • Do NOT connect zprobe as zmin. You can use the zmin pin but that makes it not a hardware zmin endstop. A endstop is always present and triggers when you have reached z=0 while z probes trigger normally z > 0.

    You impractical just means it takes some time to home if I understand you right. Depends on the max. z speed. but with slow z and 600mm it takes a while.

    Some users us a other trick instead. They home xy and to z calibraion instead of z homing. This normally needs some tweaking of start gcode scripts but once you know what you do it works.
  • Greatly appreciated. I do get your suggestion. My question is how do I get Z probe to trigger before Zmin endstop triggers.
  • Maybe you should describe your z probe if that is not the case. How do you trigger z probe if it triggers below bed level?
  • My setup is the following. Pcb heater with Boro glass on top. 8mm inductive sensor.
    I have a good level on the bed.
    What I don't understand is the procedure itself on what the correct distance the sensor should be and how to set that up
  • How can you measure with a PCB heater and glass. Doesn't the sensor need a solid metal surface where you measure without powered bed do get consistent results?

    The correct distance you have to find out by just selecting a value and the correcting by the measured error. z probe height is the distance of bed-extruder nozzle when sensor triggers. If set correctly distances will be correct after calibration.
  • I have a sensor that can read 8mm. So it read without a problem trough the glass the pcb. I jus level the bed and then a just the sensor to trigger just at the correct high for the nozzle. Since I home my be to Zmin I believe the correct Z probe high should be 0.1 positive since this is the perfect high. Is this correct?
  • You should home to zmax with autoleveling. Put zmin to trigger below surface so springs get squished a bit as an emergency stop if you like. If you home zmin it depends on where on th ebed zmin matches what you measured. Bed is assumed to be rotated or you would not need to autolevel. So lets say you go zmin at x max you might have a gap of 1mm to nozzle. If you do it at x min you might crash it 1mm into the bed (ok 2mm rotation is much, just an example). If we correct to the right bed wants to go lower but if zmin triggers it doesn't destroying all calibration work. So zmin MUST be lower/equal the lowest point of the bed. If you go up a layer height you gain some safty but as soon as rotation exceeds the layer height you are in trouble again. Hope you understood the zmin problem?

  • I followed your suggestion and setup the zmax. Now I did the following:

    Rises the bed until the nozzle touched the plate. At that point I was 6.6mm from Zmin. I placed that number as Z probe high. Then runed G32 S1 and it gave me the matrix which gave me all number none of the 0 or 1.i assume that is bad?

    Is this correct?

    On another note why does it lower the bed after it does G32? Is that correct? Is there a way not to do it?

  • Matrix is only identity matrix if your bed is absolutely leveled. Small deviations are ok and the reason you do all the work. If 1 becomes 0.9 if might be a bit too much rotated and you could adjust coarsly by hand.

    G32 lowers bed to also compute zlength as it needs to know distance from bottom to zmax endstop. Since you do this only once and not for every print (G32 S2 stores result in eeprom). That should not be a problem.
  • Now I'm confused. I was homing to Zmin. In my case Zmin is at the top near the extruder. Then I added zmax with is at the bottom as per your suggestion. Now you say that G32 S2 computes de distance from bottom to zmax. Should I have Zmin at the bottom and zmax at the top near the extruder?
  • Hi Repetier,

    may I place a question, please: You just said that with G32 S2 it's not necessary to do Bed leveling before every print (that's logical to me). Now people tell me that a Z homing overwrites bed leveling (which seems implausible to me). That's why I do the G28 X Y/G32 thing in the Start script for every print, which is a PITA because of the long time it takes. But I get better Z=0 values with that. Still the bed-nozzle distance is different with every new G32, I suspect I still lose steps (although I'm at Z max feedrate/homing Feedrate = 3) or my sensor is crap.

    Can you confirm bed leveling and the Z axis length measured in the G32 process are still active/used/taken into account after homing? So I can bed level every once in a while and just have G28 in my start scripts?

  • If you use G32 S2 you are writing the correction values to EEPROM and they will remain there until you either do another G32 S2 or clear your EEPROM.

    However, the whole reason you autolevel or whatever is because of daily distortions in your printer. Yesterday's correction values probably aren't going to be perfect for today. 

    I dont use any auto-leveling. I've manually calibrated my printer well enough so that I only have to compensate for z-height adjustments as my printer thermally expands/contracts. I just use the LCD babystepping feature at the beginning of the print to do this. 
Sign In or Register to comment.