Fundamental Calibration Issue...?

i have two heated beds too… ultimately nothing has cured the fact that the calibration doesn’t account fully for bed deformation.

I had a creative thought on new years eve (alcohol) that maybe its partly the pattern it follows during calibration - because i believe the bed moves up and down ever so slightly on many machines (i am talking maybe 0.05 of movement) when it goes backwards and forwards, but the calibration is done mostly left to right. In the sober light of day i am doubting this idea - but struggling to come up with anything else that is mechanical in nature, and same between auto and manual calibration.

(snapmaker asserts that the issue is mechanical not firmware and they don’t know what)

1 Like

It’s not optical? The sensor detects metal. There’s a “common” mod where you replace the sensor with an IR sensor since glass reflects IR.

1 Like

its not optical. It uses an inductive capacitive sensor IIRC.
(or maybe its a hall sensor, not sure, either way its not optical or IR)
Auto Bed Leveling (ABL) Sensor Comparison – 3DMaker Engineering

I’m looking forward to being snowed in for most of Feb, without anyone around to complain about the nose of the linear modules - so maybe I’ll fix this thing once and for all. Ordered some linear rails and errything.

Of course, after taking this thing apart and moving most of the bed into the shop, I start getting “but can’t you just 3D print part X instead of buying it?” comments for other projects :roll_eyes:

2 Likes

At least 1 person (@Thick8 in that same thread) has machined the platform flat. I was planning on doing the same using the CNC head and many light passes.

That’ll explain the z crashing then!!

I’ve been considering that, but basically have two concerns- 1) introducing flex into the platform when clamping it to the milling table (not a problem for your approach, and of course a patient enough setup will addres this), and 2) the problem may be in the heated bed more than the platform, as @scyto reported.

I’m not fully on board with this idea because I don’t understand it. I thought the issues were bigger than could be reasonably explained by the heated bed variation

The heated bed being flexible should conform to the platform? Unless we’re talking about something else entirely?

i had never read that far back in that thread (just tramming onwards) - wow missed what you had gone through

I still maintain that bed levelling should be be able to cope with this level of deformation

When the mesh produced doesn’t actually map to the physical deformation of the bed - that’s an issue in my book.

I believe the efforts you are making, move to glass beds, etc mitgate the issue because they make everything flatter, but it never solves the underlying issues…

I note there are old marlin git hub threads and forum threads that sound like similar issues, all on large build surfaces when using ABL, i can find no evidence of any similar issues with UBL.

These are the only things left on my machine that are the same from the one i originally purchased:

  1. the controller + touchscreen
  2. the base (aka what everything bolts to)
  3. the bed levelling code (ABL)
  4. the type of sensor

tl;dr snapmaker assert the issue is mechanical, i still have a gut feeling it is about software… (or both)

I really need to sit down with a dial indicator mounted and get some good data for this.

My current understanding is that there are two potential problems: the heated bed warps when tightened to the platform, and the heated bed warps when heated. A third could be that the headed bed is just warped to begin with.

The first could presumably be fixed by machining the platfrom … unless there is a small misalignment with the platform + bed mounting holes, or the holes are not drilled true. I have a center mic in the shop which I could use to determine this.

The second is caused by the design of the platform and has a few fixed, mostly involving insulating the heated bed from the platform.

What I have noticed with my own machine is that shimming the bed doesn’t help as much as it should, that removing the bed from the platform and re-installing it does seem to change how the bed is warped, that loosely mounting the bed to the platform reduces the warp quite a bit, and that (of course) a glass bed compensates for the warp of the heated bed quite well (meaning the warp is very local, likely at the mount points).

So yeah, more data needed really. I hadn’t thought of misalignment of the holes before, that would definitely add some stress to both pieces (bed and platform) in not-entirely-predicatable ways. I’ll grab that mic when I’m in the shop later.

100% agreed.

I think it’s mechanical as well, but hard to prove.

I don’t really understand this: Fundamental Calibration Issue...? - #2 by scyto

Is this describing they moved to a point at Z=0 with levelling on, then disabled levelling and then read out the resulting Z height and compared it to the M420V matrix? Why would they do that?

If that really is what they did isn’t that the same as saying 2-1=1, 1+1=2 confirmed? It’s tautological and proves nothing.

2 Likes

i have seen little to no evidence of this in my case on two platforms and two heated beds, not saying it doesn’t happen, just saying that M420 V meshes i have plotted on cold vs warm have less of a deviation than one part of the bed vs another at any temp.

thanks i have been waiting for someone to look at that and tear it apart… i have same concern, i think all they proved is the software thinks the head is where it should be… but that doesn’t proven there isn’t an issue with the software…

you have all the info i have in terms of what they did / why the did it - they did confirm they found the same deviation in pressure of head against the white card…

I think a better test would be to G30 at each of those points a couple times and check the repeatability of the measurement.

This is a specific part of the firmware I haven’t tested and I have doubts (until proven otherwise) that it’s working correctly. Specifically:

  • When the calibration runs, is it correctly applying the probe offset.

