I've got an LDO Trident 300 AWD that I'm trying to configure for sensorless homing with cartographer on Kalico. Im trying calibrate the homing but everytime I try to do any homing mainsail just says "must home axes first". This is my 1st build and I'm unsure if I've got my homing override wrong or what. Thanks for any help. I can post more of the CFG if it's relevant.
#"Must home axes first" error, sensorless homing
36 messages · Page 1 of 1 (latest)
Not sure what things you are running to calibrate what, but anything that involves moving X, Y or Z, it will refuse to do so unless the axis it's trying to move is first homed. The exceptions are homing itself (G28), or a few special things like STEPPER_BUZZ, FORCE_MOVE or bypassing the homing with SET_KINEMATIC_POSITION.
Verifying motor movement direction and then homing usually comes before anything else, so start there. And then just home the printer.
I've just been following the Voron guide for configuring sensorless homing, got to the point where I needed to calibrate stallguard. So it wants me to do G28 X and then Y, but it gives that error. I was under the impression I had to calibrate sensorless before homing could be done.
Is it just G28 I have to do then? That might be the only command I didn't try, and can't try until much later.
Could you post a klippy.log (which will have the complete config in it)? A G28 command should be fine (it is what in fact homes things), but some macro things override and do strange things to it.
So I've noticed my cartographer is constantly showing as triggered even though it's fairly far from the plate, maybe that's interfering with the homing?
It could cause the Z homing to fail (klipper expects it to start "not triggered", otherwise it'll error out), but it shouldn't matter for XY homing.
Well I've only gotten homing to work after setting kinematics z to 5, but now I'm trying to calibrate cartographer touch which never reaches the bed
Well sorted cartographer touch, just need to see if i can improve sensorless
I'm wondering if that Z move in homing_override has something to do with it. It tells it to go to Z=5, but at that point Z isn't homed. Might work if you made that a relative move though, something like this:
axes: xyz
gcode:
BED_MESH_CLEAR
G91
G0 Z5 F600 ; Lift Z
G90
G28 X Y
G0 X150 Y150 F6000 ; Move to center
G28 Z```
(or if you want to be all fancy, mess with `SAVE/RESTORE_GCODE_STATE` to maintain whatever positioning mode was there, but that shouldn't be necessary during homing)
I don't use homing_override on my machines, and I got G90/G91 mixed up when I looked at this yesterday
Thanks ill give it a go
One thing I want to clarify, Y should be moving backwards for positive movements correct? That's what the voron guide seems to imply (X right, Y back) but I can't seem to get Y to move that way, I've checked the physical connections are correct and reversing directions in the cfg make it worse
I only setup a homing override because the cartographer guide said so for sensorless homing.
Checked STEPPER buzz again and all 4 motors rotate clockwise and back, so as far as I can tell its correct
Yes. While it is possible to set the coordinate system up however you like, all the examples and the only "regular" way of doing it is (0,0) being the front left corner, positive X to the right and positive Y going back.
Im just going to have to experiment with the directions in the cfg or flip the wire at the motors to see if i can fix it
Well I can't figure out how to change the 0,0 position to the front left
First you make sure your motor setup is correct (motors in the right order and correct directions):
https://docs.vorondesign.com/build/startup/startup.html?model=v2&step=5
Then, where the coordinate system "starts" is basically just set by endstop position. The usual setup is to have the toolhead home to the rear/right. If you then have the endstop position of both x and y set to 300/300 (maybe a bit more if the toolhead can go outside the bed in that direction), 0,0 will be at the opposite corner.
With sensorless you can home things basically in whichever corner you want, but it probably makes sense to go with the normal setup almost everyone else has until you got it up and running.
Doesn't fully help as it doesn't involve the extra motors of AWD, but I assume they also rotate clockwise and back. I'll double check the order of them tomorrow but I connected them to the board following LDO's own cfg examples so I shouldn't have to be changing anything.
The fact the X axis is OK makes me think order is fine.
Well I checked again and all motors are in the correct spot, motor pairs are in opposite corners as they should be, and they all rotate clockwise. Which I realise now has to be correct as flipping the front motors to counterclockwise would make them fight the rear motors.
Knowing that everything is connected correctly to LDO's guide and having already tested direction changes, it seems this build is intended to have 0,0 at the back left, as there's no way to reverse Y while keeping X as is (left to right)
The troubleshooting diagram in the startup guide is still correct, even with 4 motors. You just need to swap the X1/Y1 as well. And inverting dir pins also needs to be done on both steppers at the same time, e.g X and X1
@wheat heron when you say swap X1/Y1 do you mean swap the pins in the config? So X1 becomes Y1 and vice versa
It depends on where you are in the graph. The lower bar is a physical connector swap. So X<>Y and X1<>Y1. Upper bar is a config change (invert pins), again on one or both pairs of motors
Well if that's the case then LDO has the wrong directions on their cfg's
Also idk how I looked at that graph so many times and didn't once read that the connectors need swapping.
It might be a two step process. Lower bar -> Upper Bar -> fixed
Let's hope so
@wheat heron It's as i thought, LDO's own configs and other guides in general put the motors as B+A at the rear and A1+B1 at the front. But i noticed on the github for LDO'S AWD kit they have a little diagram for the motor layout as A+B and then B1+A1, so the complete opposite. So now I've swapped the wires for both pairs and now the X and Y works as intended but X, Y, X1 and Y1 corresponds to the opposite motor, so stepperbuzz X rotates the rear right. At least its working now and I now know for sure it wasn't my mistake.