I have just fitted a BLTouch to a Sovol SV01, and flashed Marlin firmware. Bed leveling etc and building the bed mesh all went OK. Slicer is Cura 4.7.1.

However, it won't print.

The Gcode created by Cura after macro expansion etc is as follow

;Filament used: 0.14214m

;Generated with Cura_SteamEngine 4.7.1
M82 ;absolute extrusion mode
M501;Load settings from EEPROM (necessary for Z offset)

; Following settings from Sovol
M201 X500.00 Y500.00 Z100.00 E5000.00 ;Setup machine max acceleration
M203 X500.00 Y500.00 Z10.00 E50.00 ;Setup machine max feedrate
M204 P500.00 R1000.00 T500.00 ;Setup Print/Retract/Travel acceleration
M205 X8.00 Y8.00 Z0.40 E5.00 ;Setup Jerk
M220 S100 ;Reset Feedrate
M221 S100 ;Reset Flowrate

M190 S60 ;Heat bed - wait
M104 S200 ;Heat extruder - no wait

G28 ;Home
M420 S ; Turn leveling back on after G28 (why is this needed?)
G29 L0 ;Load mesh
G29 J ;Three point level

M109 S200 ;Heat extruder - wait

G92 E0 ;Reset Extruder
G1 Z2.0 F3000 ;Move Z Axis up
G1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position
G1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line
G1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little
G1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line
G92 E0 ;Reset Extruder
G1 Z2.0 F3000 ;Move Z Axis up

G92 E0
G92 E0
G1 F3000 E-3
.... and so on

It heats up the bed OK, and it starts heating the nozzle. It then does the three point level OK, then waits for the nozzle to get up to temperature (200) - the M109 S200.

But that is as far as it gets. The nozzle comes up to 200 and generally moves between about 197 and 203 degrees. The bed sits at around 60/61. I can hear a fan keep speeding up and slowing down, and the info display just says 'E heating ...'. That's it.

It cannot seem to get past waiting for the nozzle to heat - but it has, and M109 S200 should wait for it to reach temp, and continue.

Can anyone advise what has gone wrong here?

  • $\begingroup$ Except for the temperature instability, I get exactly the same behavior when I write the G-code file from Cura directly onto the SD card, when I save it to another location on hard drive first and copy it later to the SD card, it works fine... $\endgroup$
    – 0scar
    Oct 20, 2020 at 18:31

1 Answer 1


I think I might have found it - PID problem (heater has a PID loop). Standard values are 32/3/85 (P/I/D). Just watching the temperature, I noticed there was a lot of overshoot.

It appears that to continue after a temp wait, it must stay within some limit for a period - don't know either number. But, presumably, it wasn't.

There is an autotune PID gcode - M303 E0 S200 C8 says 'autotune extruder 0, at 200 °V, looping 8 times. Ran that and I could see it getting better on each iteration. Unfortunately, didn't manage to find a way of seeing what it came up with, and could not get the result written back to E2P either (M500).

So, resorted to tried and trusted techniques - fiddled with it. In the end reduced P to 20.0 and I to 2.0 - and it started printing.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .