INITIAL HOMING BLUES



  • MACHINE: FT5-R2 (COREXY)
    FIRMWARE: 2.02
    BOARD: DUET WIFI

    CAN'T SEEM TO GET THE PRINTER TO HOME CORRECTLY FOR X OR Y.

    LOOKING FROM THE FRONT, HOME SHOULD BE AT RIGHT REAR. HOW SHOULD CONFIG.G LOOK? ADDITIONALLY, DO I NEED TO DO ANYTHING IN HOMEX,Y OR HOMEALL?

    FINALLY, ARE THERE ANY SPECIFIC INSTRUCTIONS FOR HOMING INITIALLY, AND OR TESTING THE HOMING? I JUST DON'T UNDERSTAND THE COMMANDS AND WHAT CHANGING PART OR ALL OF A PARTICULAR LINE DOES.



  • First, all caps on the internet is considered shouting and is considered to be rude.

    Home at right rear, this is where the limit switches are located, correct?

    The steppers need to move so that -x is to the right, and -y is to the rear. Same thing phrased another way: Positive moves in X and Y need to move away from the limit switches.

    Specific instructions for first home:

    • First, test each switch with your finger. The light on the board where that individual limit switch is plugged in should change, and the status in the DWC (Duet Web Control) should also change.

    • Second, when you start a home, be instantly ready to power the machine off if it moves the wrong way, etc. Literally one hand on the mouse and the other on the power switch (or cord).

    • When you do the first home, long before a given axis reaches its switch, press that switch with your finger and be sure that axis stops.

    If any of the above are not true (switches in wrong place, lights/status not changing, carriage moving wrong way, carriage not stopping when switch is triggered), tell us which specific one you are trying, and we'll go from there.

    If the all work.... then the machine should home.



  • Also, see: https://duet3d.dozuki.com/Wiki/Connecting_endstop_switches

    Particularly the "Testing endstop switches" topic.



  • And... last... why right rear origin? You do realize that "standing in front of the bed" that makes all the coordinates "backwards" to your point of view? X will increase to the right (backwards from western language convention). Y will increase towards you (again, backwards to the way almost all people think, and all documents are written, for X/Y coordinate systems).

    This won't matter to the printer or the object being printed... it will be confusing to humans looking at the printer.

    It is much more common for square beds to origin in the lower left, because this makes all the coordinates "normal". Llke reading a book. The coordinates maps to the cartesian plane positive coordinate quadrant. Etc. Etc.



  • @swrightlast

    Is the right-rear at X max and Y max?

    Once we know that we can proceed.

    A axis is considered homed once some command specifies the current position of that axis.

    Just executing the command G92 X0 Y0 Z0 will mark all axes homed and set their current position to 0 even though the actual positions could be anything.

    The normal way of homing a axis is to execute a relative G0 command with the H1 parameter.

    The axis parameter (X,Y,Z) determines which axis is being homed and the distance to move to reach the endstop switch.

    The H1 parameter specifies that when the endstop switch is triggered the movement stops and the current position is set to the min or max value specified in M208 for that axis. The configuration of the endstop specifies if it is located at the min or max end of the axis and determines if the min or max value from M208 is used.

    For example (as a bare minimum):

    G92 ; specifies a relative move
    G0 X999 H1 ; move X up to 999mm in the positive direction until the endstop switch is triggered

    Normally homing is a multiple step process:

    G92
    G0 X999 F1000 H1 ; the first move is done at a high speed (F1000) to save time
    G0 X-10 F1000 ; then we back off a small amount
    G0 X11 F100 H1 ; the second move is done at a low speed (F100) which may improve accuracy

    Is that enough to get you started?

    Frederick



  • @Danal , sorry for the all caps...just a brainfart....certainly didn't mean any rudeness or disrespect.



  • Hi,

    I just noticed that you listed your machine as a FT5-R2 (COREXY).

    If you mean a FolgerTech FT5-R2 have you modified it to be a CoreXY machine?

    A normal FT5 is a Cartesian machine.

    Frederick



  • @Danal said in INITIAL HOMING BLUES:

    And... last... why right rear origin?

    I don't think he meant the origin was in the right-rear.

    I think he is talking about the location of the endstop switches, which on a stock FT-5 are at the axis maxima.

    Frederick



  • @fcwilt said in INITIAL HOMING BLUES:

    location of the endstop switches, on a stock FT-5 are at the axis minimum (0,o.0)



  • @fcwilt FolgerTech FT5-R2 modified it to be a CoreXY machine. It's in corexy mode in wdc.



  • I always thought that the corexy homing position is front left...that is how I set mine..



  • @swrightlast said in INITIAL HOMING BLUES:

    @fcwilt said in INITIAL HOMING BLUES:

    location of the endstop switches, on a stock FT-5 are at the axis minimum (0,o.0)

    Not on mine.

    I wonder if they made a change.

    But to be sure we are on the same page, 0,0 is the left front corner, correct?

    Frederick



  • @Danal home is at right rear, looking from front of printer. Homing x, it moves along the y axis, toward the front of printer. By the way, all endstops work when triggered, and show it to be so in wdc.



  • @fcwilt I have, and always have had home at 0,0,0. For me that is right rear. Ft5-r2 has always had it home to right rear.



  • @swrightlast

    Where a printer homes is not tied to where 0,0 is.

    On my FT-5, facing the machine, the X axis endstop is on the right, the Y axis endstop is at the rear.

    In most cases you want these to be the axis maxima.

    This allows 0,0 to at the left-front corner of the bed, which is quite common though some folks (like me) prefer to have 0,0 be at the center of the bed.

    So don't assume that the endstop switch locations automatically define position 0,0.

    Frederick



  • left_right_hand.gif

    Slicers use a right hand coordinate system, with 0,0,0 being front left. Y+ extends back from there, X+ goes to the right, and Z+ goes up. Setting up the firmware to use the same coordinates makes sure your parts come out oriented the same way as they are shown in the slicer and not rotated or worse, mirrored.

    The endstop positions can be at the low end (near the 0 points) or they can be at the high end (near the opposite end of 0). That's controlled by the endstop definition and the direction of homing moves in the homing macros.

    https://duet3d.dozuki.com/Wiki/Gcode#Section_M574_Set_endstop_configuration

    Additionally, motor direction for coreXY printers is important.

    https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter
    Note the movement section to check for proper motor directionality. Also note the examples of the homing files.

    This is an excellent write up as well. https://drmrehorst.blogspot.com/2017/08/setting-up-3d-printers-origin.html

    So just to reiterate, the 0,0,0 point should be at the front left of the printer. Where the printer homes to is completely independent.

    If you post your config.g and homing files we can suggest what to change. But we will need to ensure first that your motor directions are correct. Then it's just a matter of setting the correct endstop position in config.g and setting the correct movement direction in the homing files.



  • @fcwilt said in INITIAL HOMING BLUES:

    On my FT-5, facing the machine, the X axis endstop is on the right, the Y axis is at the rear.

    On my FT-5, facing the machine, the X axis endstop is on the right, the Y axis is at the rear. I said home right rear, 0,0 because thats what my gridded bed shows, with front right, 0,300, and front left 300, 300.



  • @P; Configuration file for Duet WiFi (firmware version 2.03)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2.0.4 on Mon Sep 16 2019 10:02:48 GMT-0700 (Pacific Daylight Time)

    ; General preferences
    G90 ; send absolute coordinates...
    M83 ; ...but relative extruder moves
    M550 P"My Printer" ; set printer name

    M667 S1 ; select CoreXY mode

    ; Network
    M552 S1 ; enable network
    M586 P0 S1 ; enable HTTP
    M586 P1 S0 ; disable FTP
    M586 P2 S0 ; disable Telnet

    ; Drives
    M569 P0 S0 ; physical drive 0 goes forwards
    M569 P1 S1 ; physical drive 1 goes forwards
    M569 P2 S0 ; physical drive 2 goes forwards
    M569 P3 S1 ; physical drive 3 goes forwards
    M584 X0 Y1 Z2 E3 ; set drive mapping
    M350 X64 Y64 Z64 E32 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z4000.00 E412.53 ; set steps per mm
    M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 X0 Y0 Z0 S0 ; set axis minima
    M208 X300 Y300 Z380 S0 ; set axis maxima

    ; Endstops

    M574 X1 Y1 Z0 S0 ; set active low endstops

    ; Z-Probe
    M558 P0 H5 F120 T6000 ; disable Z probe but set dive height, probe speed and travel speed
    M557 X15:215 Y15:195 S20 ; define mesh grid

    ; Heaters
    M305 P0 T100000 B4138 R4700 ; set thermistor + ADC parameters for heater 0
    M143 H0 S120 ; set temperature limit for heater 0 to 120C
    M305 P1 T100000 B4138 R4700 ; set thermistor + ADC parameters for heater 1
    M143 H1 S280 ; set temperature limit for heater 1 to 280C

    ; Fans
    M106 P0 S0 I0 F500 H-1 ; set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F500 H-1 ; set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off

    ; Tools
    M563 P0 D0 H1 F0 ; 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

    ; Custom settings are not defined

    haedrux ; Configuration file for Duet WiFi (firmware version 2.03)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2.0.4 on Mon Sep 16 2019 10:02:48 GMT-0700 (Pacific Daylight Time)

    ; General preferences
    G90 ; send absolute coordinates...
    M83 ; ...but relative extruder moves
    M550 P"My Printer" ; set printer name

    M667 S1 ; select CoreXY mode

    ; Network
    M552 S1 ; enable network
    M586 P0 S1 ; enable HTTP
    M586 P1 S0 ; disable FTP
    M586 P2 S0 ; disable Telnet

    ; Drives
    M569 P0 S0 ; physical drive 0 goes forwards
    M569 P1 S1 ; physical drive 1 goes forwards
    M569 P2 S0 ; physical drive 2 goes forwards
    M569 P3 S1 ; physical drive 3 goes forwards
    M584 X0 Y1 Z2 E3 ; set drive mapping
    M350 X64 Y64 Z64 E32 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z4000.00 E412.53 ; set steps per mm
    M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 X0 Y0 Z0 S0 ; set axis minima
    M208 X300 Y300 Z380 S0 ; set axis maxima

    ; Endstops

    M574 X1 Y1 Z0 S0 ; set active low endstops

    ; Z-Probe
    M558 P0 H5 F120 T6000 ; disable Z probe but set dive height, probe speed and travel speed
    M557 X15:215 Y15:195 S20 ; define mesh grid

    ; Heaters
    M305 P0 T100000 B4138 R4700 ; set thermistor + ADC parameters for heater 0
    M143 H0 S120 ; set temperature limit for heater 0 to 120C
    M305 P1 T100000 B4138 R4700 ; set thermistor + ADC parameters for heater 1
    M143 H1 S280 ; set temperature limit for heater 1 to 280C

    ; Fans
    M106 P0 S0 I0 F500 H-1 ; set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F500 H-1 ; set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off

    ; Tools
    M563 P0 D0 H1 F0 ; 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

    ; Custom settings are not defined



  • ; homex.g
    ; called to home the X axis
    ;
    ; generated by RepRapFirmware Configuration Tool v2 on Sun Aug 25 2019 14:27:06 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    G1 Z5 F6000 S2 ; lift Z relative to current position
    G1 S1 X-305 F1800 ; move quickly to X axis endstop and stop there (first pass)
    G1 X5 F6000 ; go back a few mm
    G1 S1 X-305 F360 ; move slowly to X axis endstop once more (second pass)
    G1 Z-5 F6000 S2 ; lower Z again
    G90 ; absolute positioning

    Phaedrux ; homex.g
    ; called to home the X axis
    ;
    ; generated by RepRapFirmware Configuration Tool v2 on Sun Aug 25 2019 14:27:06 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    G1 Z5 F6000 S2 ; lift Z relative to current position
    G1 S1 X-305 F1800 ; move quickly to X axis endstop and stop there (first pass)
    G1 X5 F6000 ; go back a few mm
    G1 S1 X-305 F360 ; move slowly to X axis endstop once more (second pass)
    G1 Z-5 F6000 S2 ; lower Z again
    G90 ; absolute positioning



  • ; homex.g
    ; called to home the X axis
    ;
    ; generated by RepRapFirmware Configuration Tool v2 on Sun Aug 25 2019 14:27:06 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    G1 Z5 F6000 S2 ; lift Z relative to current position
    G1 S1 X-305 F1800 ; move quickly to X axis endstop and stop there (first pass)
    G1 X5 F6000 ; go back a few mm
    G1 S1 X-305 F360 ; move slowly to X axis endstop once more (second pass)
    G1 Z-5 F6000 S2 ; lower Z again
    G90 ; absolute positioning

    @Phaedrux ; homey.g
    ; called to home the Y axis
    ;
    ; generated by RepRapFirmware Configuration Tool v2 on Sun Aug 25 2019 14:27:06 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    G1 Z5 F6000 S2 ; lift Z relative to current position
    G1 S1 Y-305 F1800 ; move quickly to Y axis endstop and stop there (first pass)
    G1 Y5 F6000 ; go back a few mm
    G1 S1 Y-305 F360 ; move slowly to Y axis endstop once more (second pass)
    G1 Z-5 F6000 S2 ; lower Z again
    G90 ; absolute positioning


Log in to reply