MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.14k stars 19.2k forks source link

[FR] Engage TEMP_STAT_LEDS in PID autotune #25573

Open pcnate opened 1 year ago

pcnate commented 1 year ago

Did you test the latest bugfix-2.1.x code?

Yes, and the problem still exists.

Bug Description

When using the M303 command to do PID autotuning, the LED status does not seem to update. This could be a small safety issue by forgetting the tuning is ongoing due to the lack of color. Normally when you set the temp for printing or manually, the LED triggers right away regardless of the temp. I waited until the temp reached 54C but it still did not come on.

As a side note, I use the inverted output of the blue component for RGB to enable some fans so I was lucky to notice this. There may be a better way but I am not aware.

Bug Timeline

NA

Expected behavior

I expect the TEMP_STAT_LEDS to be applied even during autotune. At least enough to alert the user that the hotend has been activated.

Actual behavior

TEMP_STAT_LEDS are radio silent while the hotend is engaged until after the autotune completes.

Steps to Reproduce

Run autotune whilst an RGB light is configured.

Version of Marlin Firmware

2.1.x bugfix

Printer model

Kossel 800

Electronics

RAMPS 1.4

Add-ons

No response

Bed Leveling

ABL Bilinear mesh

Your Slicer

Cura

Host Software

OctoPrint

Don't forget to include

Additional information & file uploads

Configuration.zip

thinkyhead commented 1 year ago

At the moment the temp stat LEDs apply only to the user-set temperatures (with codes like M104, etc.) and not to temperatures set internally during tuning procedures. Making the LEDs respond would require code being added specifically to Temperature::PID_autotune and extending the tempstat.* code to receive temperature values from a caller, rather than from thermalManager.wholeDeg... and thermalManager.degTarget....

Thanks for the suggestion. If you are in a hurry to get this implemented, consider putting up a Help Wanted request on our Discord server.

Tannoo commented 8 months ago

I do not have TEMP_STAT_LEDS defined and my Neopixel strip lights up during the autotunes. I just wish my fans would do the same.