BLTouch bed leveling is always off
-
Hey guys, I've been having a bit of trouble with my ender 3, namely that today I swapped the printing surface to a fresh one because the previous one was a bit worn out. Since then evergy G29 mesh calibration results in a similar way:
I've been trying adjusting for over an hour now but every run returns a similar result to this: all corners are lower than the centre. What could be causing this? I tried setting the bed and bending the plate a little in case it got bent in such a parabolic shape.
-
It's not so much important what the mesh looks like, it only matters if it produces a good first layer. If you print a first layer test does it work well?
-
@phaedrux Unfortunately no. I set my new offset using the paper method, then started the print. The nozzle started digging into the bed instantly, so I set my Z offset 0.1 higher and tried again, but got the same result. I'm gonna leave this for tomorrow because I lost my patience with it for today.
I just don't get it, it worked beautifully until I changed the cover for the bed.
-
Are you setting the Z=0 Datum at bed center using a single G30 before creating/loading the height map?
Frederick
-
@fcwilt At the moment my mesh.g looks like this:
if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed G28 M290 R0 S0 ; clear baby stepping G29 S2 ; move to the center of the mesh with the PROBE (mind affset in Y is 25 above noozle) G90 var xoffset = -45 var yoffset = -7 var xpos = {117.5 - var.xoffset} var ypos = {117.5 - var.yoffset} G1 X{var.xpos} Y{var.ypos} Z15 F6000 echo "Setting Probe Offset now" G30 K0 G1 Z15 F3000 G29 S0
And my z-probe setting in config.g looks like this:
; Z-Probe M950 S0 C"servo0" ; create servo pin 0 for BLTouch M558 P9 C"^probe" H5 F300:120 A3 T6000 ; set Z probe type to bltouch and the dive height + speeds,the F300:120 first speed 300 second 120 G31 P500 X-45 Y-7 Z4.3 ; set Z probe trigger value, offset and trigger height M557 X30:190 Y30:190 P5 ; define mesh grid
-
Just FYI here are two commands using the contents of the Object Model to position the probe at the center of the bed:
No variables required and any changes to the axes limits or probe offsets are taken into account each time the command is executed.
; move probe to center of bed (short form when center of bed is X=0 Y=0) G1 X{-sensors.probes[0].offsets[0]}, Y{-sensors.probes[0].offsets[1]}, F12000 ; move probe to center of bed (long form when center of bed is NOT X=0 Y=0) G1 X{((move.axis[0].max + move.axis[0].min) / 2) - sensors.probes[0].offsets[0]}, Y{((move.axis[1].max + move.axis[1].min) / 2) - sensors.probes[0].offsets[1]}, F1800
-
If your new printing surface is a thin sheet with magnetic attach, maybe there is a bit of something under it in the center. Or if you replaced the PEI sheet on an existing stainless sheet, maybe you have a bubble. But I'm guessing a piece of gunk.
-
@re_tour said in BLTouch bed leveling is always off:
M950 S0 C"servo0" ; create servo pin 0 for BLTouch
M558 P9 C"^probe"Can you post your full config.g? Are those variables or something because they don't match any valid pin names.
-
@mikeabuilder I ordered a magnetic one too, but I don't know, it seems way smaller than my original surface, is it supposed to be like that?!
-
@phaedrux Sure thing, here it is:
; Configuration file for SKR-RFF-E3-v1.1 (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.1-LPC-STM32+2 on Tue Dec 28 2021 01:07:55 GMT+0100 ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Ender3" ; set printer name ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0 S0 ; physical drive 0 goes backwards using TMC2209 driver timings M569 P1 S0 ; physical drive 1 goes backwards using TMC2209 driver timings M569 P2 S1 ; physical drive 2 goes forwards using TMC2209 driver timings M569 P3 S0 ; physical drive 3 goes forwards using TMC2209 driver timings M584 X0 Y1 Z2 E3 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z400.00 E93.00 ; set steps per mm M566 X1200.00 Y1200.00 Z60.00 E360.00 ; set maximum instantaneous speed changes (mm/min) M203 X9000.00 Y9000.00 Z1800.00 E6000.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z100.00 E5000.00 ; set accelerations (mm/s^2) M906 X1000 Y1000 Z1000 E1000 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X235 Y235 Z260 S0 ; set axis maxima ; Endstops M574 X1 S1 P"xstop" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin xstop M574 Y1 S1 P"ystop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop ; Z-Probe M950 S0 C"servo0" ; create servo pin 0 for BLTouch M558 P9 C"^probe" H5 F300:120 A3 T6000 ; set Z probe type to bltouch and the dive height + speeds,the F300:120 first speed 300 second 120 G31 P500 X-45 Y-7 Z4.3 ; set Z probe trigger value, offset and trigger height M557 X30:190 Y30:190 P5 ; define mesh grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B4092 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bed" T0 ; create bed heater output on bed and map it to sensor 0 M307 H0 B0 R0.365 C296.6 D3.97 S1.00 V24.0 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"e0temp" Y"thermistor" T100000 B4092 ; configure sensor 1 as thermistor on pin e0temp M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M307 H1 B0 R2.845 C121.4:119.4 D5.71 S1.00 V24.0 ; disable bang-bang mode for heater and set PWM limit M143 H1 S245 ; set temperature limit for heater 1 to 245C ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 C"Part Cooling Fan" S0 H-1 ; set fan 0 name and value. Thermostatic control is turned off M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 C"Hotend Fan" S0.01 H1 T45 ; set fan 1 name and value. Thermostatic control is turned on ; Tools M563 P0 D0 H1 F0 ; define tool 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C ; Custom settings are not defined M918 P1 E4 E1000000
As of now, this is what's loaded onto the sdcard, haven't modified anything since last night.
-
I'm surprised the bltouch works at all.
Can you send M122 and M98 P"config.g" in the Gcode console in DWC and post the results?
-
@phaedrux said in BLTouch bed leveling is always off:
M98 P"config.g"
m122 === Diagnostics === RepRapFirmware for STM32F4 based Boards (biquskr_rrf_e3_1.1) version 3.3.0_11 (2021-11-04 23:04:15) running on STM32F4 Used output buffers: 3 of 40 (11 max) === RTOS === Static ram: 21352 Dynamic ram: 81072 of which 24 recycled Never used RAM 27596, free system stack 169 words Tasks: NETWORK(ready,9.8%,251) HEAT(delaying,0.0%,343) Move(notifyWait,0.0%,361) FSWRITE(notifyWait,0.0%,566) MAIN(running,88.9%,446) IDLE(ready,1.3%,29), total 100.0% Owned mutexes: WiFi(NETWORK) === Platform === Last reset 00:01:16 ago, cause: [power on/off] Last software reset at 2022-01-05 23:06, reason: StuckInSpinLoop, Display spinning, available RAM 26860, slot 2 Software reset code 0x088f HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0040080f BFAR 0xe000ed38 SP 0x100025c4 Task MAIN Freestk 782 ok Stack: 080740b9 08073b14 210f0000 3f000000 4048fe2b 369dc3a0 3edb8886 3331bb4c 40000000 b5dde10a 388ab355 bb360b61 3e2aaaab 3f800000 3b800000 4117fc40 42a00000 3f000000 3f000000 20000010 40012c00 40012c00 080740b9 bb360b61 00010000 0000000d 00000040 Error status: 0x00 Step timer max interval 0 MCU temperature: min 19.2, current 28.9, max 28.9 Supply voltage: min 24.0, current 24.0, max 24.0, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Driver 0: position 0, 2209 standstill, reads 6632, writes 11, SG min/max not available Driver 1: position 0, 2209 standstill, reads 6632, writes 11, SG min/max not available Driver 2: position 0, 2209 standstill, reads 6632, writes 11, SG min/max not available Driver 3: position 0, 2209 standstill, reads 6630, writes 12, SG min/max not available Driver 4: position 0 Driver 5: position 0 Driver 6: position 0 Driver 7: position 0 Driver 8: position 0 Driver 9: position 0 Driver 10: position 0 Date/time: 2022-01-06 20:23:18 Slowest loop: 7.15ms; fastest: 0.08ms === Storage === Free file entries: 10 SD card 0 detected SD card longest read time 1.4ms, write time 0.0ms, max retries 0 === Move === DMs created 83, maxWait 0ms, bed compensation in use: none, comp offset 0.000 === DDARing === Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters = 0, chamberHeaters = -1 === GCodes === Segments left: 0 Movement lock held by null HTTP 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 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty. === Network === Slowest loop: 8.78ms; fastest: 0.00ms Responder states: HTTP(1) HTTP(2) HTTP(0) HTTP(0) HTTP sessions: 1 of 8 Uploads/Errors: 0/0 - WiFi - Network state is active WiFi module is connected to access point Failed messages: pending 0, notready 0, noresp 0 Bad header: 0/0 WiFi firmware version 1.25B0-01S-D WiFi MAC address d8:d7:75:4b:85:6c WiFi Vcc 3.42, reset reason Turned on by main processor WiFi flash size 4194304, free heap 31664 WiFi IP address 192.168.1.79 WiFi signal strength -81dBm, mode 802.11n, reconnections 0, sleep mode modem Clock register 00004002 Socket states: 0 2 4 0 0 0 0 0
M98 P"config.g" HTTP is enabled on port 80 FTP is disabled TELNET is disabled
-
@re_tour said in BLTouch bed leveling is always off:
RepRapFirmware for STM32F4 based Boards (biquskr_rrf_e3_1.1) version 3.3.0_11 (2021-11-04 23:04:15) running on STM32F4
Ah, ok.
-