I’m trying to do some temperature calibration, using the M104 command to change hot-end temperature on the fly between layers/sections of the tower.
It consistently waits a few seconds for the temperature to stabilize whenever I trigger an M104 command.
I have inserted my gcode in the “before layer change” section, it looks like this
{if layer_z >= 1.05} M104 S220 {endif}
{if layer_z >= 11.05} M104 S225 {endif}
(etc.)
With different layer_z values for the different temperature sections up to 260°C
I can’t find anything in the marlin documentation that would cause this, only M109 should trigger the waiting AFAIK?
I have checked the generated gcode, and it only uses M104 commands.
Your analysis seems right. The M104 should not wait. What printer do you have? Is the firmware up to date?
I have an anycubic Kobra 2, running the newest firmware available from their website (v3.0.6).
My guess right now, is that they’ve done something messed up in their FW or config of Marlin that causes this.
This printer has honestly been a bit of a nuisance as soon as I move beyond simply loading files to SD card and printing. My attempts at customising things don’t really work because of weird bugs like this. I’m at a point where I’m considering replacing the control board with something from BTT and just run klipper.
Klipper is the way. No more compiling firmware to make changes, you just edit a config file and restart, which takes 3 seconds.
Are you sure you need a different board though? Might be able to flash klipper with your stock board
From what I’ve been able to find out, it’s a proprietary board and not easily compatible with klipper. Honestly I’d be willing to spend a little just to avoid having the headache of making klipper “maybe sorta work OK”
fair point, I swapped my boards and don’t regret it