Basic Information:
Printer Model: Custom
MCU / Printerboard:Manta M8P
Host / SBC CB1
klippy.log -
Hi everyone, I’m looking to add a safety feature to my heated bed setup.
I have two temperature sensors: one on the print platform (target temperature) and another directly on the heater element itself.
Currently, I control the temperature of the print platform as the target. However, the issue arises because the heater often overheats in order to get the print platform to the desired temperature. For example, when the platform’s target is 80°C, the heater can reach up to 200°C while the platform is still warming up. (Once the temperature stabilizes, both settle around 80°C.)
I would like to keep controlling the print platform temperature as I have been, but I want to implement a safeguard to stop the heater when its own temperature exceeds, say, 200°C. Ideally, this should be done via software.
Possible Solutions I’ve Considered:
- Hardware Approach:
Use a relay controlled by atemperature_fan
. The relay would cut power to the heater when it exceeds 200°C and re-enable it when the temperature drops below 200°C. - Software Approach (Delayed Macro):
Use a delayed macro to evaluate the heater’s temperature periodically. If the temperature exceeds 200°C, the macro would set the heater bed’s target to 0°C, effectively disabling it. Once the temperature drops below 200°C, the target would be restored.
However, I’m hesitant about this method because delayed macros can sometimes respond too slowly, especially if there are long movement commands or complex operations queued beforehand.
My Question:
Is there a more automated or efficient way to implement this kind of safety mechanism within Klipper? Perhaps a component or feature that I’m not aware of that can handle these types of safety constraints?
Thanks in advance for your help!