Bed Visualizer - Using The Stored Data

Bed Visualizer looks like a handy tool; however the documentation from the dev that I've seen so far doesn't explain how to use its data for printing.

There's a checkbox in the app that I did not see anywhere in the documentation called "Ignore Bed Level Correction Matrix".

If I leave it unchecked then does the app use the firmware I'm running (Marlin) to make bed height corrections or does it have its own algorithm that it uses and under what circumstances? Does it only work when sending jobs to the printer through Octoprint?

Check the box to store the data in eeprom. Then use this command in the beginning of your slicer's gcode. It must be after your G28.

M420 S1 Z10 V ; Load and enable compensation and gradually reduce compensation until Z=10

I'm the dev. The plugin doesn't do anything to manipulate your gcode or printing. It just uses the gcode commands configured to graph the mesh data. If you choose the option to store mesh data it just saves it into the plugin's settings, again nothing related to the firmware for saving/retrieving mesh data.

1 Like

This option is explicitly for some firmware that causes issues with reporting. When the output includes that phrase.

1 Like

Ouch. I have been using it to scan and save it in the eeprom, I thought. Should I add an M500 to the plugin gcode to do that?

1 Like

Yes, if you want it to save to eeprom. The plugin doesn't have to run a probing process to get the report depending on firmware and the gcode commands used. For example, M420 V I believe will just report the eeprom stored mesh. The next version of the plugin will also include custom command buttons, currently in beta testing and you could put that M500 in one if them. The reason the plugin doesn't store to eeprom is again not all firmware is the same and some may not have eeprom saving support enabled.

1 Like

For example, M420 V I believe will just report the eeprom stored mesh.

Does that mean the plugin is watching for mesh reports all the time? I.E. can I enter M420 V at anytime and see the graph? If not what is needed to trigger it?

No, that's the magic of the @BEDLEVELVISUALIZER flag. You could run the commands @BEDLEVELVISUALIZER followed by the M420 V command and it will show the results of the stored mesh.

Unfortunately that would require I have different gcode for just showing the mesh from eeprom and gcode for doing the mesh scan and showing. Right?

Correct, but that's why I've incorporated custom buttons in the next release. You can have a button to run through the leveling process, then one to draw the mesh.


So after running Bed Visualizer, there's no way to save it's "findings" to EEPROM?

If your firmware supports storing it to EEPROM via gcode commands you can have that in the main GCODE script, or potentially as a separate custom button.

Have you tried it yourself?

@octomitch, you mean have I tried to create a custom button that sends an M500 to the printer to store the EEPROM config or add it to the command script for updating the mesh? No, I have not tried adding that command to the script or custom button, but I have sent the gcode command via terminal and it works with my firmware (Marlin 2 with EEPROM setting enabled). Like I mentioned, it's going to be firmware specific and whatever commands you use to store a mesh in EEPROM is the commands that you would use in the update mesh script or a custom button.

I don't really level my bed that much because it seems to retain it's levelness pretty well, so I might run through a leveling process once every 2-3 months, sometimes longer. I don't remove my top plate from my bed so it doesn't really move that much.

facepalm I thought I was using that plugin to save it to eeprom...DOH! this explains a lot

The M500 must go right after the G29, right?

1 Like

Yes - if you want to save the new leveling data in the eeprom.