BLtouch on Duet 2 Wifi RRF3



  • New to Duet. I have a Duet 2 Wifi RRF3. I have it on a CR10s Pro. I am having issues with the BLTouch. I can get it to acknowledge it with m401 and m402 but can't get it to probe the bed on z homing.


  • Moderator

    Post your config.g and homing macros. We can't help much without seeing what you have it configured to do. Copy and paste the contents of those files here.

    The fact that it responds to M401 and M402 is a good sign. It could be as simple as needing to change your homeall to use a G30 to probe the bed instead of a G1 H1 Z move to and endstop.

    Have you tested the probe with this? https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe



  • I have not tried that but will now.



  • @Phaedrux ; Configuration file for Duet WiFi (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Tue Jun 09 2020 17:05:22 GMT-0700 (Pacific Daylight Time)

    ; General preferences
    G90 ; send absolute coordinates...
    M83 ; ...but relative extruder moves
    M550 P"CR10sPro" ; 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 S1 ; physical drive 0 goes forwards
    M569 P1 S1 ; physical drive 1 goes forwards
    M569 P2 S1 ; physical drive 2 goes forwards
    M569 P3 S1 ; physical drive 3 goes forwards
    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 E420.00 ; set steps per mm
    M566 X600.00 Y600.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X18000.00 Y18000.00 Z180.00 E1500.00 ; set maximum speeds (mm/min)
    M201 X3000.00 Y3000.00 Z100.00 E10000.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E800 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 X330 Y320 Z400 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 S2 ; configure Z-probe endstop for low end on Z

    ; Z-Probe
    M950 S0 C"exp.heater7" ; create servo pin 0 for BLTouch
    M558 P9 C"zprobe.in+zprobe.mod" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds
    G31 P500 X-40 Y-10 Z2.5 ; set Z probe trigger value, offset and trigger height
    M557 X40:300 Y15:300 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 B0 S1.00 ; 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
    M307 H0 A200.4 C697.1 D0.3 V24.1 B0
    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 S1.00 ; disable bang-bang mode for heater and set PWM limit
    M307 H1 A835.3 C298.2 D5.5 V24 B0

    ; 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 S"Hemeres" 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 loss
    T0 ; select first tool
    M501
    M575 P1 S1 B57600



  • ; deployprobe.g
    ; called to deploy a physical Z probe
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 11:20:25 GMT-0700 (Pacific Daylight Time)
    ;M280 P0 S10 ; deploy BLTouch

    M280 P0 S10 ;deploy BLTouch

    ; homeall.g
    ; called to home all axes
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 11:20:25 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    G1 H2 Z5 F6000 ; lift Z relative to current position
    G1 H1 X-335 Y-325 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
    G1 H2 X5 Y5 F6000 ; go back a few mm
    G1 H1 X-335 Y-325 F360 ; move slowly to X and Y axis endstops once more (second pass)
    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)

    ; Uncomment the following lines to lift Z after probing
    ;G91 ; relative positioning
    ;G1 Z5 F100 ; lift Z relative to current position
    ;G90 ; absolute positioning

    ; homez.g
    ; called to home the Z axis
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 11:20:25 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    G1 H2 Z5 F6000 ; lift Z relative to current position
    G1 X40 Y15 F6000 ; go to first probe point
    G1 H1 Z-405 F1800 ; move Z down until the endstop is triggered
    G30 ; home z by probing the bed
    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


  • Moderator

    @mrenz999 Your config.g, change:

    M558 P9 C"zprobe.in+zprobe.mod" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds

    to

    M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds

    See https://duet3d.dozuki.com/Wiki/Connecting_a_Z_probe#Section_Software_setup_RepRapFirmware_Num_3

    Your homeall.g is using a Z move to home the bed against an endstop:

    ...
    G1 H1 X-335 Y-325 F360 ; move slowly to X and Y axis endstops once more (second pass)
    G1 H1 Z-405 F360 ; move Z down stopping at the endstop
    G90 ; absolute positioning
    ...

    But your homez.g is using G30, as it should. If you use homez.g (or home just the Z axis) does Z home correctly? If so, replace:
    G1 H1 Z-405 F360 ; move Z down stopping at the endstop
    in homeall.g with:
    G30 ; home z by probing the bed

    In both homeall.g and homez.g delete this line:

    G92 Z0 ; set Z position to axis minimum (you may want to adjust this)

    because the 'Z position' is set by the Z trigger height in your G31 command in config.g

    G31 P500 X-40 Y-10 Z2.5 ; set Z probe trigger value, offset and trigger height

    Calibrate the Z trigger height in G31 by following this guide: https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe#Section_Calibrate_the_Z_probe_trigger_height

    Ian



  • @droftarts The probe will deploy with the m401 command. But on homing it has not deployed yet.


  • Moderator

    @mrenz999 said in BLtouch on Duet 2 Wifi RRF3:

    @droftarts The probe will deploy with the m401 command. But on homing it has not deployed yet.

    How are you homing? Clicking 'HOME ALL'? It won't work for the reasons I've said. It might deploy if you 'HOME Z' only, but with the config.g incorrect, it will either be triggered already, or not trigger as it slams into the bed.

    Rather than testing by pressing home, check the function as described here: https://duet3d.dozuki.com/Wiki/Connecting_a_Z_probe#Section_Commissioning_Testing_RepRapFirmware_Num_3

    Then do the changes I suggested in my previous post.

    Ian



  • @droftarts Ok I did an individual home x then y then z. It deployed the pin and bounced back up. It was off the bed so I had to let it hit my hand. Then it shifted on the x to the middle of the bed and didn't deploy it just lowered until I turned it off. I did make the changes you suggested.
    Do I need to do something to tell it to drop the pin each time it probes a spot on the bed ?


  • Moderator

    @mrenz999 said in BLtouch on Duet 2 Wifi RRF3:

    Do I need to do something to tell it to drop the pin each time it probes a spot on the bed ?

    No. It should deploy as needed with G30.

    Please post your config.g and homing files again with your changes.



  • @Phaedrux
    ; Configuration file for Duet WiFi (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Tue Jun 09 2020 17:05:22 GMT-0700 (Pacific Daylight Time)

    ; General preferences
    G90 ; send absolute coordinates...
    M83 ; ...but relative extruder moves
    M550 P"CR10sPro" ; 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 S1 ; physical drive 0 goes forwards
    M569 P1 S1 ; physical drive 1 goes forwards
    M569 P2 S1 ; physical drive 2 goes forwards
    M569 P3 S1 ; physical drive 3 goes forwards
    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 E420.00 ; set steps per mm
    M566 X600.00 Y600.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X18000.00 Y18000.00 Z180.00 E1500.00 ; set maximum speeds (mm/min)
    M201 X3000.00 Y3000.00 Z100.00 E10000.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E800 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 X330 Y320 Z400 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 S2 ; configure Z-probe endstop for low end on Z

    ; Z-Probe
    M950 S0 C"exp.heater7" ; create servo pin 0 for BLTouch
    M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds height + speeds
    G31 P500 X-40 Y-10 Z2.5 ; set Z probe trigger value, offset and trigger height
    M557 X40:300 Y15:300 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 B0 S1.00 ; 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
    M307 H0 A200.4 C697.1 D0.3 V24.1 B0
    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 S1.00 ; disable bang-bang mode for heater and set PWM limit
    M307 H1 A835.3 C298.2 D5.5 V24 B0

    ; 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 S"Hemeres" 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 loss
    T0 ; select first tool
    M501
    M575 P1 S1 B57600

    ; homeall.g
    ; called to home all axes
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 11:20:25 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    G1 H2 Z5 F6000 ; lift Z relative to current position
    G1 H1 X-335 Y-325 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
    G1 H2 X5 Y5 F6000 ; go back a few mm
    G1 H1 X-335 Y-325 F360 ; move slowly to X and Y axis endstops once more (second pass)
    G1 H2 X150 Y150 F9000 ; go to first bed probe point and home Z
    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)

    ; Uncomment the following lines to lift Z after probing
    ;G91 ; relative positioning
    ;G1 Z5 F100 ; lift Z relative to current position
    ;G90 ; absolute positioning

    ; homez.g
    ; called to home the Z axis
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 11:20:25 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    G30 ; home z by probing the bed
    G1 H2 Z5 F6000 ; lift Z relative to current position
    G1 H2 X150 Y150 F9000 ; go to first bed probe point and home Z
    ;G1 X40 Y15 F6000 ; go to first probe point
    G1 H1 Z-405 F1800 ; move Z down until the endstop is triggered
    ;G30 ; home z by probing the bed
    ;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


  • Moderator

    @mrenz999 said in BLtouch on Duet 2 Wifi RRF3:

    ; homeall.g
    ; called to home all axes
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 11:20:25 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    G1 H2 Z5 F6000 ; lift Z relative to current position
    G1 H1 X-335 Y-325 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
    G1 H2 X5 Y5 F6000 ; go back a few mm
    G1 H1 X-335 Y-325 F360 ; move slowly to X and Y axis endstops once more (second pass)
    G1 H2 X150 Y150 F9000 ; go to first bed probe point and home Z
    G1 H1 Z-405 F360 ; move Z down stopping at the endstop
    G90 ; absolute positioning

    Your homeall is incorrect. It should be:

    ; homeall.g
    ; called to home all axes
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 11:20:25 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    G1 H2 Z5 F6000 ; lift Z relative to current position
    G1 H1 X-335 Y-325 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
    G1 X5 Y5 F6000 ; go back a few mm
    G1 H1 X-335 Y-325 F360 ; move slowly to X and Y axis endstops once more (second pass)
    G1 X150 Y150 F9000 ; go to first bed probe point and home Z
    G30 ; probe the bed
    ; Uncomment the following lines to lift Z after probing
    G91 ; relative positioning
    G1 Z5 F100 ; lift Z relative to current position
    G90 ; absolute positioning
    G1 X0 Y0 ; return to parked position
    

    Same for the homez, it should be:

    ; homez.g
    ; called to home the Z axis
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 11:20:25 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    G1 H2 Z5 F6000 ; lift Z relative to current position
    G1 X150 Y150 F9000 ; go to first bed probe point and home Z
    G30 ; home z by probing the bed
    ; Uncomment the following lines to lift Z after probing
    G91 ; relative positioning
    G1 Z5 F100 ; lift Z relative to current position
    G90 ; absolute positioning
    


  • @Phaedrux said in BLtouch on Duet 2 Wifi RRF3:

    ; homez.g

    Thank you so much. That worked. Fixed the microstepping lol. Now to get the z height for first layer porn lol


  • Moderator

    @droftarts said in BLtouch on Duet 2 Wifi RRF3:

    Calibrate the Z trigger height in G31 by following this guide: https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe#Section_Calibrate_the_Z_probe_trigger_height

    @mrenz999 that's where this comes in. After that you may want to do a mesh compensation heightmap to see how your bed surface looks.

    https://duet3d.dozuki.com/Wiki/Using_mesh_bed_compensation


Log in to reply