bigtreetech / BIGTREETECH-TouchScreenFirmware

support TFT35 V1.0/V1.1/V1.2/V2.0/V3.0, TFT28, TFT24 V1.1, TFT43, TFT50, TFT70
GNU General Public License v3.0
1.29k stars 1.64k forks source link

[FR] - Heater timeout during pause #2501

Closed Help3D-Padova closed 2 years ago

Help3D-Padova commented 2 years ago

Filament sensor trigger a Pause and the nozzle go to the park position with the heater on, could be possible to add a configurable timer (inside config.ini) to turn off the heater after a long pause ? There are some materials that, even after a long retraction, suffers degradation due to the heat in the nozzle and sometimes clog it.

@digant73 what do you think ?

digant73 commented 2 years ago

There is a Marlin setting to switch the heaters off after some inactivity period but I do not see any gcode for changing that setting from TFT fw. If existing, it could be simply added in the start gcodes

Help3D-Padova commented 2 years ago

There is a timer for the stepper motor inactivity but none for the heater, how is called on Marlin ?

digant73 commented 2 years ago

HOTEND_IDLE_TIMEOUT in Configuration_adv.h

Help3D-Padova commented 2 years ago

There is also

define PAUSE_PARK_NOZZLE_TIMEOUT 45 // (seconds) Time limit before the nozzle is turned off for safety.

but is not used because Pause routine is handled by LCD FW right ?

But using https://marlinfw.org/docs/gcode/M125.html override the LCD pause routine.

digant73 commented 2 years ago

No, PAUSE_PARK_NOZZLE_TIMEOUT is related to M600 and M125 (so it is used only printing from onboard) not from TFT's SD/USB (pause is handled by TFT).

Help3D-Padova commented 2 years ago

My Fault... this was a request for Artillery printers that doesn't have an onboard SD card

digant73 commented 2 years ago

Ok, so you have to use HOTEND_IDLE_TIMEOUT (it's provided exactly for the issue you want to avoid).

Help3D-Padova commented 2 years ago

Yes ok but the Filament Sensor is not triggering an M600 or M125, i'll try to add it manually in the code :)

digant73 commented 2 years ago

That's correct. The filament sensor will simply trigger a print pause (no gcode is sent). Once in pause (so there is no print activity), the settings on HOTEND_IDLE_TIMEOUT should be used by Marlin after the configured timeout value HOTEND_IDLE_TIMEOUT_SEC.

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

github-actions[bot] commented 4 months ago

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.