-
-
Notifications
You must be signed in to change notification settings - Fork 19.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Request for security - PID autotune #12679
Comments
Yikes. |
Marlin has already MAXTEMP value for each heater in Configuration.h, so it could be easy to add check to M303 command to respect those values.
For example. if you try to run PID tunning from LCD menu, the max. heater temperature is already limited to value MAXTEMP - 15. |
Wrong, this security function is not stored in the console input
|
Whoa, who made your heaters that they can do 600C. Can the temp sensor even read that? All the cheap stuff barely reaches the low polycarbonate ranges but you could be printing in PEEK. :) Yea, all these functions should be respecting maxtemp if they are not. |
M104/109 and M140/190 should be already protected by HEATER_x_MAXTEMP and BED_MAXTEMP. It's true, that you can set a higher temperature than the limit set in Configuration.h (using these gcodes), but ThermalManager will refuse to heat up hotend or bed above those limits. So, the only problem is with M303. |
I guess the thing to do now is to test . No, I do not wish to have a smoldering pile of wreckage, so I am lowering maxtemp for the test. #define HEATER_0_MAXTEMP 170 //280 //275 Indeed, I can exceed MAXTEMP with M303. Goes into a normal PID tune routine. |
@rmoravcik Thanks |
@HuguesDug Pull request created #12703. I hope it will be merged soon. |
@HuguesDug problem solved? |
Hello, I did not test the fix because I did not feel like trying to burn the machine a second time. But having read the code modification, I am sure it works. Thanks for this security fix. |
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Good morning,
Last week-end I converted my Anet A8 from Marlin 1.1.8 to 1.1.9.
I started the PID autotune calibration by using the M303 command. But, entering the wrong S value (1850 instead of 185).
I then discovered that there is no max temperature inside the firmware that would protect the equipment. The extruder went up to 600°C in no time, before I jumped onto the power plug.
I would recommand to set a max level inside the firmware so, even in case of an error in M303, you don't burn your house !
Thanks.
Hugues
The text was updated successfully, but these errors were encountered: