not able to get a good first layer using 3PL and bed mesh
-
i have tried to get this first layer to print on a 320mm x 320mm bed . is a a square outline 300 x 300 0.3mm layer height 2.5mm wide ,
the result i get is that the left hand side doesnt stick to the bed and the right hand side has a great result. side by side pic below
i do the following leveling before printing
; homeall.g echo "Home All.g " M98 P"/sys/homey.g" ;P define the parameter and is not part of the name M98 P"/sys/homex.g" ;P define the parameter and is not part of the name M98 P"/macros/ProbePickUp" ; probe pick up M98 P"/sys/homez.g" ;P define the parameter and is not part of the name M98 P"/macros/3PL" ; 3 point leveling;M98 P"/macros/3PL" ; 3 point leveling M98 P"/sys/homez.g" ;P define the parameter and is not part of the name M98 P"/macros/3PL" ; 3 point leveling;M98 P"/macros/3PL" ; 3 point leveling M98 P"/sys/homez.g" ;P define the parameter and is not part of the name M98 P"/macros/3PL" ; 3 point leveling;M98 P"/macros/3PL" ; 3 point leveling M98 P"/sys/homez.g" ;P define the parameter and is not part of the name M98 P"/macros/3PL" ; 3 point leveling;M98 P"/macros/3PL" ; 3 point leveling M98 P"/sys/homez.g" ;P define the parameter and is not part of the name
;3PL echo "3PL" G30 P0 X2 Y2 Z-99999 ; probe near a leadscrew G30 P1 X308 Y0 Z-99999 ; probe near a leadscrew G30 P2 X155 Y282 Z-99999 S3 ; probe near a leadscrew and calibrate 3 motors echo "3PL finished" ;M122 ;send Diagnose to console
ive even done a macro to scan the bed after words using
echo "G30 s-1" M98 P"/macros/ProbePickUP" G90 G1 Z20 F24000 G1 X20 Y25 F24000 G30 s-1 echo"FL" G1 Z20 F24000 G1 X310 Y25 F24000 G30 s-1 echo"FR" G1 Z20 F24000 G1 X310 Y280 F24000 G30 s-1 echo"RR" G1 Z20 F24000 G1 X20 Y280 F24000 G30 s-1 echo"RL" G1 Z20 F24000 G1 X155 Y155 F24000 G30 s-1 echo"Cen" G1 Z25 F24000
results are like this
12/10/2022, 4:23:45 PM Stopped at height 9.819 mm Cen ProbeDropOff 12/10/2022, 4:23:41 PM Stopped at height 9.877 mm RL 12/10/2022, 4:23:38 PM Stopped at height 10.139 mm RR 12/10/2022, 4:23:34 PM Stopped at height 9.947 mm FR 12/10/2022, 4:23:31 PM Stopped at height 9.889 mm FL
comments and ideas please
-
Can you post an image of your heightmap being displayed?
What is in your homez?
Usually when the mesh isn't acting as expected, it's due to skew in the XY axis or tilt of the probe.
-
@Phaedrux ```
; homez.g
echo "home Z.g "
G90 ;Set to Absolute Positioning
G1 F6000 X155 Y184 ; make sure X Y centreed
G30 F2000 ;Single Z-Probe
G1 Z18 F4000 ;move away a little
;M122 ;send Diagnose to consoleno skew xy already checked , probe looks fine i did a repeatability test results "0.161 0.166 0.163 0.163 0.163 0.163 0.161 0.161 0.163 0.163, mean 0.162, deviation from mean 0.001" ![Capture1.PNG](/assets/uploads/files/1670646339712-capture1.png)
-
@moth4017 ive tried a few height maps some with just 4 point and others with 36 point non seem to make a differance.
-
@moth4017 by the way my bed is very flat i put a straight edge on it last night and could not get a 0.05 mm feeler gauge under it
-
@moth4017 said in not able to get a good first layer using 3PL and bed mesh:
no skew xy already checked
The flat bed and the image showing some twist would suggest otherwise.
-
@Phaedrux would you expect the bed mesh to compensate for this twist?
-
This post is deleted! -
ok i can get a 4 point mesh to this
-
I would suggest loosening the bolts for the XY stage, checking with a square and retightening.
-
same result
-
@moth4017 i made changes to get the 4 point mesh this level
-
@moth4017 I just did a check to see if i could see my Z motors turning , i have a gear box's on the z axis so i should be able to see the steeper motor turning , but there is no movement
-
@moth4017 start G code befor a print
M104 S[first_layer_temperature] ; set extruder temp
M140 S[first_layer_bed_temperature] ; set bed temp
M190 S[first_layer_bed_temperature] ; wait for bed temp
M109 S[first_layer_temperature] ; wait for extruder temp
M561 ; clear any bed transform
G28 ; home all axes
G29 ; mesh bed -
Is the gearbox having backlash?
You can send M122 to check if mesh is active. If you have G29 in your slicer start gcode it should be. Do you have a mesh.g file?
-
@Phaedrux no back lash gear box belt driven ,
M122 === Diagnostics === RepRapFirmware for Duet 3 Mini 5+ version 3.4.5 (2022-11-30 19:41:16) running on Duet 3 Mini5plus WiFi (standalone mode) Board ID: 3R9YY-6T9RL-D65J0-40KMN-2UW2Z-RHYT0 Used output buffers: 1 of 40 (18 max) === RTOS === Static ram: 103652 Dynamic ram: 111396 of which 124 recycled Never used RAM 23492, free system stack 126 words Tasks: NETWORK(notifyWait,13.9%,237) HEAT(notifyWait,0.0%,320) Move(notifyWait,0.1%,265) CanReceiv(notifyWait,0.0%,942) CanSender(notifyWait,0.0%,328) CanClock(delaying,0.0%,339) TMC(notifyWait,1.2%,82) MAIN(running,83.9%,347) IDLE(ready,0.0%,30) AIN(delaying,0.8%,263), total 100.0% Owned mutexes: WiFi(NETWORK) === Platform === Last reset 00:49:54 ago, cause: software Last software reset at 2022-12-11 09:53, reason: User, GCodes spinning, available RAM 23540, slot 1 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 MCU revision 3, ADC conversions started 2994886, completed 2994886, timed out 0, errs 0 Step timer max interval 1476 MCU temperature: min 34.9, current 38.4, max 41.7 Supply voltage: min 23.6, current 23.9, max 24.2, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/11, heap memory allocated/used/recyclable 2048/1652/1440, gc cycles 0 Events: 0 queued, 0 completed Driver 0: standstill, SG min 0, read errors 0, write errors 0, ifcnt 7, reads 9988, writes 68, timeouts 0, DMA errors 0, CC errors 0 Driver 1: standstill, SG min 0, read errors 0, write errors 0, ifcnt 9, reads 9986, writes 69, timeouts 0, DMA errors 0, CC errors 0 Driver 2: standstill, SG min 0, read errors 0, write errors 0, ifcnt 79, reads 10050, writes 6, timeouts 0, DMA errors 0, CC errors 0 Driver 3: standstill, SG min 0, read errors 0, write errors 0, ifcnt 104, reads 10042, writes 14, timeouts 0, DMA errors 0, CC errors 0 Driver 4: standstill, SG min 0, read errors 0, write errors 0, ifcnt 252, reads 10024, writes 32, timeouts 0, DMA errors 0, CC errors 0 Driver 5: standstill, SG min 0, read errors 0, write errors 0, ifcnt 251, reads 10023, writes 33, timeouts 0, DMA errors 0, CC errors 0 Driver 6: standstill, SG min 0, read errors 0, write errors 0, ifcnt 245, reads 10024, writes 32, timeouts 0, DMA errors 0, CC errors 0 Date/time: 2022-12-11 10:43:08 Cache data hit count 4294967295 Slowest loop: 68.52ms; fastest: 0.10ms === Storage === Free file entries: 10 SD card 0 detected, interface speed: 22.5MBytes/sec SD card longest read time 4.9ms, write time 3.0ms, max retries 0 === Move === DMs created 83, segments created 8, maxWait 173411ms, bed compensation in use: mesh, comp offset -0.065 === MainDDARing === Scheduled moves 560, completed 560, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 2], CDDA state -1 === AuxDDARing === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters 2 -1 -1 -1, ordering errs 0 Heater 0 is on, I-accum = 0.1 Heater 1 is on, I-accum = 0.3 === GCodes === Segments left: 0 Movement lock held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 SBC is idle in state(s) 0 Daemon is idle in state(s) 0 Aux2 is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty === Filament sensors === Extruder 0 sensor: ok === CAN === Messages queued 26948, received 0, lost 0, boc 0 Longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 18 (min 18), ts 14971/0/0 Tx timeouts 0,0,14971,0,0,11976 last cancelled message type 4514 dest 127 === Network === Slowest loop: 74.73ms; fastest: 0.00ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) HTTP sessions: 1 of 8 = WiFi = Network state is active WiFi module is connected to access point Failed messages: pending 0, notready 0, noresp 0 WiFi firmware version 1.27 WiFi MAC address f0:08:d1:02:a1:0b WiFi Vcc 3.34, reset reason Power up WiFi flash size 2097152, free heap 26440 WiFi IP address 192.168.0.19 WiFi signal strength -54dBm, mode 802.11n, reconnections 0, sleep mode modem Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0
;mesh.g echo "mesh.g" M561 M98 P"/macros/ProbePickUp" ; probe pick up; absolute positioning G29 S0 M98 P"/macros/ProbeDropOff" ; probe pick up; absolute positioning
-
@moth4017 said in not able to get a good first layer using 3PL and bed mesh:
bed compensation in use: mesh
Were you using your detailed mesh or the simplified 4 point? The movement could be incredibly hard to see with a mean error of -0.006mm
-
@Phaedrux hi i was using the 4 point mesh , but the difference in nozel height from the bed was bad enough for the left hand side not to stick to the bed and the right hand side had a nice squish , see photo
above -
@moth4017, 1 step on my stepper motor moves the bed 0.025mm, using 1.8deg steppers
-
@moth4017 said in not able to get a good first layer using 3PL and bed mesh:
@moth4017, 1 step on my stepper motor moves the bed 0.025mm, using 1.8deg steppers
If your single step distance is 0.025mm and the mesh points have a difference of ~0.006mm you would be depending on microstepping for position. Perhaps between that and the gear box there isn't enough actual movement happening?
Regardless, I still think there is an issue with skew.