Z configuration for sensors
-
@fcwilt
Thanks for the tip, I'll do that in the future.But I'm not sure it will solve my problem right?
-
@Timothee-Leblond said in Z configuration for sensors:
@fcwilt
Thanks for the tip, I'll do that in the future.But I'm not sure it will solve my problem right?
No, nothing to do with your problem - it just makes things a bit simpler in that if you make a change to homing code for one axis (X Y or Z) you don't need to make the same change to homeALL.g
Frederick
-
This is smart, thank you though!
-
I'm kind of at a loss for your probe issue. It's confusing why M401 would work to deploy the pin manually but not during the homing move.
Have you tried manually positioning he probe at the center of the bed and then sending M401 and G30 to deploy and start probing?
-
@Timothee-Leblond what happens if you do the following:
- Position the probe a long way above the bed.
- Either home X and Y, or send e.g. G92 X0 Y0 to make RRF consider that X and Y have been homed.
- Send M401 and check that the probe deploys.
- Send G30. Before the probe pin touches the bed, manually push it up to trigger the probe.
- If the probing move doesn't stop, turn the printer off to prevent the probe crashing into the bed.
If at step 4 RRF reports that the probe is already triggered at the start of the probing move, that means you need to use C"io6.in" instead of C"!io6.in" . Either way, don't include the ^ character because that will reduce the noise margin.
-
I've been following your steps:
- manually placed the probe at the center
- Used G92 X0 Y0 as Z homing does not work after I individually homed XY.
If I try homing Z without G92, it says: "Error: G30: Insufficient axes homed for bed probing." - Using M401 works well deploying the probe
- Manually pushing the probe after G30 works well.
However here are my problems now:
-Z homing doesn't not work alone as It always sends the error mentioned.
-Sending move commands to Z always gives the same error.
-When homed, sending move commands to Y does not work well (bumping against wall with positive integers, and only accepts -10 maximum with negative ones.
-After homing all, sending move commands to Z works but stops after a bit making a noise
-Homing all works but makes a lot more noise than homing X and Y individually.
-When homing all axes, the extruder is NOT going to the center of the bed before probing... -
@Timothee-Leblond you have a G1 Z move in your homing file. you can't move an axis if you haven't homed it
-
Indeed, but I cannot home Z. I always have the Error: Insufficient axes homed for bed probing.
-
@Timothee-Leblond exactly. You're trying to move an unhomed axis using a move that requires a homed axis before you have homed it. I'm not surprised it's failing.
You need to go through your home z file and understand what each line is doing
-
Okay, now I get it.
Now it's moving but I cannot figure out why it's not moving to the center.
Even replacing the following variables by simple G1 X150 Y150 do not work:var xCenter = move.compensation.probeGrid.mins[0] + (move.compensation.probeGrid.maxs[0] - move.compensation.probeGrid.mins[0]) / 2 - sensors.probes[0].offsets[0] ;var yCenter = move.compensation.probeGrid.mins[1] + (move.compensation.probeGrid.maxs[1] - move.compensation.probeGrid.mins[1]) / 2 - sensors.probes[0].offsets[1]
I mean, it randomly works, sometimes yes, sometimes not...
-
@Timothee-Leblond Make sure you are in absolute mode when executing the move to the centre of the bed. In your homeall.g you posted above you have:
var xCenter = move.compensation.probeGrid.mins[0] + (move.compensation.probeGrid.maxs[0] - move.compensation.probeGrid.mins[0]) / 2 - sensors.probes[0].offsets[0] var yCenter = move.compensation.probeGrid.mins[1] + (move.compensation.probeGrid.maxs[1] - move.compensation.probeGrid.mins[1]) / 2 - sensors.probes[0].offsets[1] G91 ; relative positioning G1 X{var.xCenter} Y{var.yCenter} F1000 ; go to bed centre G90 ; absolute positioning M401 G30 ; probe the bed M402
So the move in that case will be using relative coordinates.
As was mentioned above it is much easier to just call your homex, homey homez macros from homeall it keeps things simple.