If you could run the calibration and when it gets to the first probe point kill machine power and mark where the probe is. Then restart the machine and position the probe over it. Compare that location’s X/Y to the G42 “move to mesh coordinate” value. It should be offset by the probe offset because I understand the G42 moves the nozzle to the mesh coordinate instead of the probe.

I think properly doing a G30 would require G42ing to the mesh coordinate, then G91 moving to offset the probe so it’s centered on the mesh coordinate, then running G30 to probe the height.

That supposedly is the bug the firmware fixed somewhat recently (half a year ago? time flies). But I haven’t actually tested it.

Anyways, after all that, then repeating snapmakers measurements but making sure it’s probing at the correct location to verify the mesh reported height actually matches what the probe is reading now.

In my measurements I’ve found the probe varies about +/- 0.02mm - maybe that variation is enough to explain things?

1 Like

There’s more. The platform itself, even if it’s flat at room temperature, may deform when heated. The platform may not be flat at room temperature, but then be out of flat in a different way when heated.

The heated bed expands when heated, so when affixed tightly will exert force on the platform, which can cause it to deform away from flat. The heated bed may be flexible, but it will still exert a force when it changes shape.

The successes people have mentioned here (and prior) about letting something “float” is key to solving the problem. Because the bed subject to low forces for FDM, using a kinematic coupling is what you want. In this case you have three degrees of freedom in the X-Y plane and none related to Z. What would suffice is (1) a single fixed point that rotates, for first two degrees, and (2) a slot, for the third. For (1) all that’s needed is a shoulder bolt that mates into a hole the same diameter as the shoulder. For (2) the width of the slot needs to match the diameter of the shoulder. In practice, because the heated bed may not stay flat when it heats, is that you also want a number of hold-downs to constrain any Z-motion, but they would have to not constrain X-Y motion, so the bores would have to be bigger than the shafts.

How much bigger? The thermal coefficient of fiberglass-epoxy is around 35 x 10^-6 / °C, but let’s round up to 40. Let’s say we want 250 °C over ambient, which is safely on the high side. Total expansion ratio is 1%. Width of the SM2.0 bed is around 300 mm, so if your fixed hole is in the center you’ll need about 150√2 ~ 2.2 mm of motion for a screw in the corner.

(This is something of a worst-case scenario, as the platform will also expand, but not as much–the coefficient for aluminum alloys is around 60-70% as that for FR4, but it will also be at a lower temperature. So maybe you only need to account for a quarter or third of the estimate. The main point still stands.)

This concern is the reason why the cone-shaped mounting holes on the SM heated bed are bad. They constrain all the motion from thermal expansion and force the change of size to be in the Z direction between fixed points. A 0.4% change in length over a 100 mm span translates to about 0.2 mm undulation in height, for example.

3 Likes

ok some updates for anyone who is still interested

after my printing went to shit i reverted back to v1 head, original stock surface that came with A350, and reset everything using combo of the touchscreen and M502.

I have worked my way back to the v2 head and glass and things are generally ok for objects at center.

There are three possible causes (no idea if they combined) that seem to be the key factors:

  1. I had started to use G1029 D to move mesh to get better first layers, i have stopped using this, i worry this was doing something to weird out my v2 machine… but haven’t proved that
  2. I have reverted to factory defaults other than extruder esteps.
  3. I was not calibrating close enough to the surface (stock or glass) - though when i am close at the center i am too close for the edges - i came up with um, an ‘interesting’ way to do this… as a result of solving a Z heigh issue on a model…

For those interested one part of the the model is 1.9mm high, but was coming out at ~2.25 to ~2.35mm high, another part of the model is 6mm high and was coming out at ~6.35 too high.

I played with a bunch of slicers, slicer settings, esteps calibration, extrusion calibration and nothing fixed.

so in the end i used a z-offset in the slicer to lower the print height by -0.3mm this gets the dimensionality correct in the center of the bed where i print this object, it also leads to less warping on glass and a beautifully smooth bottom layer (unsurprisingly).

next up is to try printing my 1 layer 5x5 test across the whole bed and see if that prints perfectly, or as i expect, is way too close around the edges of the bed or not.

Thought i would try an 11x11 calibration, haven’t done one since they added heating to 5x5 via screen - it’s annoying G1029 turns off the bed heating.

So I did this, want to start a book on whether snapmaker ever accept it, lol?

Update G1029.cpp by scyto · Pull Request #211 · Snapmaker/Snapmaker2-Controller (github.com)

Hey @scyto, have you watched:

Since you have a digital dial gauge, you might want to see how much the difference actually is. I’ve always been leveling the bed on my A350 cold, and haven’t noticed a difference when it is heated. Anywho, I thought that this would be something that you’d be interested in.

1 Like

i have done the test before by looking at the resultant meshes of hot and cold calibrations - I agree the difference is minimal (and often within statistical variance), the issue is now snapmaker ask stupid things like ‘well its because you didn’t use heated bed’ like they just did in this issue. And other users here insist a heated bed makes meaningful difference and i would rather not argue and be able to say ‘yes its heated’…

1 Like

Wot in tarnation is that discussion LMFAO

User: here are steps to reproduce issue
Dev: try turning it off and on again

Bruh

Hey scyto have you tried just not putting z at 334 :rofl::rofl::rofl:

1 Like