Mirrored X axis



  • Hello I have been printing for a long time and have recently bought a FT5, which I am not thrilled with but oh well. I have recently upgraded the board with the duet 3D wifi and I love it! However my axis in the x axis is still flipped! I had to move my axis end-stop (because it was in the wrong stop) so now it should be homing at the back right. However my x goes in the opposite direction. Please help!



  • the homing moves are defined in the home[xyzall].g files. if you want to change the direction. you will need to edit them.


  • administrators

    Use a M569 command in config.g to reverse the X axis direction. See the GCodes page on the wiki.



  • Hello again, I tried this however when I press home all it still does the same thing. I then changed the home all file and it seemed to work. But when I tried to print something the motors drove in the opposite direction for the x/y and then only the y moved but only a little. So it was 'printing" in the back corner. I am not sure what is going on. I tired recreating the configuration settings and now nothing is moving. Really confused... what should my next step be?



  • Okay I tried uploading new config.g file and now I can't eve connect to the board... 😕 😠


  • Moderator

    Can you post your config files and homing files?

    There have been a few other posts about the FT5 such as this one. The confusion arises from the fact it uses the back right as the 0,0 point rather than the front left.

    Take a look at these posts: https://forum.duet3d.com/search?term=ft5&in=titlesposts



  • config.g
    ;;
    ;; Folgertech FT5 Configuration
    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 Marlin
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X305 Y304 Z410 S0 ; Set axis maxima

    M574 Y2 X2 Z0 S0 ; Define active high microswitches

    M558 P5 X0 Y0 Z1 H5 F120 T6000 ; Set Z probe type for BLTouch
    G31 P50 X-20.00 Y0 Z1.50 ; Set Z probe trigger value, offset and trigger height

    M584 X0 Y1:4 Z2 E3 ; Map to specific drives

    M569 P0 S1 ; Drive 0 - X
    M569 P1 S1 ; Drive 1 - Y
    M569 P2 S1 ; Drive 2 - Z
    M569 P3 S1 ; Drive 3 - E0
    M569 P4 S1 ; Drive 4 - Y

    M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
    M92 X80 Y80 Z399 E492.45 ; Set steps per mm
    M566 X1200 Y1200 Z60 E120 ; Set maximum instantaneous speed changes (mm/min)
    M203 X8000 Y8000 Z600 E1200 ; Set maximum speeds (mm/min)
    M201 X1500 Y1500 Z500 E250 ; Set accelerations (mm/s^2)
    M906 X1000 Y1000 Z1200 E900 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    M143 S260 ; Set maximum heater temperature to 260C
    M305 P0 T100000 B3950 C0 R4700 ; Set thermistor + ADC parameters for heated bed (Heater 0)
    M305 P1 T100000 B4388 C0 R4700 ; Set thermistor + ADC parameters for E0 (Heater 1)

    M307 H0 A281.7 C430.4 D4.4 B0 ; Bed PID
    M307 H1 A344.7 C122.8 D5.5 B0 ; Hotend PID
    M307 H3 A-1 C-1 D-1 ; BLTouch

    M563 P0 D0 H1 ; Define tool 0
    G10 P0 X0 Y0 ; Set tool 0 axis offsets
    G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C

    M550 PGraceFT5 ; Set machine name
    M552 P192.168.1.12 S1 ; Enable network and acquire dynamic address via DHCP

    M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S255 I0 F500 H1 T50 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P2 S255 I0 F500 H1 T50 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

    T0 ; Select first tool

    homeall
    ; /sys/homeall.g

    G28 X ; home X
    G28 Y ; home Y
    G28 Z ; home Z



  • Currently my x and y home but go to 300 after hitting end stops and my z does not move at all. Sorry for the late response. Thanks for all the help so far!


  • Moderator

    @Grace-Dert said in Mirrored X axis:

    homeall
    ; /sys/homeall.g
    G28 X ; home X
    G28 Y ; home Y
    G28 Z ; home Z

    We're gonna need to see all the homing files.

    In general, here's what you need to do to define your coordinate system. The FT5 is a little tricky because by default it puts the origin at the rear right, and has some printed grid on the bed surface (I think?) but really it's all arbitrary.

    First, choose a FRONT for the printer so that when you're looking at it standing in front of it 0,0 is the front left corner, X+ goes to the right, Y+ goes to the back. This does not change because it's describing the physical layout of the printer.

    Next, Measure the axis length for X and Y and enter that in your M208 command to set the axis limits. 0 at the low end (or even negative if the head leaves the bed surface to hit the endstop). This does not change because it's describing the physical layout of the printer.

    Now identify where your endstops are located. They can be at the low or high end of the axis. Define them with M574. M574 X1 Y1 for low side, M574 X2 Y2 for high side, or any combo thereof. This does not change because it's describing the physical layout of the printer.

    Now setup your homing movements. If the endstop is at the low end of the axis, the homing move must be negative. And vice versa. This does not change because it's describing the physical layout of the printer.

    Now test the motor movement direction. If X+ moves to the right, you're good to go. If it moves left, you need to change the motor rotation for the X driver by changing the M569 S0/S1 command in config.g. Same goes for Y+ moving to the back. If you've connected the motors to their default drivers, it should be mapped like this:

    M569 P0 S0                                         	; Drive 0 (x) goes backwards
    M569 P1 S0                                         	; Drive 1 (y) goes backwards
    M569 P2 S0                                         	; Drive 2 (z) goes backwards
    M569 P3 S0                                         	; Drive 3 (e) goes backwards
    

    If you follow those steps your printed parts will match the orientation in the slicer and won't be mirrored.

    I think what has happened is that you moved the endstop but didn't change the M574 command to match.



  • @Phaedrux
    Home x
    ; /sys/homex.g

    M402 ; make sure the probe is retracted

    G1 X310 F5000 S1 ; move quickly to X axis endstop and stop there (first pass)

    G91 ; relative moves
    G1 X-5 F6000 ; go back a 5mm
    G90 ; absolute moves
    M400 ; wait for the move to complete

    G1 X310 F360 S1 ; move slowly to X axis endstop once more (second pass)
    Home y
    ; /sys/homey.g

    M402 ; make sure the probe is retracted

    G1 Y310 F6000 S1 ; move quickly to Y axis endstop and stop there (first pass)

    G91 ; relative moves
    G1 Y-5 F6000 ; go back a 5mm
    G90 ; absolute moves
    M400 ; wait for the move to complete

    G1 Y310 F360 S1 ; move slowly to Y axis endstop once more (second pass)
    Home z
    ; /sys/homez.g

    M280 P3 S160 I1 ; reset gcode for bltouch
    M400 ; wait for reset to complete
    M558 F300 ; set probe speed to 300mm/min

    G91 ; relative moves
    G1 Z10 F8000 ; move bed down 10mm
    G90 ; absolute moves
    M400 ; wait for the move to complete

    G1 X300 Y300 F8000 ; move to probe position
    M400 ; wait for the move to complete

    M401 ; deploy probe

    G30 ; probe

    M402 ; retect probe

    G91 ; relative moves
    G1 Z4 F8000 ; move bed down 4mm
    G90 ; absolute moves
    M400 ; wait for the move to complete

    M558 F80 ; set probe speed to 80mm/min
    M401 ; deploy probe

    G30 ; probe

    M402 ; retract probe

    G91 ; relative moves
    G1 Z4 F8000 ; move bed down 4mm
    G90 ; absolute moves
    M400 ; wait for the move to complete

    M558 F200 ; set probe speed to 300mm/min



  • So I currently got my x and y homing but I just want to check and see if I did it right if you don't mind. However my z axis is not moving at all which is odd...
    Config
    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 Marlin
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X300 Y300 Z300 S0 ; Set axis maxima

    M574 X2 Y2 Z1 S0 ; Define active high microswitches

    ;M558 P5 X0 Y0 Z1 H5 F120 T6000 ; Set Z probe type for BLTouch
    ;G31 P50 X-20.00 Y0 Z1.50 ; Set Z probe trigger value, offset and trigger height

    M584 X0 Y1:4 Z2 E3 ; Map to specific drives

    M569 P0 S1 ; Drive 0 - X
    M569 P1 S1 ; Drive 1 - Y
    M569 P2 S1 ; Drive 2 - Z
    M569 P3 S0 ; Drive 3 - E0
    ;M569 P4 S1 ; Drive 4 - Y

    M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
    M92 X80 Y80 Z399 E492.45 ; Set steps per mm
    M566 X1200 Y1200 Z60 E120 ; Set maximum instantaneous speed changes (mm/min)
    M203 X8000 Y8000 Z600 E1200 ; Set maximum speeds (mm/min)
    M201 X1500 Y1500 Z500 E250 ; Set accelerations (mm/s^2)
    M906 X1000 Y1000 Z1200 E900 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    M143 S260 ; Set maximum heater temperature to 260C
    M305 P0 T100000 B3950 C0 R4700 ; Set thermistor + ADC parameters for heated bed (Heater 0)
    M305 P1 T100000 B4388 C0 R4700 ; Set thermistor + ADC parameters for E0 (Heater 1)

    M307 H0 A281.7 C430.4 D4.4 B0 ; Bed PID
    M307 H1 A344.7 C122.8 D5.5 B0 ; Hotend PID
    M307 H3 A-1 C-1 D-1 ; BLTouch

    M563 P0 D0 H1 ; Define tool 0
    G10 P0 X0 Y0 ; Set tool 0 axis offsets
    G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C

    M550 PGraceFT5 ; Set machine name
    M552 P192.168.1.12 S1 ; Enable network and acquire dynamic address via DHCP

    M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S255 I0 F500 H1 T50 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P2 S255 I0 F500 H1 T50 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

    T0 ; Select first tool

    home x
    G1 X300 F5000 S1 ; move quickly to X axis endstop and stop there (first pass)

    G91 ; relative moves
    G1 X-5 F6000 ; go back a 5mm
    G90 ; absolute moves
    M400 ; wait for the move to complete

    G1 X300 F360 S1 ; move slowly to X axis endstop once more (second pass)

    home y
    G1 Y300 F6000 S1 ; move quickly to Y axis endstop and stop there (first pass)

    G91 ; relative moves
    G1 Y-5 F6000 ; go back a 5mm
    G90 ; absolute moves
    M400 ; wait for the move to complete

    G1 Y300 F360 S1 ; move slowly to Y axis endstop once more (second pass)



  • So I think I fixed everything! Maybe... everything homes now and so far doesn't appear mirrored. Thanks so much for the help so far!
    Home x

    M402 ; make sure the probe is retracted

    G1 X300 F5000 S1 ; move quickly to X axis endstop and stop there (first pass)

    G91 ; relative moves
    G1 X-5 F6000 ; go back a 5mm
    G90 ; absolute moves
    M400 ; wait for the move to complete

    G1 X300 F360 S1 ; move slowly to X axis endstop once more (second pass)
    Home y

    M402 ; make sure the probe is retracted

    G1 Y300 F6000 S1 ; move quickly to Y axis endstop and stop there (first pass)

    G91 ; relative moves
    G1 Y-5 F6000 ; go back a 5mm
    G90 ; absolute moves
    M400 ; wait for the move to complete

    G1 Y300 F360 S1 ; move slowly to Y axis endstop once more (second pass)
    Home z
    G1 Z-300 F5000 S1 ; move quickly to X axis endstop and stop there (first pass)

    G91 ; relative moves
    G1 Z5 F6000 ; go back a 5mm
    G90 ; absolute moves
    M400 ; wait for the move to complete

    G1 Z-300 F360 S1 ; move slowly to X axis endstop once more (second pass)
    Config
    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 Marlin
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X300 Y300 Z300 S0 ; Set axis maxima

    M574 X2 Y2 Z0 S0 ; Define active high microswitches

    ;M558 P5 X0 Y0 Z1 H5 F120 T6000 ; Set Z probe type for BLTouch
    ;G31 P50 X-20.00 Y0 Z1.50 ; Set Z probe trigger value, offset and trigger height

    M584 X0 Y1:4 Z2 E3 ; Map to specific drives

    M569 P0 S1 ; Drive 0 - X
    M569 P1 S1 ; Drive 1 - Y
    M569 P2 S0 ; Drive 2 - Z
    M569 P3 S0 ; Drive 3 - E0
    ;M569 P4 S1 ; Drive 4 - Y

    M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
    M92 X80 Y80 Z399 E492.45 ; Set steps per mm
    M566 X1200 Y1200 Z60 E120 ; Set maximum instantaneous speed changes (mm/min)
    M203 X8000 Y8000 Z600 E1200 ; Set maximum speeds (mm/min)
    M201 X1500 Y1500 Z500 E250 ; Set accelerations (mm/s^2)
    M906 X1000 Y1000 Z1000 E900 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    M143 S260 ; Set maximum heater temperature to 260C
    M305 P0 T100000 B3950 C0 R4700 ; Set thermistor + ADC parameters for heated bed (Heater 0)
    M305 P1 T100000 B4388 C0 R4700 ; Set thermistor + ADC parameters for E0 (Heater 1)

    M307 H0 A281.7 C430.4 D4.4 B0 ; Bed PID
    M307 H1 A344.7 C122.8 D5.5 B0 ; Hotend PID
    M307 H3 A-1 C-1 D-1 ; BLTouch

    M563 P0 D0 H1 ; Define tool 0
    G10 P0 X0 Y0 ; Set tool 0 axis offsets
    G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C

    M550 PGraceFT5 ; Set machine name
    M552 P192.168.1.14 S1 ; Enable network and acquire dynamic address via DHCP

    M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S255 I0 F500 H1 T50 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P2 S255 I0 F500 H1 T50 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

    T0 ; Select first tool


  • Moderator

    @Grace-Dert said in Mirrored X axis:

    M401 ; deploy probe
    G30 ; probe
    M402 ; retect probe

    Are you using an endstop or a z probe to home the Z axis?



  • @Phaedrux endstop


  • Moderator

    @Grace-Dert said in Mirrored X axis:

    M574 X2 Y2 Z0 S0 ; Define active high microswitches

    In that case you should change that Z0 to Z1 (assuming it's a zmin endstop). Z0 means no endstop configured.


Log in to reply