Emergency Stop Firmware 3.0



  • I have a little bit trouble with my Emergency Stop Button.
    So I use the Firmware Version 3.
    The wire I have take on Pin "e2stop" and grd.

    in my config i have take the code
    M581 P"e2_stop" T0 C0

    if i write M582 T2 in the console i take Nothink back.

    what´s the prob.

    i would later a custom scipt to leave the current possition and lower Z

    ; Configuration file for Duet WiFi (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.5 on Thu Jan 09 2020 09:19:35 GMT+0100 (Mitteleuropäische Normalzeit)

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

    M667 S1 ; select CoreXY mode

    ; Network
    M551 P"123" ; set password
    M552 S1 ; enable network
    M586 P0 S1 ; enable HTTP
    M586 P1 S0 ; disable FTP
    M586 P2 S0 ; disable Telnet

    ; Drives
    M569 P0 S1 ; 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
    M569 P4 S1 ; physical drive 4 goes forwards
    M584 X0 Y1 Z2 E3:4 ; set drive mapping
    M350 X16 Y16 Z16 E16:16 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z4257.9 E435.00:435.00 ; set steps per mm (Z4257.90)

    M566 X1000.00 Y1000.00 Z150.00 E1200.00:1200.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z360.00 E2400.00:2400.00 ; set maximum speeds (mm/min)
    M201 X1500.00 Y1500.00 Z500.00 E2000.00:2000.00 ; set accelerations (mm/s^2) standard=x2000.00 y2000.00
    M906 X1000 Y1000 Z1200 E1000:1000 I30 ; set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 X0 Y0 Z0 S1 ; set axis minima
    M208 X350 Y350 Z450 S0 ; set axis maxima

    ; Endstops
    M574 X2 S1 P"!xstop"
    M574 Y2 S1 P"!ystop"
    M574 Z2 S2
    ;M574 e2stop S1

    ; Z-Probe
    M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch
    M558 P9 C"^zprobe.in" H5 F100 T2000 ; set Z probe type to bltouch and the dive height + speeds
    G31 P500 X-17,5 Y15 Z1.30 ; set Z probe trigger value, offset and trigger height
    M557 X30:350 Y30:350 S40 ; define mesh grid

    ; Heaters
    M308 S0 P"bedtemp" Y"thermistor" T100000 B3950 ; configure sensor 0 as thermistor on pin bedtemp
    M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
    M143 H0 S120 ; set temperature limit for heater 0 to 120C
    M307 H0 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit
    M140 H0 ; map heated bed to heater 0
    M308 S1 P"e0temp" Y"thermistor" T100000 B4100 ; configure sensor 1 as thermistor on pin e0temp
    M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
    M143 H1 S280 ; set temperature limit for heater 1 to 280C
    M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
    M308 S2 P"e1temp" Y"thermistor" T100000 B4100 ; configure sensor 2 as thermistor on pin e1temp
    M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2
    M143 H2 S280 ; set temperature limit for heater 2 to 280C
    M307 H2 B0 S1.00

    ; Fans
    M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
    M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
    M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
    M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on
    M950 F2 C"fan2" Q500 ; create fan 2 on pin fan2 and set its frequency
    M106 P2 S1 H2 T45 ; set fan 2 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
    M563 P1 D1 H2 F0 ; define tool 1
    G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets
    G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C

    ; Custom settings are not defined

    ; Miscellaneous
    M501 ;Load saved parameters

    M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss

    ;FilamentSenoren
    M591 D0 P2 C"e0_stop" S1
    M591 D0
    M591 D1 P2 C"e1_stop" S1
    M591 D1

    ; *** Panic Button

    M581 P"e2_stop" T0 C0


  • administrators

    Please upgrade to release 3.01-RC4 and check whether the problem still occurs. The code to handle triggers has been largely rewritten since version 3.0. Note, the M581 syntax has been changed.



  • 🙂 I make tomorrow the Upgrade.
    Thx 4 the help.

    The BL-Touch config are the Same.



  • @CupaCabra If your were on RC2 or later, (and so if you upgrade to RC4) you first need to create an input pin using M950 with the J parameter,

    https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M950_Create_heater_fan_or_GPIO_servo_pin

    then use the P parameter to refer to this pin in your M581 command

    https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M581_RepRapFirmware_3_01RC2_and_later



  • For the bltouch make sure you add ^ (turn on pullup) to the pin name, it is off since rc2 IIRC. Might be required for the STOP too if you are just going to use that pin and GND.



  • Hello, Now I have install the new Firmware 3.01 RC4.
    But the config don’t won’t Trigger or make everything.

    M950 J1 C“e2stop“
    M581 P0:3 S1 T2 C1

    The GCode M582 T2 return nothing.



  • Now I read in the Doku. the right name of e2stop are exp.e2stop

    Are the right code
    M950 J1 C"^exp.e2stop”
    M581 P0:3 S1 T0 C0


Log in to reply