Re: Z motors stays on after M84
Janis
The problem is that the firmware does not know when a print is finished; there is no GCode for that other than the disable steppers command. As that no longer works, to turn the Z motors off, an "EndOfPrint" command would have to be implemented.
So you need to submit a firmware feature request which specifies that the Z motors must be turned off when a particular GCode command is received.
Peter
EDIT: FWIW, I dislike the situation as it is simply because it costs me money. Total waste of energy. But then I guess most of my prints are a complete waste of money anyway, so that's a difficult argument to put forward...
Please note: I do not have any affiliation with Prusa Research. Any advices given are offered in good faith. It is your responsibility to ensure that by following my advice you do not suffer or cause injury, damage…
Re: Z motors stays on after M84
OK, give us a clue how to do that then please...
No problem.
Configuration_adv.h:
//default stepper release if idle
#define DEFAULT_STEPPER_DEACTIVE_TIME 60
Re: Z motors stays on after M84
David
OK, brilliant, thanks. I was just too lazy to go looking 😉
Actually, I was watching a very interesting program on BBC2 about the Somme - including German perspective (my grandfather was there...)
Peter
Please note: I do not have any affiliation with Prusa Research. Any advices given are offered in good faith. It is your responsibility to ensure that by following my advice you do not suffer or cause injury, damage…
Re: Z motors stays on after M84
> To my mind, doing the 9-point check before every print is not necessary. Do it once and store the values. Then nothing has to change. Use probe point one to home Z after X and Y have been homed otherwise use the firmware Z value.
There is a good reason to run the 9 point calibration before each print. The print bed deforms with temperature to some extent, which the mesh bed leveling compensates. Therefore the 9 point calibration is performed before each print after the bed is heated.
We run the 9 point calibration on G28 simply to avoid crashed print beds, if someone generates a G-code without using the Prusa3D configuration just by hoping that the I3 MK2 is Marlin compatible. In my opinion our firmware is Marlin compatible: it works with the G-code generator or a control software switched to a Marlin mode.
We are working hard to make the 3D printing technology available to non-technical people. Surely we cannot avoid, that some decisions will make someone unhappy.
We appreciate a constructive feedback. I understand, that switching off the power to all motors is extremely important to some users, so we will discuss this issue in our planning. Our decision to keep the Z motors powered on all the time was not arbitrary. With the high pitch of the MK2 Z lead screws, it is much easier to push the X idlers down when the Z motors are powered off. For a non-technical savvy user, it is safer the way it is. I understand the reasons though, why someone wants to power the motors off.
Vojtech
Re: Z motors stays on after M84
And when your hotend DOES crash into the bed, because the firmware is faulty, what good is keeping the Z axis locked up going to do?
If the high pitch of of the lead screws means the gantry will move unpowered, that means in the event of a bed crash, releasing power to the z motors would help *reduce damage*.
I'm pretty sure even the nontechnical user would appreciate this.
Re: Z motors stays on after M84
In the event of crash, fastest way to move everything to comfortable position is simply switch whole printer off. Takes half a second. The extruder will cope with cooling fan outage pretty well, if the outage doesn't last long. Switch off - reposition - switch on. 3-4 seconds and cooling fan goes again.
I still agree with fact, that possibility of turning Z motors off is of great importance, but for another reasons.
Re: Z motors stays on after M84
My reason for wanting M84 to work is remote printing-- when the print is over, I do not need the thing heating up the motors for hours on end!! i could always re-enable motors and run another mesh-bed level if i needed to print again... so I would much rather *everything* powerdown on M84, since I am not there to hit the power switch, and have no other option.
Has anyone on this thread successfully made these modifications and compiled the firmware? I have no idea how to go about that, but I need to.
There are other changes I'd like to make to the firmware as well
Re: Z motors stays on after M84
How about using OctoPrint to power your printer off/on remotely?
https://github.com/foosel/OctoPrint/wiki/Controlling-a-relay-board-from-your-RPi
...doesn't sound too difficult.
-Kevin
Re: Z motors stays on after M84
Octoprint would be cool to have, especially with webcams.
I'm just not thrilled about being REQUIRED to invest another $100 + my time to get a feature that the printer is already capable of. Not only is it capable hardware wise, but it should already be doing this according to the marlin specifications.
Slicr and every other slicer program profile I've seen for this printer (I use Simplify), is programmed to do the Z home, which triggers mesh bed leveling before every print. So I dont understand why the Z motors must stay on? It's going to level before it prints next anyway
Re: Z motors stays on after M84
Just noticed that my Mk3 makes a sizzling noise when not in use. I was worried, found that it comes from the z-Motors, that they are always warm (not getting hot though). And finally found this thread which explains the behavior. I am glad to see that this is not a fault in the printer per se.
How about changing the default slic3r config for the prusa, to add a different command instead of M84 at the end?
Of course, other slicers would still finish with M84... so additional the firmware could track if the z-Motors have been disabled anytime since the last calibration, and give a helpful warning/error message about the issue before starting a new print? Users would the be able to quickly adapt their slicer settings.
I think the warning about possibly misaligned z-Motors is the crucial thing here.
That would deviate less from what is understood as gcode standard.
And it would allow people like everyone who made it to this thread to unarm the z-Motors whenever they want to.
PS. Using firmware 3.5.1
Re: Z motors stays on after M84
Hi Ryan,
there are two sets of levelling.
the first set, is levelling the X axis in relation to the printer frame, which hopefully will level it in relation to the print surface as well... this levelling is done at the initial configuration stage, by driving the Z motors up, until the X axis ends stall against the Z axis top brackets. this does not get repeatd at the beginning of a print.
then there is Mesh bed levelling, which can be executed at the beginning of every print.
the Z motors are energised to reduce the chances of the X axis becoming un level, whilst the user is doing regular maintenance, cleaning the nozzle, clearing blockages, changing nozzles etc.
there is nothing to stop you, an knowledgeable user, modifying the firmware to disable the Z motors, which would save a small amount of energy at the end of the print,
Modifying the firmware to wait until the extruder has cooled and then activating an external power off switch is also possible, but more complicate... however many users are not up to your level of competence, and de energising the Z motors may cause them unexpected problems.
It is within your power to add instructions to the Custom Start Gcode, to drive the Z axis to the top of it's travel to reassert the X axis levelling, but less competent people may not be able to do this, and the time taken and extra power used to re assert X axis levelling at every print start may add delays and power consumption that undermine the possible savings of de energising the Z motors...
the Beauty of the Prusa being an open source product, is that changes like this are entirely within your control.
regards Joan
I try to make safe suggestions,You should understand the context and ensure you are happy that they are safe before attempting to apply my suggestions, what you do, is YOUR responsibility. Location Halifax UK
RE: Z motors stays on after M84
Why do you think power to the stepper shortens the motor life?
With steppers, the usual failure mode is the bearings wear out. There is no bearing wear from having power applied.
RE: Z motors stays on after M84
It's just for me a question of energy wasted. Hot motors when IDLE means power used to heat air.
It's summer times here, I don't need it 😉