I upgraded my Prusa i3 to Smoothie over the weekend and it's now up and running nicely with the current Edge firmware.
Coming from Marlin, one major difference I've noticed is, even after homing Smoothie will happily move an axis right past an endstop switch if you ask it to. For example, when jogging an axis around in Octoprint it's easy to accidentally leave the jog distance set to 100mm instead of 10mm or 1mm.
In my case, even after verifying my endstops were configured correctly, M119 showing the correct endstop status, and successfully homing the printer….I incorrectly assumed Smoothieware would know better and with one wrong mouse click my Y carriage tore the micro-switch clean off the endstop PCB…fortunately nothing else was damaged. Had it of been the Z axis the likely result could have had broken glass and bend rods.
Shouldn't triggering an endstop mean *STOP*?
And once homed, shouldn't Smoothieware apply limits to how far it will travel? As configured, Smoothie knows min is 0 and max is 200, and since I homed the printer it knew where the axis were currently positioned, shouldn't the firmware know better?
Enabling the limit switch options kind-of helps, assuming switches are positioned at both ends of all three axis. Unfortunately Prusa's are typically only equipped with endstops at the 0 positions so there would sill be nothing to prevent someone from accidentally jogging an axis too far. Not to mention the difficulty of setting the Z height because enabling the limit switch option requires home retracts.
So I'm curious…am I going about my endstop configuration all wrong? Does Smoothieware support configurable travel limits?