Stop Button crashes SM

An emergency stop button must switch off the entire machine and prevent it from being switched on again. That is the rule. Otherwise it is not allowed to use the designation emergency stop.
He fulfills this function perfectly.

1 Like

@HubertM you are right - but also according to the rules - when you lose communication with the emergency button (the cable breaks or disconnects), the machine should also immediately go to emergency stop.

Users write that it does not work like that - some of them checked the source codes.

@Tomi Thanks for the hint. The emergency stop definitely saved my machine. It was stupid of my own.

Then I want an non-emergency stop button too… because that is what I need much more often.

@kalmdown You have that, called the power switch.

The power switch kills everything - more than the Stop button…so it is not non-emergency - it’s like [more urgent emergency].

It is and EMERGENCY button, I should everything off, imagine the laser setting something on fire, burning some electric cable, sparks flying, everything is electrified…
Emergency should shut everything off, DIRECTLY.
For what you want you, it looks like something that could be added to Luban or Octoprint.
Or you could use the PAUSE function…

1 Like

I do not have any specific issue but I’ll weigh in here,

In my country and my industry an eSTOP has a set of standards designed to keep people alive/from being maimed…

However SM has implemented this I am not sure is right…, I had pause to use it once and it did not work without a firmware update.

I’m not in the habit of smashing my eSTOP for the sake of it but it should immediately kill all power to the machine. There should also be a lock out for the eSTOP where a padlock can be attached

Pug

I would like a switch SW/HW as is appropriate that lets me choose how hard the stop for the Stop Switch should be - stop movement or kill power…and any others. I would pick stop movement because that is the problem I have.

1 Like

On commercial CNC Machines we call this the “Hold” Button, it pauses axis movement immediately then we can either stop spindle(for a closer look), make adjustments(Feed/speed/Rapid overrides) and continue or reset.
This is not the function of the E-Stop button, and from what I have read here the button they sell is a partially functioning E-Stop. On Commercial CNC the E-Stop cuts power to all axis/spindle and a reset/power-up cycle is required to continue.
I am amazed at how capable these machines are at the price points we get them for. Sensors and programming and so-on to make these idiot-proof would drive the cost up considerably, in the end they would just make better idiots.
The best option is to take your time, understand the process and take steps to minimize your mistakes. Set your Z Above your clamp height(touch off on block of known height) and dry-run your program to see if it does what you expect before risking your cutter/workpiece/machine.
Getting hung up on what one part of the machine does or doesn’t do will lead you away from what you wanted to do “Make Cool Stuff”. Have fun.

I don’t think sensors are idiotic, and I don’t care what professional machines do. I want this machine (for amateurs) to not break itself and be easy to use (stop movement and let me debug what is going on). I do try to minimize my mistakes. That being said, sensors would preserve expensive pieces of equipment from mistakes that users cannot know about because the functions of the machine are complex and difficult to know. Personally, I can have much more fun knowing the machine won’t plant an expensive part of itself in the bed.

Switching everything off is ok, but the lights of the enclosure should stay on!

The emergency behavior is a bit iffy in general. It cuts the lights for some reason but does not turn off the power to the rails so they can be moved manually. I modified the firmware on mine so that the lights stay on, the fan to the vent outside turns on (if the laser module is in use), and the power to the rails is cut.

It’s not ideal but the best way of getting what you want is doing it yourself. Software support (and quality) is quite disappointing in my experience.

1 Like

Can you share how you made that modification which kept the lights on and the fan to turn on with the laser if it wasn’t already?

Here’s a patch file for the changes I made (in Snapmaker2-Controller repository):

diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h
index 893c0a35d..f51c622e8 100644
--- a/Marlin/src/inc/Version.h
+++ b/Marlin/src/inc/Version.h
@@ -38,7 +38,7 @@
   /**
    * Marlin release version identifier
    */
-  #define SHORT_BUILD_VERSION "SM2-4.4.19"
+  #define SHORT_BUILD_VERSION "SM2-4.4.19-Custom"
 
   /**
    * Verbose version identifier which should contain a reference to the location
diff --git a/snapmaker/src/service/quick_stop.cpp b/snapmaker/src/service/quick_stop.cpp
index db09aca07..f554fa7ba 100644
--- a/snapmaker/src/service/quick_stop.cpp
+++ b/snapmaker/src/service/quick_stop.cpp
@@ -326,12 +326,13 @@ void QuickStopService::EmergencyStop() {
     case MACHINE_TYPE_LASER_10W:
       laser->SetCameraLight(0);
       laser->SetFanPower(0);
+      enclosure.SetFanSpeed(100);
       break;
     case MACHINE_TYPE_UNDEFINE:
       break;
   }
-  enclosure.SetFanSpeed(0);
-  enclosure.SetLightBar(0);
+  enclosure.SetLightBar(100);
+  disable_power_domain(POWER_DOMAIN_1);
 }
 
 void QuickStopService::Process() {

Note that this only affects 10W laser, you may need additional modifications for the 1600mW laser.