bad autolevel
-
Hi I have a problem. Bed leveling works unevenly, don't you know what the problem might be? I have already managed to start the functional automatic leveling, but when I start printing, one side of the bed is too high and the other too low, because the motor balances the bed incorrectly.I attach my configurations. I will be very happy for advice.
;config.g ; Configuration file for BTT-E3-RRF (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.1.10+4-LPC on Tue Jan 19 2021 17:25:01 GMT+0800 (中国标准时间) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"BTT-E3-RRF" ; set printer name ; Network M552 S0 M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0 S0 ; physical drive 0 goes forwards using default driver timings M569 P1 S0 ; physical drive 1 goes forwards using default driver timings M569 P2 S1 ; physical drive 2 goes forwards using default driver timings M569 P3 S0 ; physical drive 3 goes forwards using default 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 X900.00 Y900.00 Z60.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X12000.00 Y12000.00 Z600.00 E1200.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2) M906 X580 Y580 Z580 E650 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 X230 Y230 Z250 S0 ; set axis maxima ; Endstops M574 X1 S1 P"xstop" ; configure active-high endstop for low end on X via pin xstop M574 Y1 S1 P"ystop" ; configure active-high endstop for low end on Y via pin ystop M574 Z1 S1 P"zstop" ; configure active-high endstop for low end on Z via pin zstop ;M591 D0 P7 C"e0stop" S1 R50:130 L7.0 E10 ; BTT Smart Filament Sensor ;M591 D0 P1 S1 ; Filament runout Sensor ; Z-Probe Bltouch M950 S0 C"servo0" ; create servo pin 0 for BLTouch M558 P9 C"^probe" H7 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X44 Y0 Z2 ; set Z probe trigger value, offset and trigger height M557 X100:220 Y40:220 S50 ; define mesh grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B3950 ; 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 M301 P21.73 I1.54 D76.55 ; disable bang-bang mode for the bed heater and set PWM limit M307 H0 R2 D65 B1 S2.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S150 ; set temperature limit for heater 0 to 150C M143 H0 S150 ; set temperature limit for heater 0 to 150C M308 S1 P"e0temp" Y"thermistor" T100000 B3950 ; 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 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S300 ; set temperature limit for heater 1 to 300C ; Fans M950 F0 C"fan0" Q1000 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"fan1" Q1000 ; create fan 1 on pin fan1 and set its frequency M106 P1 S0 H1 T60 ; set fan 1 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 ; Miscellaneous ;M575 P1 S1 B57600 ; enable support for PanelDue M575 P1 S2 B57600 M552 S1 ; enable network M150 X2 T0 P0 M918 P1 E4 F1000000
; bed.g ; called to perform automatic bed compensation via G32 ; ; generated by RepRapFirmware Configuration Tool v3.1.10+4-LPC on Tue Jan 19 2021 17:25:01 GMT+0800 (中国标准时间) M561 ; clear any bed transform G29 ; probe the bed and enable compensation
-
@pelikán-jiří did you activate the leveling in your start g-code in the slicer?
G29 S1
https://duet3d.dozuki.com/Wiki/Gcode#Section_G29_Mesh_bed_probe
-
Post your homeall/homez, bed.g and your slicer start gcode.
-
Hi, here is my gcode in cura and configuration.
-
; Ender 3 Custom Start G-code G92 E0 ; Reset Extruder G28 ; Home all axes G29 S1 G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed G1 X0.1 Y20 Z0.5 F5000.0 ; Move to start position G1 X0.1 Y200.0 Z0.5 F1500.0 E15 ; Draw the first line G1 X0.4 Y200.0 Z0.5 F5000.0 ; Move to side a little G1 X0.4 Y20 Z0.5 F1500.0 E30 ; Draw the second line G92 E0 ; Reset Extruder G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed G1 X5 Y20 Z0.5 F5000.0 ; Move over to prevent blob squish
; bed.g ; called to perform automatic bed compensation via G32 ; ; generated by RepRapFirmware Configuration Tool v3.1.10+4-LPC on Tue Jan 19 2021 17:25:01 GMT+0800 (中国标准时间) M561 ; clear any bed transform G29 ; probe the bed and enable compensation
; ################# Home Z Preparation ################ G91 ; Relative mode G1 H2 Z5 F5000 ; Lower the bed G90 ; Back to absolute positioning G1 X130 Y130 F10000 ; Move to the center of the bed. Adjust to the co-ordinates required for the centre of your bed ; ################# Home Z Preparation ################ M558 F250 ; Set the probing speed G30 ; Probe a single point M558 F60 ; Set a slower probing speed G30 ; Probe a single point
-
@pelikán-jiří said in bad autolevel:
one side of the bed is too high and the other too low, because the motor balances the bed incorrectly
What does your heightmap look like?
You're not really doing any auto leveling, just compensation. Have you manually leveled your bed first?
-
@phaedrux
This is what my bed looks like. -
@pelikán-jiří I hoped that the printer would adjust the movements from the Z engine according to the map so that it would always be the same distance from the bed.
-
Yes it should. Are the Z motors moving at all during a layer?
If you send M122 during a print, post the results here. -
@phaedrux
Yes, they move, from the first when they make a line set in gcode, then at the first the nozzle is too high and at the second (way back) the nozzle is already correct. And I'm attaching diagnostics.=== Diagnostics ===
RepRapFirmware for STM32F4 based Boards version 3.3beta1_5 running on STM32F4
Used output buffers: 3 of 40 (21 max)
=== RTOS ===
Static ram: 30760
Dynamic ram: 68932 of which 76 recycled
Never used RAM 11408, free system stack 107 words
Tasks: NETWORK(notifyWait,200) HEAT(delaying,323) MAIN(running,424) IDLE(ready,20)
Owned mutexes: WiFi(NETWORK) HTTP(MAIN)
=== Platform ===
Last reset 00:44:38 ago, cause: [software]
Last software reset at 2021-06-09 22:03, reason: User, GCodes spinning, available RAM 11408, slot 2
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00438000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x00
Aux0 errors 0,0,0
MCU temperature: min 47.2, current 47.5, max 47.5
Supply voltage: min 24.0, current 24.0, max 24.0, under voltage events: 0, over voltage events: 0, power good: yes
Driver 0: position 8680, 2209 ok, reads 9480, writes 0, SG min/max 0/48
Driver 1: position 8680, 2209 standstill, reads 9480, writes 0, SG min/max 0/60
Driver 2: position 43, 2209 standstill, reads 9479, writes 0, SG min/max 0/16
Driver 3: position 0, 2209 ok, reads 9479, writes 0, SG min/max 0/16
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: 2021-06-09 22:47:53
Slowest loop: 48.72ms; fastest: 0.08ms
=== Storage ===
Free file entries: 9
SD card 0 detected
SD card longest read time 1.0ms, write time 0.0ms, max retries 0
=== Move ===
DMs created 83, maxWait 0ms, bed compensation in use: mesh, comp offset 0.000
=== DDARing ===
Scheduled moves 318, completed moves 314, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state 3
=== Heat ===
Bed heaters = 0, chamberHeaters = -1
Heater 0 is on, I-accum = 0.0
Heater 1 is on, I-accum = 0.6
=== GCodes ===
Segments left: 1
Movement lock held by null
HTTP is ready with "M122 " in state(s) 0
File is doing "G1 X126.9 Y108.1 E0.50023" 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. -
@pelikán-jiří said in bad autolevel:
bed compensation in use: mesh,
So it is enabled.
Where is the 0,0 origin of your printer?
Does -x move left, +x move right?
Does -y move front, +y move back?Based on your G31 your probe offset shows the BLtouch is 44mm to the right of the nozzle directly in line on Y?
Have you measured the Z offset? It's unusual that it's exactly 2mm.
-
@phaedrux
I already see one mistake, I entered 44 offset, but it should be -44. I already understand why the defined mesh grid didn't make sense. And I'm still trying to catch Z offset. So far I have it set to 1.90 and somehow it works a bit. Thank you very much, I will try to correct the mistake. Hopefully the printer will do what I wants.