Welcome! Log In Create A New Profile


Odd G29 (UBL) Behavior

Posted by bclamore 
Odd G29 (UBL) Behavior
September 28, 2022 11:35AM
Hi all,

I am using Marlin 2.0.5 on a Formbot Raptor 1. I've been running the same gcode at the start of a print for years, but now the behavior is different. The gcode of interest is:

G29 L1
G29 J

For some reason this causes the machine to probe the entire bed as is done during a UBL setup. The print continues after this, but probing the entire bed (121 points) takes 15 minutes, which I would like to avoid. I've printed a mesh test pattern, and all looks good.

My question is: how to use the UBL data but stop probing the entire bed again?

Thank you!
Re: Odd G29 (UBL) Behavior
October 31, 2022 02:07PM
i'm not really sure with your device, but G29 is the probe bed function.

G29 J should normally be ok as default, maybe try J3 (9 point check, so has more data) or J4.

your machine and firmware setup behavior are understood more by you. just approach changes with caution and be ready to power off machine if it acts up during settings changes when using commands not done before on machine.

here is a breakdown of commands from above:

G29 A enables UBL leveling
G29 L1 loads and uses previous mesh data so we don't need to do bed leveling again. in this case from eeprom location 1
G29 J Do a grid (planar) leveling of the current Mesh using a grid with n points on a side. but no Jn n location number is present so it defaults to 3 point check unless it is confused by results of mesh calibration stored.

my guess is the bed leveling is not the same as normal, or the bed height somehow changes during measure and the firmware just gets confused from having so few values it detects or errors in checking of values so it does an array check of bed mesh
so try J3 which gives it 9 values to check, and troubleshoot leveling issues to mechanics even if this fixes issue. this also might be fixed with a future firmware update that could allow wider mechanical tolerance defaults or whatever. here is where i read about issue [www.reddit.com]
here are all the subset commands as in the wiki. this might help. i do not know what sub commands you machine supports.

G29 UBL Parameters (synopsis)
A Activate Activate the Unified Bed Leveling system. (i.e., M420 S1)
D Disable Disable the Unified Bed Leveling system. (i.e., M420 S0)

B# Business Do Manual Probing in 'Business Card' mode.
H# Height Height to raise the nozzle after each Manual Probe of the bed.

C Continue Continue, Constant, or Current Location, depending on Phase.
E Every Stow the probe after every sampled point.
F# Fade Fade leveling compensation gradually, until it ceases at the given height.
I# Invalidate Invalidate a specified number of Mesh Points (X and Y).
J# Grid Do a grid (planar) leveling of the current Mesh using a grid with n points on a side.
K# Kompare Compare (diff) current Mesh with stored Mesh #, replacing current Mesh with the result.

L Load Load Mesh from the previously activated location in the EEPROM.
L# Load Load Mesh from the specified location in the EEPROM.
S Store Store the current Mesh in the Activated area of the EEPROM. Also save all settings.
S # Store Store the current Mesh at the specified area in EEPROM, set as the Activated area.
S -1 Store Store the current Mesh as a print-out suitable to be fed back into the system.

O Map Display the Mesh Map Topology.

P0 Phase 0 Zero Mesh Data and turn off the Mesh Compensation System.
P1 Phase 1 Invalidate the Mesh and do Automatic Probing to generate new Mesh data.
P2 Phase 2 Probe unpopulated areas of the Mesh (those that couldn't be auto-probed).
P3 Phase 3 Fill unpopulated Mesh points with a fixed value. No 'C' for "smart fill" extrapolation.
P4 Phase 4 Fine tune the Mesh. ** Delta Mesh Compensation requires an LCD panel. **
P5 Phase 5 Find Mean Mesh Height and Standard Deviation.
P6 Phase 6 Shift Mesh height. All Mesh points are adjusted by the amount specified with 'C'.

Q Test Load specified Test Pattern to help check system operation.

R # Repeat Repeat the command the specified number of times. Default: grid points X * Y.

T 3-Point Perform a 3-Point Bed Leveling on the current Mesh.

U Unlevel Perform a probe of the outer perimeter to assist in physically leveling the bed.

W What? Print a report of Unified Bed Leveling stored data.

X # The X location for the command
Y # The Y location for the command

Z Zero Do a single probe to set the Z Height of the nozzle.
Z # Zero Raise/lower the entire Mesh to conform with the specified difference (plus zprobe_zoffset).

please also comment if the issues is resolved for future readers troubleshooting.

Edited 3 time(s). Last edit at 10/31/2022 02:15PM by jamesdanielv.
Re: Odd G29 (UBL) Behavior
October 31, 2022 03:51PM
Thanks so much for the reply. I think the problem is an invalid mesh. The cause could be a number of things, including the sensor and/or the EEPROM. I can still print; it just takes longer. I've noticed some areas of the first layer are curling up, like the extruder is too high (low?). But other areas are fine -- nice and flat. This suggests some invalid entries in the mesh.

I need to find a terminal utility to connect to the control board's USB-A connector and view the data, but I don't know if my IT Dept will let me install a utility. Got a utility you can recommend?


Sorry, only registered users may post in this forum.

Click here to login