Skip to content

CF6 is not enforcing MAXTEMP for any nozzle heater settings or gcodes like M303 #237

@Thinkersbluff

Description

@Thinkersbluff

Description

I have confirmed by testing that CF6 Final does not prevent users from specifying nozzle temperatures higher than MAXTEMP-HOTEND_OVERSHOOT.

I can not test whether it protects against out of limit temperatures for a Chamber heater or a Laser Cooler, since I don't have either, but I have confirmed that it does still prevent users from entering bed temperatures higher than MAXTEMP-BED_OVERSHOOT.

This issue may be an upstream bug introduced into Marlin bugfix2.0, I don't know, but since it creates a potential safety issue for CF6 users, I have flagged it here and have updated the Release Notes to incorporate a new Safety Warning and a Known Issues entry to document it.

NOTE: There may be a related error in the Configuration Files included with CF6-Final, since these lines (added to Configuration.h in (Marlin Issue#21273)[https://github.com/MarlinFirmware/pull/21273]) are missing from those files:

"/**

  • Thermal Overshoot
  • During heatup (and printing) the temperature can often "overshoot" the target by many degrees
  • (especially before PID tuning). Setting the target temperature too close to MAXTEMP guarantees
  • a MAXTEMP shutdown! Use these values to forbid temperatures being set too close to MAXTEMP.
    /
    #define HOTEND_OVERSHOOT 15 // (°C) Forbid temperatures over MAXTEMP - OVERSHOOT
    #define BED_OVERSHOOT 10 // (°C) Forbid temperatures over MAXTEMP - OVERSHOOT"

I did try recompiling the BTT MB/Stock TFT firmware.bin after editing the Configuration.h to add the above lines, but that by itself has not fixed the bug.

Steps to Reproduce

  1. Select any UI function that allows specifying a nozzle temperature (e.g. Setup->Temperature->Nozzle)
  2. Enter 285
  3. Printer begins heating the nozzle.

Expected behavior:

Printer should NOT accept any nozzle temperature higher than 260. (275-15)

Actual behavior:

Printer allows entry of 285C and implements the command.

Additional Information

I first found this problem while using a CR6-SE running "CR6Comm-CF6-FINAL-btt-skr-cr6-with-stock-creality-tft-2021-03-27-15-50".
I was not able to solve this problem by recompiling the Source Code.zip files after adding the missing lines to Configuration.h from (Marlin Issue#21273)[https://github.com/MarlinFirmware/pull/21273]

M303 E0 S285 also initiates a nozzle PID, but it should cancel the M303 and produce a message saying PID Too High.
M303 E-1 S120 does cancel the M303 and does produce a message saying PID Too High.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions