Ability To Disable Auto Bed Leveling With SV04?

Is there a way to disable the auto bed leveling feature on the SV04?

I tried a BLTouch on the Creality Ender3 and while it was reliable some of the time, it failed enough that I disabled it and manually level the bed each time I use it which doesn’t really need any adjusting. The probe would get pressed, but the read didn’t get acknowledged and the sequence would fail part way through. Homing the Z axis would usually end with the extruder being forced against the bed until the stepper would slip. I went back the previous firmware (without BLTouch) and used the included blade switch that would trigger the homed position.

Can the Sovol SV04 work the same?


Yes - you could disable all touch-sensor based bed leveling features in Marlin firmware & bring it on your SV04. However, it seems to make much more sense to get your touch sensor running.
You might want to run some touch sensor tests as decribed here: https://www.3dprintbeast.com/bltouch-self-test/
You’ll need a tool like Pronterface (Freeware) to initiate the mentioned G-Code test commands via USB connection from your computer.
If the touch sensor is still not working you may want to try the trouble shooting instructions suggested in the following link [Caveat: I won’t recommend changing firmware before being absolutely sure that there is no mechanical or electrical/wiring problem present]: https://3dprinterly.com/how-to-fix-auto-leveling-sensors-not-working-bltouch-more/

Thanks for the reply and information.

Oh, the touch sensor works —when it wants to work. It’s never completely broke and I have went over the wiring a few times. Self test has always been successful. Many of the bed checking spot routines are successful, but enough times it gets close the the last row and one spot won’t register. If I had nearby electronic interference, I would believe that it causes the errors because the failed points are not always the same. And I can’t rule out some type of interference, but in any case, the touch sensor fails too many times to be considered reliable in this shop. With the Ender3 Max, it takes me the same or less time to manually check the bed level vs the auto sensors. With a mechanical Z touch off switch, the extruder has get to meet the table. Creality does use a glass bed, so that helps keep a level plane.

OK - in that case I’d rather try to use ground shielded wiring to connect the touch sensor.

Disabling the touch sensor could be done by installing a microswitch as Z-endstop to the gantry & connecting it to the mainboard “Z1-” port (PE1) & changing the firmware as follows:
Comment out BLTOUCH PROBE in file “Configuration.h” :
//#define BLTOUCH
After firmware build & installation it should work as desired. If not check that Z-endstop switches with COM to ground and NC. Otherwise toggle in file “Configuration.h”:

1 Like

Excellent! Thank you @Bjoern

Perhaps grounded shielding would be the thing to try. I can’t think of a source of interference, but shielded wiring wouldn’t hurt, either. If the auto system works, I plan on using it as is, but your information here, in case it doesn’t work, is be invaluable! Thank you!

How did you increase the number of bed leveling mesh points? The Svo4 has a large enough bed i wonder if more points would help with a similar issue im having of some spots between points being off.

I imagine eventually there will be a standardized effective way to measure the entire bed without random points but more like a laser scanning it all as a desktop paper scanner scans the whole bed

Increasing the # of grid points requires altering printer firmware & display firmware - my SV04 currenty has 25 grid points. The easy part is changing file “Configuration.h” of the Marlin firmware:
// Set the number of grid points per dimension.
#define GRID_MAX_POINTS_X 5 //or any other #
The definition file of the touch display handler “RTS.h” also needs to altered as described below.

Altering the DGUS display firmware requires quite a bit more work:
You need to use the DGUS_tool (which seems to require Windows iot work stable) to insert images for all measured grid points in subfolder “43_bedlevel” & to add data output fields for all new grid points in image “22.jpg” in subfolder “32_main”. The adresses of all grid points have to be consecutive & need to match with the adresses in the Marlin firmware in file: “Marlin/src/lcd/e3v2/creality/LCD_RTS.h”

1 Like

Thanks. 25 sounds much more reliable. I will need to look into it

Just a followup: disabling the auto bed leveling has not been necessary as I have found that it works very well.

So, while I feel it doesn’t need disabled, the solution marked does answer the question and it is good to know that it could be done!

Thanks again @Bjoern