Z axis wont home



  • In order to print i manually move the z axis up to the nozzle then send G92 Z0 to reset the z to zero. I can then send a file to the printer and it will home x and y and print. On completion i can print something else. However if i power off the printer, all the axis are set to 0 at whatever position they were left in. Homing x and y works fine, but homez does not work as it thinks its at 0. Below are my config g and home z and home all files in part;

    Config.g
    ; 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 Marlin
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X420 Y430 Z650 S0 ; Set axis maxima

    ; Endstops
    M574 Z1 S0 ; Define active low and unused microswitches
    M574 X1 Y1 S1 ; Define active high microswitches
    M558 P1 X0 Y0 Z1 H3 F200 T5000 R0 ; smart IR Z probe, used for homing Z axis only, dive height 3mm, probe speed 200mm/min, travel speed 5000mm/min, no recovery time
    G31 P500 X11.0 Y0.5 Z1.0 ; set threshold and offsets
    ;M558 P1 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 P500 X0 Y0 Z0.1 ; Set Z probe trigger value, offset and trigger height
    M557 X25:175 Y25:175 S25 ; Define mesh grid

    Homez

    ;G91 ; relative mode
    ;G1 Z4 F200 ; raise head 4mm to ensure it is above the switch trigger height
    ;G90 ; back to absolute mode
    ;G1 X0 Y0 F2000 ; put head wherever you want it to be when you home Z (omit this line if it doesn't matter)
    ;G91 ; relative mode
    ;G1 Z-200 S1 F100 ; move Z down until the switch triggers
    ;G90 ; back to absolute mode
    ;G92 Z0.3 ; tell the firmware that we are at Z=0.3mm

    G91 ; relative mode
    G1 Z4 F200 ; raise head 4mm to ensure it is above the Z probe trigger height
    G90 ; back to absolute mode
    G1 X100 Y100 F2000 ; put head over the centre of the bed, or wherever you want to probe
    G30 ; lower head, stop when probe triggered and set Z to trigger height

    Homeall

    G91 ; relative mode
    G1 Z4 F200 ; raise head 4mm
    G1 X-240 Y-240 F3000 S1 ; move up to 240mm in the -X and -Y directions until the homing switches are triggered
    G1 X4 Y4 F600 ; move slowly 6mm in +X and +Y directions
    G1 X-10 Y-10 S1 ; move up to 10mm in the -X and -Y directions until the homing switches are triggered
    G90 ; back to absolute mode
    G1 X100 Y100 F2000 ; put head over the centre of the bed, or wherever you want to probe
    G30 ; lower head, stop when probe triggered and set Z to trigger height

    Thanks in advance for any help.



  • Refresh my memory - what type of printer do you have? XY? Delta?

    Frederick



  • cartesian



  • @brian:

    cartesian

    What part moves in the Z axis - the hot end or the table?

    On such a printer what does the Z axis home to - the min or max value?

    Thanks.

    Frederick



  • @ CaLviNx

    Yes i have the ir probe connected and led flashes (4 times i think), on power up.

    Have changed the m574 as you directed.
    Uncommented the M558 lines.

    Ran the M119 with bed lowered it states z endstop at min, z probe at min. homez and homeall still the same that is they home the x and y but not the z axis. It seems to ignore the G30 command.

    I can still print as before by manually moving bed up to nozzle resetting z position to 0, lowering the bed then printing.

    Also the led for the z axis on the board does light up still when triggered and goes off as bed lowers.

    config file now;

    ; 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 Marlin
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X420 Y430 Z650 S0 ; Set axis maxima

    ; Endstops
    M574 Z0 S0 ; Define active low and unused microswitches -- changed Z1 to Z0 to indicate no endstop
    M574 X1 Y1 S1 ; Define active high microswitches
    M558 P1 X0 Y0 Z1 H3 F200 T5000 R0 ; smart IR Z probe, used for homing Z axis only, dive height 3mm, probe speed 200mm/min, travel speed 5000mm/min, no recovery time
    G31 P500 X11.0 Y0.5 Z1.0 ; set threshold and offsets
    M558 P1 X0 Y0 Z1 H5 F120 T6000 ; Set Z probe type to unmodulated, the axes for which it is used and the probe + travel speeds --uncommented june 25
    G31 P500 X0 Y0 Z0.1 ; Set Z probe trigger value, offset and trigger height --uncommented june 25
    M557 X25:175 Y25:175 S25 ; Define mesh grid



  • I dont know, so will comment out one.



  • @CaLviNx:

    …...................
    I'm wondering if there is a need for two sets of M558 and G31 commands

    I'm fairly sure that in config.g, if there are repeated commands, the later one will override the earlier. Or more to the point, they get execute in order. No doubt David will step in if I'm wrong….



  • Ok commenting out one line doesnt help.

    Following DC42's guide, and after sending the G30 S-1 command, error message; insufficient axis homed for bed probing. BTW the probe reading is always fluctuating between 954 and 955.



  • Strange. If it were just the probe…but i cant homez when only using endstops either, so much something else.



  • If the probe is always reading in the 900s regardless of whether it is touching something, then either the probe is damaged or it is not wired properly. So regardless of .g files, probe homing will not work until the probe readings are correct.

    Please post the config.g and homez.g files that you attempted to use with endstop homing.

    Please also post the results from M119 in the following situations:

    Z-endstop engaged
    Z-endstop released
    Z-probe activated (bed close enough to trigger it)
    Z-probe released (bed far enough away to not trigger it)



  • Configuration file for Duet WiFi (firmware version 1.19 beta6) Wifi working, z endstop not working
    ; executed by the firmware on start-up
    ; generated by RepRapFirmware Configuration Tool on Tue Jun 20 2017 17:30:36 GMT-0700 (Pacific Daylight 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 Marlin
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X420 Y430 Z650 S0 ; Set axis maxima

    ; Endstops
    M574 Z0 S0 ; Define active low and unused microswitches no need for this so have changed Z1 to Z0 to indicate no endstop
    M574 X1 Y1 S1 ; Define active high microswitches
    M558 P1 X0 Y0 Z1 H3 F200 T5000 R0 ; smart IR Z probe, used for homing Z axis only, dive height 3mm, probe speed 200mm/min, travel speed 5000mm/min, no recovery time
    G31 P500 X11.0 Y0.5 Z1.0 ; set threshold and offsets
    ;M558 P1 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 P500 X0 Y0 Z0.1 ; Set Z probe trigger value, offset and trigger height
    M557 X25:175 Y25:175 S25 ; Define mesh grid

    ; homez.g

    ;wiki/Configuring_RepRapFirmware_for_a_Cartesian_printer#Homing_Z_using_a_Z_probe
    G91 ; relative mode
    G1 Z4 F200 ; raise head 4mm to ensure it is above the switch trigger height
    G90 ; back to absolute mode
    G1 X0 Y0 F2000 ; put head wherever you want it to be when you home Z (omit this line if it doesn't matter)
    G91 ; relative mode
    G1 Z-200 S1 F100 ; move Z down until the switch triggers
    G90 ; back to absolute mode
    G92 Z0.3 ; tell the firmware that we are at Z=0.3mm

    ;G91 ; relative mode
    ;G1 Z4 F200 ; raise head 4mm to ensure it is above the Z probe trigger height
    ;G90 ; back to absolute mode
    ;G1 X100 Y100 F2000 ; put head over the centre of the bed, or wherever you want to probe
    ;G30 ; lower head, stop when probe triggered and set Z to trigger height

    Z-endstop engaged = @ min stop
    Z-endstop released = @ min stop
    Z-probe activated (bed close enough to trigger it) = @ min stop
    Z-probe released (bed far enough away to not trigger it) = @ min stop


  • administrators

    Does the red LED on the sensor light up when the sensor is triggered i.e. close to the bed, and stay off otherwise? If yes and you are getting those readings around 900 then that suggests a faulty connection between the sensor output pin and the Duet.



  • Just FYI David, I think he's using an Aus3D sensor.



  • Brian, you are not configuring properly for a Z-endstop:

    M574 Z0 S0 ; Define active low and unused microswitches no need for this so have changed Z1 to Z0 to indicate no endstop
    M574 X1 Y1 S1 ; Define active high microswitches

    That does not set up a Z-endstop in firmware. You'd need to get rid of the first line and change the second line to:

    M574 X1 Y1 Z1 S1 ; Define active high microswitches

    Assuming all three endstops are active high.

    Please do that and re-run the M119 tests.



  • @dc42:

    Does the red LED on the sensor light up when the sensor is triggered i.e. close to the bed, and stay off otherwise? If yes and you are getting those readings around 900 then that suggests a faulty connection between the sensor output pin and the Duet.

    No it doesnt. It flashes twice on start up only.


  • administrators

    That's not right. If you have connected it correctly then it should flash 4 times at startup. Perhaps you have connected the sensor output wire to the MOD pin of the Z probe connector instead of to the IN pin?



  • Z-endstop engaged = @ not stopped * this changed
    Z-endstop released = @ min stop
    Z-probe activated (bed close enough to trigger it) = @ min stop
    Z-probe released (bed far enough away to not trigger it) = @ min stop



  • @dc42:

    That's not right. If you have connected it correctly then it should flash 4 times at startup. Perhaps you have connected the sensor output wire to the MOD pin of the Z probe connector instead of to the IN pin?

    I've connected sensor duetwifi
    power to 3.3v
    grnd to mod
    –-- grnd
    analogue probe in

    Looks like i've got Grnd on sensor going to Mod on duet.



  • @brian:

    Z-endstop engaged = @ not stopped * this changed
    Z-endstop released = @ min stop
    Z-probe activated (bed close enough to trigger it) = @ min stop
    Z-probe released (bed far enough away to not trigger it) = @ min stop

    This is a step in the right direction, but it seems as though that switch is active low, not active high. I assumed all three endstop switches were the same but is seems that is not the case. Try changing this:

    M574 X1 Y1 Z1 S1 ; Define active high microswitches

    to:

    M574 Z1 S0 ; Define active low microswitches
    M574 X1 Y1 S1 ; Define active high microswitches

    That should set the firmware up to expect an active low microswitch on Z. The above code also assumes your endstop is at the Z-minimum, if it is at the Z-maximum then change to Z2 instead of Z1.


  • administrators

    Tim, thanks for that. Brian, you had better talk to aus3d if you are using their sensor. It's my sensor (also so!d by Duet3D and Filastruder) that should flash 4 times at startup when connected to a Duet.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.