BLTouch not really working
-
Hi everyone
I am in the process of configuring my Duet 6HC for a custom 3D Printer and am facing an issue with setting up the BLTouch that I couldn't solve with the topics i already searched for on the matter.
When powering on, the BLTouch will initialize by retracting and deploying, then I can call M401 and M402 both will work. I was even able to do all steps of the Dynamic Test from here https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe But after that, in instruction 7 of "Calibrate the Z probe trigger height", G30 S-1 returns an error "Error: Probe already triggered at start of probing move". And then M401 and M402 don't work until i restart the machine...
Also Homing Z has never worked, it returns
G28 Z
Error: Failed to enable endstopsA few info
M558 Z Probe 0: type 9, input pin io4.in, output pin nil, dive height 5.0mm, probe speeds 120,120mm/min, travel speed 6000mm/min, recovery time 0.20 sec, heaters normal, max taps 1, max diff 0.03
config.g
; Configuration file for Duet 3 MB 6HC (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.15 on Mon Jan 09 2023 14:50:13 GMT+0100 (Central European Standard Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"cbmp" ; set printer name ; Network M552 P192.168.1.14 S1 ; disable Telnet ; Drives M569 P0.2 S1 M569 P0.3 S1 ; physical drive 0.2 goes forwards M569 P0.4 S1 ; physical drive 0.3 goes forwards M569 P0.5 S0 ; physical drive 0.5 goes forwards M569 P0.0 S1 ; physical drive 0.0 goes forwards M569 P0.1 S1 ; physical drive 0.1 goes forwards M584 X0.2 Y0.3:0:4 Z0.5 E0.0:0.1 ; set drive mapping M350 X16 Y16 Z16 E16:16 I1 ; configure microstepping with interpolation M92 X64.00 Y64.00 Z1600.00 E415.00:415.00 ; set steps per mm M566 X900.00 Y900.00 Z60.00 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.00 Z180.00 E1200.00:1200.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z20.00 E250.00:250.00 ; set accelerations (mm/s^2) M906 X2800 Y2800 Z2800 E700:700 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 X355 Y995 Z355 S0 ; set axis maxima ; Endstops M574 X1 S1 P"io0.in" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io0.in M574 Y1 S1 P"io1.in" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin io1.in ; Z-Probe M950 S0 C"io4.out" ; create servo pin 0 for BLTouch M558 P9 C"io4.in" H5 F120 T6000 R0.2 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X-20 Y-40 Z2 ; set Z probe trigger value, offset and trigger height M556 S50 X0 Y0 Z0 ; set orthogonal axis compensation parameters M557 X15:340 Y15:980 S40 ; define mesh grid ; Heaters M308 S0 P"temp2" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp2 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 B1 S1.00 ; enable 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 M308 S1 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp0 M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 ; set temperature limit for heater 1 to 280C M308 S2 P"temp1" Y"thermistor" T100000 B4138 ; configure sensor 2 as thermistor on pin temp1 M950 H2 C"out2" T2 ; create nozzle heater output on out2 and map it to sensor 2 M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H2 S280 ; set temperature limit for heater 2 to 280C ; Fans M950 F0 C"out3" Q0 ; create fan 0 on pin out9 and set its frequency M106 P0 S1 H1:2 T100 ; set fan 0 value. Thermostatic control is turned on ; Tools ; set mixing ratios for tool 2 M563 P0 S"Right Extruder" D0 H1 F0 ; define tool 0 G10 P0 X-10 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C M563 P1 S"Left Extruder" D1 H2 F0 ; define tool 2 G10 P1 X10 Y0 Z0 ; set tool 1 axis offsets G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C ; Custom settings are not defined ; Miscellaneous M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
; homez.g ; called to home the Z axis ; ; generated by RepRapFirmware Configuration Tool v3.3.15 on Mon Jan 09 2023 14:50:13 GMT+0100 (Central European Standard Time) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 Z-360 F1800 ; move Z down until the endstop is triggered G92 Z0 ; set Z position to axis minimum (you may want to adjust this) ; Uncomment the following lines to lift Z after probing ;G91 ; relative positioning ;G1 Z5 F100 ; lift Z relative to current position ;G90 ; absolute positioning
I'm humbly asking for your lights as this is all quite new to me !
Thank you in advance
all the best
-
Also
M119 Endstops - X: not stopped, Y: not stopped, Z: no endstop, Z probe: at min stop
Z no endstop ? should i add it with M574 Z1 S2 ? I thought this wasn't necessary
M122 === Diagnostics === RepRapFirmware for Duet 3 MB6HC version 3.4.5 (2022-11-30 19:35:23) running on Duet 3 MB6HC v1.01 (standalone mode) Board ID: 08DJM-9P63L-DJ3S0-7JTD2-3S86S-KAJ78 Used output buffers: 3 of 40 (15 max) === RTOS === Static ram: 152760 Dynamic ram: 97784 of which 204 recycled Never used RAM 99780, free system stack 154 words Tasks: NETWORK(ready,33.3%,210) ETHERNET(notifyWait,0.0%,432) HEAT(notifyWait,0.0%,322) Move(notifyWait,0.0%,266) CanReceiv(notifyWait,0.0%,944) CanSender(notifyWait,0.0%,336) CanClock(delaying,0.0%,333) TMC(notifyWait,8.2%,57) MAIN(running,58.4%,1083) IDLE(ready,0.0%,30), total 100.0% Owned mutexes: === Platform === Last reset 01:12:22 ago, cause: power up Last software reset at 2023-01-11 20:18, reason: User, GCodes spinning, available RAM 99984, slot 1 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 Step timer max interval 130 MCU temperature: min 31.4, current 35.2, max 35.4 Supply voltage: min 23.5, current 23.8, max 24.0, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 12.0, current 12.1, max 12.2, under voltage events: 0 Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 0 queued, 0 completed Driver 0: standstill, SG min 0, mspos 776, reads 20279, writes 20 timeouts 0 Driver 1: standstill, SG min 0, mspos 8, reads 20285, writes 14 timeouts 0 Driver 2: standstill, SG min 0, mspos 168, reads 20280, writes 19 timeouts 0 Driver 3: standstill, SG min 0, mspos 776, reads 20280, writes 19 timeouts 0 Driver 4: standstill, SG min 0, mspos 776, reads 20281, writes 19 timeouts 0 Driver 5: standstill, SG min 0, mspos 88, reads 20249, writes 51 timeouts 0 Date/time: 2023-01-16 13:59:32 Slowest loop: 15.69ms; fastest: 0.05ms === Storage === Free file entries: 10 SD card 0 detected, interface speed: 25.0MBytes/sec SD card longest read time 3.0ms, write time 0.0ms, max retries 0 === Move === DMs created 125, segments created 6, maxWait 2141414ms, bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves 68, completed 68, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 48], 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 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 === 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 === CAN === Messages queued 39083, received 0, lost 0, boc 0 Longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 50 (min 50), ts 21714/0/0 Tx timeouts 0,0,21713,0,0,17368 last cancelled message type 4514 dest 127 === Network === Slowest loop: 17.89ms; fastest: 0.03ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0) HTTP sessions: 1 of 8 = Ethernet = State: active Error counts: 0 0 0 1 0 0 Socket states: 2 2 2 2 2 0 0 0 === Multicast handler === Responder is inactive, messages received 0, responses 0
-
@modl said in BLTouch not really working:
G1 H1 Z-360 F1800 ; move Z down until the endstop is triggered
you should be using
G30
to probe with a probe rather thanG1 H1 Z...
make sure you move the hotend to where you want to probe using G1 X Y before you use G30You don't need the M574 Z1 S2 line
-
@modl said in BLTouch not really working:
But after that, in instruction 7 of "Calibrate the Z probe trigger height", G30 S-1 returns an error "Error: Probe already triggered at start of probing move".
Is the pin too close to the bed to deploy when that happens?
-
-
@jay_s_uk Ok I tried that and the sequence starts BUT the BLTouch doesn't deploy.
I tried a few things with M401 and M402: they work when starting up the printer, but not after homing x and y.
I tried to do a Z homing with the bltouch initially deployed and the probing stopped as expected when BLTouch was triggered by the bed -
@modl you need to work out why M401 and M402 don't work then.
Do you have a deployprobe.g and retractprobe.g in sys? -
@jay_s_uk Yes they say M280 P0 S90 ; retract BLTouch and M280 P0 S10 ; deploy BLTouch
-
@modl so does using M401 and M402 by themselves work every time?
-
I tried reverting from RFF3.4.5 to 3.4.4 following the advice in the release notes because of some potential homing issues. It didn't solve the issue
-
@jay_s_uk They work every time at startup, but not after homing x and y
-
@modl that indicates that you either have a wiring issue or you have something in your homing files thats causing issues.
can you post homex.g and homey.g? -
@jay_s_uk So M401 and 402 actually work after homing x alone.
; homex.g ; called to home the X axis ; ; generated by RepRapFirmware Configuration Tool v3.3.15 on Mon Jan 09 2023 14:50:13 GMT+0100 (Central European Standard Time) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X-360 F1800 ; move quickly to X axis endstop and stop there (first pass) G1 H2 X5 F6000 ; go back a few mm G1 H1 X-360 F360 ; move slowly to X axis endstop once more (second pass) G1 H2 Z-5 F6000 ; lower Z again G90 ; absolute positioning
; homey.g ; called to home the Y axis ; ; generated by RepRapFirmware Configuration Tool v3.3.15 on Mon Jan 09 2023 14:50:13 GMT+0100 (Central European Standard Time) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 Y-1000 F1800 ; move quickly to Y axis endstop and stop there (first pass) G1 H2 Y5 F6000 ; go back a few mm G1 H1 Y-1000 F360 ; move slowly to Y axis endstop once more (second pass) G1 H2 Z-5 F6000 ; lower Z again G90 ; absolute positioning
-
@modl so theres nothing in there that should stop M401 and M402 from working.
next is to look at your wiring and make sure nothing is being pulled etc -
Ok M401 and M402 don't work after homing y alone, could there be a short somewhere with y endstops or motors ? Or could an overload cause this?
-
@jay_s_uk Physically everything looks fine. And if i'm resetting the system, M401 and M402 will work at the exact same position
-
@modl can you home Y and then send
M558
and post the output? -
@jay_s_uk
At startupM558 Z Probe 0: type 9, input pin io4.in, output pin nil, dive height 5.0mm, probe speeds 120,120mm/min, travel speed 6000mm/min, recovery time 0.20 sec, heaters normal, max taps 1, max diff 0.03
After homing Y
M558 Z Probe 0: type 9, input pin io4.in, output pin nil, dive height 5.0mm, probe speeds 120,120mm/min, travel speed 6000mm/min, recovery time 0.20 sec, heaters normal, max taps 1, max diff 0.03
-
@jay_s_uk I found the culprit !! I actually had an extruder wired the wrong way when i first powered the machine, I rewired it as soon as i found out but it's been getting really hot even if idle since then. I unplugged it from the board and the probing now works. How to know if the stepper is cooked ?
Thank you very much for all your replies and your guidance
-
Hope i didn't cook the driver...