Can not home z and y



  • Hi I use micro switch as endstops, and i can home x when i do a "home all" but z and y is not home - I do not get any errors, and if I check to endstops only X is yes, z and y is no.

    I got a duet 3 ver 1.0

    Config :

    ; Configuration file for Duet 3 (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 05 2020 09:32:29 GMT+0200 (Centraleuropæisk sommertid)

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

    ; Network
    M552 P192.168.1.123 S1 ; enable network and set IP address
    M553 P255.255.255.0 ; set netmask
    M554 P192.168.1.254 ; set gateway
    M586 P0 S1 ; enable HTTP
    M586 P1 S0 ; disable FTP
    M586 P2 S0 ; disable Telnet

    ; Drives
    M569 P0.0 S1 ; physical drive 0.0 X goes forwards
    M569 P0.1 S0 ; physical drive 0.1 X goes backwards 24-08-2020 2209
    M569 P0.2 S1 ; physical drive 0.2 Y goes forwards
    M569 P0.3 S0 ; physical drive 0.3 Z goes backwards 18-08-2020 2224
    M569 P0.5 S1 ; physical drive 0.5 goes forwards
    M584 X0.0:0.1 Y0.2 Z0.3 E0.5 ; set drive mapping 24-08-2020 2202
    M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z400.00 E420.00 ; set steps per mm 24-08-2020 2233
    M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z1000.00 E1200.00 ; set maximum speeds (mm/min) 24-08-2020 2242
    M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
    M906 X2100 Y1900 Z800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent 28-08-2020 1753
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 X0 Y0 Z0 S1 ; set axis minima
    M208 X1000 Y500 Z500 S0 ; set axis maxima

    ; Endstops
    M574 X1 S1 P"!io0.in" ; configure active-low endstop for low end on X via pin io0.in 25-08-2020 0907
    M574 Y1 S1 P"!io2.in" ; configure active-low endstop for low end on Y via pin io1.in 28-08-2020 1905
    M574 Z1 S1 P"!io3.in" ; configure active-low endstop for low end on Z via pin io2.in 28-08-2020 1905

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

    ; Heaters
    M308 S0 P"temp1" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp1
    M950 H0 C"out1" T0 ; create nozzle heater output on out1 and map it to sensor 0
    M307 H0 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
    M308 S1 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp0
    M950 H1 C"out0" T1 ; create nozzle heater output on out0 and map it to sensor 1
    M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit

    ; Fans
    M950 F0 C"out3" Q500 ; create fan 0 on pin out3 and set its frequency
    M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
    M950 F1 C"out4" Q500 ; create fan 1 on pin out4 and set its frequency
    M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on

    ; 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

    M122 :

    M122
    === Diagnostics ===
    RepRapFirmware for Duet 3 MB6HC version 3.1.1 running on Duet 3 MB6HC v0.6 or 1.0 (standalone mode)
    Board ID: 08DJM-956L2-G43S4-6J9FG-3S86T-KB5LD
    Used output buffers: 1 of 40 (11 max)
    === RTOS ===
    Static ram: 154604
    Dynamic ram: 162284 of which 44 recycled
    Exception stack ram used: 512
    Never used ram: 75772
    Tasks: NETWORK(ready,324) ETHERNET(blocked,436) HEAT(blocked,1200) CanReceiv(suspended,3820) CanSender(suspended,1420) CanClock(blocked,1424) TMC(blocked,68) MAIN(running,4472) IDLE(ready,76)
    Owned mutexes:
    === Platform ===
    Last reset 00:15:05 ago, cause: software
    Last software reset at 2020-08-28 19:06, reason: User, spinning module GCodes, available RAM 76060 bytes (slot 0)
    Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0444a000 BFAR 0x00000000 SP 0xffffffff Task MAIN
    Error status: 0
    MCU temperature: min 25.0, current 30.0, max 30.3
    Supply voltage: min 24.0, current 24.1, max 24.2, under voltage events: 0, over voltage events: 0, power good: yes
    12V rail voltage: min 12.0, current 12.1, max 12.2, under voltage events: 0
    Driver 0: standstill, reads 57941, writes 31 timeouts 0, SG min/max 0/534
    Driver 1: standstill, reads 57942, writes 31 timeouts 0, SG min/max 0/502
    Driver 2: standstill, reads 57943, writes 31 timeouts 0, SG min/max 0/286
    Driver 3: standstill, reads 57936, writes 39 timeouts 0, SG min/max 0/430
    Driver 4: standstill, reads 57964, writes 11 timeouts 0, SG min/max 0/0
    Driver 5: standstill, reads 57962, writes 14 timeouts 0, SG min/max 0/0
    Date/time: 2020-08-28 19:21:12
    Slowest loop: 35.94ms; fastest: 0.14ms
    === Storage ===
    Free file entries: 10
    SD card 0 detected, interface speed: 25.0MBytes/sec
    SD card longest read time 3.2ms, write time 1.8ms, max retries 0
    === Move ===
    Hiccups: 0(0), FreeDm: 375, MinFreeDm: 373, MaxWait: 68061ms
    Bed compensation in use: none, comp offset 0.000
    === MainDDARing ===
    Scheduled moves: 68, completed moves: 68, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1
    === AuxDDARing ===
    Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1
    === Heat ===
    Bed heaters = -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
    === GCodes ===
    Segments left: 0
    Movement lock held by null
    HTTP is idle in state(s) 0
    Telnet is idle in state(s) 0
    File is idle in state(s) 0
    USB is idle in state(s) 0
    Aux is idle in state(s) 0
    Trigger is idle in state(s) 0
    Queue is idle in state(s) 0
    LCD is idle in state(s) 0
    SBC is idle in state(s) 0
    Daemon is idle in state(s) 0
    Aux2 is idle in state(s) 0
    Autopause is idle in state(s) 0
    Code queue is empty.
    === Network ===
    Slowest loop: 54.54ms; fastest: 0.03ms
    Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions Telnet(0), 0 sessions
    HTTP sessions: 1 of 8

    • Ethernet -
      State: active
      Error counts: 0 0 0 0 0
      Socket states: 5 2 2 2 2 0 0 0
      === CAN ===
      Messages sent 3645, longest wait 0ms for type 0
      === Linux interface ===
      State: 0, failed transfers: 0
      Last transfer: 905968ms ago
      RX/TX seq numbers: 0/1
      SPI underruns 0, overruns 0
      Number of disconnects: 0
      Buffer RX/TX: 0/0-0
      Can anybody help me ?


  • @Finnls please post the homeall.g, this file is used for homing. And please tell which printer you have (model or type of kinematic Cartesian, CoreXY etc.).



  • Hi My printer is a Cartesian, and here is my homeall.g

    ; homeall.g
    ; called to home all axes
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 05 2020 09:32:29 GMT+0200 (Centraleuropæisk sommertid)
    G91 ; relative positioning
    G1 H2 Z5 F1000 ; lift Z relative to current position
    G1 H1 X-1005 Y-505 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
    G1 H2 X5 Y5 F1000 ; go back a few mm
    G1 H1 X-1005 Y-505 F360 ; move slowly to X and Y axis endstops once more (second pass)
    G1 H1 Z-505 F360 ; move Z down stopping at the endstop
    G90 ; absolute positioning
    G92 Z0 ; set Z position to axis minimum (you may want to adjust this)

    ; Uncomment the following lines to lift Z after probing
    ;G91 ; relative positioning
    ;G1 Z5 F100 ; lift Z relative to current position
    ;G90 ; absolute positioning



  • @Finnls this looks ok.

    If you trigger the endstops manually (with the finger), does it show triggered correctly, for the right axes?



  • Yes the do.

    G1 H1 X-1005 Y-505 F1800 - do not move y
    G1 H2 X5 Y5 F1000 - do move y

    I have run homeall.g ono by one in console



  • @Finnls said in Can not home z and y:

    G1 H1 X-1005 Y-505 F1800 - do not move y

    what do you mean by "do not move y", it only moves X? With cartesian, both axes should move until both endstops are hit. Like described in https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCartesianPrinter#Section_The_homeall_g_file

    But you can test split command of course:
    G1 H1 X-1005 F1800
    G1 H1 Y-505 F1800

    The M574 S1 with ! means normally open switches, is this correct?



  • When I send G1 H1 Y-505 F1800 - Y moves between 1 to 6-7 mm and stops.

    But Y is 0.0 in status.

    My endstops are micro sw 2wire, one to gnd, and one to in



  • @Finnls looks like the Y endstop is activated immediately, maybe it's of type NC (normally closed) and you need to remove the ! in the M574 for Y.

    Or a disturbing signal closed the switch immediately, please try moving the endstop wires with a little distance to other wires. (That's the reason why NC is recommended).

    Or the printer vibrations trigger the endstop.

    The Y 0.0 is a hint that the y endstop was triggered, because G1 H1 mode stops at the endstop and sets Y to the M208 limit, which is 0 in your case.



  • Not vibrations, but disturbing signal, I think you are on to something - maybe i need a resistor between in and 5v



  • @JoergS5 said in Can not home z and y:

    (That's the reason why NC is recommended).

    Sorry I did not seen that - i can make it to NC. I will do that - Thanks



  • @Finnls said in Can not home z and y:

    maybe i need a resistor between in and 5v

    you would not need it, Duet 3's io.in have already pullup resistors:
    https://duet3d.dozuki.com/Wiki/Connecting_endstop_switches#Section_Duet_3_endstop_inputs

    But I expect using NC will solve the issue.



  • Thank you JoergS5 it is solved



  • @Finnls I'm pleased, thank you for confirmation!


Log in to reply