X axis homes to the wrong direction
-
Hi
So I have been trying to figure out how to change the X home direction but alas I am failing. This all started with trying to get the axis actually moving in the right planes. Y moves home in the direction I want now etc but X still gives me hassles as it wants to home to the + side. How can I set this in firmware? I believe the 569 setting needs to be changed however if I change this it just makes everything go in diagonals. i have also tried switching the between the drivers but I still end up in the same place. config as follows:
; Configuration file for Duet WiFi (firmware version 1.17)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool on Sun Aug 13 2017 15:24:35 GMT+0200 (South Africa Standard Time); General preferences
M111 S0 ; Debugging off
G21 ; Work in millimetres
G90 ; Send absolute coordinates…
M83 ; ...but relative extruder moves
M555 P2 ; Set firmware compatibility to look like MarlinM667 S1 ; Select CoreXY mode
M208 X0 Y0 Z0 S1 ; Set axis minima
M208 X400 Y400 Z400 S0 ; Set axis maxima; Endstops
M574 Z0 S0 ; Define active low and unused microswitches
M574 X1 Y2 S1 ; Define active high microswitches
M558 P4 X0 Y0 Z1 H5 F120 T6000 ; Set Z probe type to unmodulated, the axes for which it is used and the probe + travel speeds
G31 P600 X0 Y0 Z2.5 ; Set Z probe trigger value, offset and trigger height
M557 X15:385 Y15:385 S20 ; Define mesh grid; Drives
M569 P0 S0 ; Drive 0 goes forwards
M569 P1 S1 ; Drive 1 goes forwards
M569 P2 S1 ; Drive 2 goes forwards
M569 P3 S1 ; Drive 3 goes forwards
M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
M92 X174.978 Y174.978 Z400 E417 ; Set steps per mm
M566 X900 Y900 Z12 E120 ; Set maximum instantaneous speed changes (mm/min)
M203 X9000 Y9000 Z180 E1200 ; Set maximum speeds (mm/min)
M201 X500 Y20 Z250 E250 ; Set accelerations (mm/s^2)
M906 X1000 Y1000 Z1000 E1000 I60 ; Set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Heaters
M143 S260 ; Set maximum heater temperature to 260C
M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0
M305 P1 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 1; Tools
M563 P0 D0 H1 ; Define tool 0
G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C; Network
Fancy network stuff goes here.
; Fans
M106 P0 S0.3 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on; Custom settings are not configured
-
This is usually caused by one of the motor directions (M569) being incorrect. You can try this https://duet3d.com/wiki/Configuring_RepRapFirmware_for_a_CoreXY_printer#Movement_section
Alternatively, there are only 4 possible combinations so you can use trial and error. Assuming your two XY drives are P0 and P1, the combinations are:
P0 S0 and P1 S0
P0 S0 and P1 S1
P0 S1 and P1 S0
P0 S1 and P1 S1. -
Sorted had to change the second line to S1. Now when I home after it hits the endstops there is a screeching noise.
-
M569 P0 S1 ; Drive 0 goes forwards
M569 P1 S0 ; Drive 1 goes forwardsSorry my english is failing me today I meant I had to do this after I swapped the drivers around. Now just that screeching noise and to get Z to actually home
-
Is it just a problem with X homing in the wrong direction, or are the X jog buttons also moving the head the wrong way?
Which corner of the bed are you calling X=0 Y=0, and which directions are you calling +X and +Y ?
-
all jogs right now from what I can see. Just z does not home when homing all axis now
-
-
Got it thank you so much its homing now. And its just the mesh levelling that I need to sort out. Seems it probes a few points then says that that the probe was activated at the next point already.
-
Increase the dive height. It's the H parameter in the M558 command.