BL Touch Not working with Duet 2
-
Hi,
I have two Ender 6's which I am converting to Duet 2 3d controller boards.
Only difference between the machines is that one will be using wifi and the other ethernet.Both Duet 2 boards are using firmware V3.3
I followed the instruction by BeTrue3D their URL is:
https://betrue3d.dk/bltouch-on-duet-wifi-configuratio-and-usage
I have completed the wifi one and it works perfectly.I then copied the SD card and placed the copy into the second Ender 6 which now has Duet 2 Etherenet board in it.
From the console I can issue a deployprobe.g command:
M280 P0 S10 and the probe drops downs
From the console I can issue a RetractProbe.g command:
M280 P0 S90 and the probe retractsBut when I issue a HomeAll G28 or G30 the probe will not drop down.
I have created Deployprobe.g, Retractprobe.g, Alarm Release + Pin Up.g, Pin Down.g,
Pin Up.g and Self test.g files in the Sys folder and have also created equivalent macros.Could yet tell me what I am doing wrong?
Thanks,
Graham
My Config.g is listed below :
; Configuration file for Duet WiFi (firmware version 3)
; executed by the firmware on start-up
;; For Ender 6 running Duet 2 Ethernet Card
; General preferences
G21 ; set Units to Millimetres
G90 ; send absolute coordinates...
M83 ; but relative extruder moves
M550 P"Ender 6" ; set printer name
M669 K1 ; select CoreXY mode -- Ender 6 is CoreXY printer; Network
M552 S1 ; enable network
M586 P0 S1 ; enable HTTP -- Required for Web Control from Browser
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet; Drives
M569 P0 S0 ; physical drive 0 goes backwards X
M569 P1 S1 ; physical drive 1 goes backwards Y
M569 P2 S0 ; physical drive 2 goes forwards Z
M569 P3 S1 ; physical drive 3 goes forwards
M584 Y0 X1 Z2 E3 ; set drive mapping -- sets which drive port is connected to which motor
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation;This section is where you set how many step pulses to each X,Y & Z motors in order to move the hotend x mm
;and how many step pulses to the Extruder motor in order to extrude x mm of filamentM92 X81.00 Y81.00 Z405.00 E525.00 ; set steps per mm
M556 X900.00 Y900.00 Z300.00 E1200.00 ; set allowable instantaneous speed change
M566 X900.00 Y900.00 Z180.00 E1200.00 ; set maximum instantaneous speed changes (mm/min)
M203 X6000.00 Y6000.00 Z900.00 E6000.00 ; set maximum speeds (mm/min)
M201 X1000.00 Y1000.00 Z500.00 E250.00 ; set accelerations (mm/s^2) -- Max Jerk -- making these values too high will cause printer to shake to bits
M906 X1200 Y1200 Z1200 E720 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout -- if printer is left on with no activity - motors and heaters will be put into idle state; Axis Limits
M208 X0 Y0 Z-2 S1 ; set axis minima -- Z is set to -2 because the BLTouch probe is about 2mm higher than the nozzle
M208 X250 Y250 Z400 S0 ; set axis maxima -- these values are determined by the size of the printer build size; 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 S0 P"nil" ; configure Z to use BLTouch probe and not Z stop switch
M574 Z1 S2 ; configure active-Low endstop for Low end BL-Touch; Z-Probe
M558 P9 C"^zprobe.in" H5 F500 T4000 ; Set BL-Touch to Probe type/mode 9 -- The ^ symbol tells the Duet3D to insert a pull-up Resistor
M950 S0 C"exp.heater7" ; Set BL-Touch Tigger to be activated from Heater 7 pin;
; Notes on the following G31 command
; ------------------------------------
; The Z value is the Zoffset between the Probe and the Nozzle
; The larger the positive value, the closer the Bed is to the bottom of the Nozzle
; The X Value is the X distance from the Probe to the bottom of the Nozzle
; Postive values of X means the Probe is to the left of the Nozzle
; The Y Value is the Y distance from Probe to the bottom of the Nozzle
; Negative Values of Y means that the Probe is in front of the the Nozzle
;G31 P25 X34 Y-5 Z1.50 ; Set Z Probe Trigger Value Offset for Bl-Touch Probe with 1.5mm
M557 X50:250 Y0:240 S20 ; define mesh grid; Heaters
M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp
M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
M307 H0 R0.217 C827.5 D0.5 S1.00 V23.7 ; 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 100C
M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; 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 R1.917 C143.1 D6.41 S1.00 V23.9 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S280 ; set temperature limit for heater 1 to 260C
M307 H7 A-1 C-1 D-1 ; Disable the 7th Heater so that it can be used for BLTouch Probe trigger; Fans
M950 F0 C"fan0" Q500 ; 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" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 S1 H1 T45 ; 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
M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power lossM501 ; Read Stored Parameters
T0 ; select tool 0
M119 ; Check EndStops -
Please send M122 and M98 P"config.g" and post the results.
Post the homeall.g
Confirm the servo control wire for the bltouch is actually connected to the expansion heater 7 pin. -
@gsolomon
Hi! Thanks for responding to my query.
As per your request I have attached the following files
Plus have included a jpg file of the Duet 2 board showing the 5 wires from the BL-Touch connecting to the Duet 2 board PIO.
The yellow wire is connected to the 10th pin of the PIO counting down from the top which according to my diagram of the Duet 2 Connections, is "Heater 7".Duet 2 with BL-Touch wires connected.jpg
M122.txt
M98 P config.g.txt
HomeAll.g.txt -
@gsolomon
Another thing that I found out by trial and error.In the BeTrue3D's article on how to set up the Bl-Touch to the Duet 2 board in the files that they tell you to create, Namely:
Alarm Release + Pin Up
Pin Down
Pin Up
Self-TestThey use the command:
M280 P7 Snn I1
On my Ender 6 where the BL-Touch worked fine, I initially could not get the probe to work until I tried changing the P7 to P0. I assume that the document was written for firmware versions prior to V3.
I had copied the M950 command in config.g direct from your GCode Dictionary which used P0 and thus was the reason that I found that the P0 command worked.On the Ender 6 where the BL-Touch is not working, if I typed in the "M280 P0 Snn" from the console line, the BL Touch responds correctly. It is just that when I send a G28 or G30 command from the Console, that the BL-Touch fails to respond.
Thanks once again for responding to my query.
Graham
-
Error: endstop type 0 is no longer supported. Use type 1 and invert the input pin instead. Error: Heater 7 not found
The first error is from this line
M574 Z1 S0 P"nil" ; configure Z to use BLTouch probe and not Z stop switch
You can remove that line entirely as it's not needed. Same goes for this one
M574 Z1 S2 ; configure active-Low endstop for Low end BL-Touch
The second error about heater 7 is probably from this line
M307 H7 A-1 C-1 D-1 ; Disable the 7th Heater so that it can be used for BLTouch Probe trigger
So remove that one was well.Your homeall isn't using the probe at all right now.
; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.2.3 on Sun May 23 2021 14:06:20 GMT+1000 (Australian Eastern Standard Time) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X-255 Y-255 F1800 ; move quickly to X or Y endstop and stop there (first pass) G1 H1 X-255 ; home X axis G1 H1 Y-255 ; home Y axis G1 X5 Y5 F6000 ; go back a few mm G1 H1 X-255 F360 ; move slowly to X axis endstop once more (second pass) G1 H1 Y-255 ; then move slowly to Y axis endstop G1 H1 Z-405 F360 ; move Z down stopping at the endstop G90 ; absolute positioning G92 Z0 ; set Z position to axis minimum (you may want to adjust this)
Remove these lines
G1 H1 Z-405 F360 ; move Z down stopping at the endstop G90 ; absolute positioning G92 Z0 ; set Z position to axis minimum (you may want to adjust this)
And replace them with
G90 G1 X150 Y150 F6000 G30
Next make sure your deployprobe and retractprobe files in the system folder have the correct M280 commands and then test them by sending M401 and M402
-
@phaedrux
Thanks so much.Your suggestions of course!, worked well.
Thanks Once again.
Graham Solomon