Z-probe (BLTouch) and dual z axis help on Duet 3



  • Can anyone help me with this knundrum... Not exactly sure how to set up the bltouch and dual z axis on the duet 3 from the currently released documentation. Any feedback would be much appreciated!
    https://github.com/murtagh1/Cartisian_Duet3_RRF3/blob/master/config.g
    ; Z-Probe
    M574 Z1 S2 ; set endstops controlled by probe
    M558 P9 C"io2.in" H5 F120 T3000 ; set Z probe type to bltouch and the dive height + speeds
    M950 S0 C"io2.out"
    M280 P0 S10
    G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height
    M557 X15:440 Y15:440 P20 ; define mesh grid



  • I don't know anything about that C parameter in M558 but from what I can see in the docs, it's not needed for P9.
    Your G31 also doesn't look correct. X0 Y0 offset would only be for a peizo type probe.
    I didn't even know you could buy the duet 3 yet, I'm trying to make sense of the wiring diagram. Do you need to use one of the IO_# for the probe? is that why your using "C"io1.in""

    Here is my setup for my BLtouch on Duet2 wifi, probably of no use to you though

    ; Endstops
    M574 X1 Y2 S1                          ; Set active high endstops
    ; Z-Probe
    M574 Z1 S2                             ; Set endstops controlled by probe
    M558 P9 H5 F2000 T2000 X0 Y0 Z1        ; Set Z probe type to unmodulated and the dive height + speeds
    G31 P500 X20 Y0 Z1.383 P25             ; Set Z probe trigger value, offset and trigger height
    M557 X20:140 Y20:140 P3:3              ; Define mesh grid


  • @ajcraig99 said in Z-probe (BLTouch) on Duet 3:

    arameter in M558 but from what I can see in the docs, it's not needed for P9.
    Your G31 also doesn't look correct. X0 Y0 offset would only be

    The C parameter is one of the ones for designating a location on the board.. TBH I am new to G-Code. Do you know what the offset is supposed to be measured from? Distance from x-axis endstop, y distance from y- axis endstop? z distance from...nozzle tip? Yes I am using an IO port, and have it hooked up to the 5V, out,gnd,in pins.

    here is the link to the config I have been working on.. I have to finish tweaking extruders, BLtouch, and dual z axis motors, then also need to add some kind of setting to compensate for the high resistance of the thermistors at room temp..to allow it not to fault on false open circuit error on initial heating. I don't think I designated the two z steppers correctly because I am getting a driver 2 & 3 does not support x0 micro-stepping with interpolation error when the config is loaded.

    I plan on keeping this open to share as I work and complete this setup, it should help the next person get started!

    https://github.com/murtagh1/Cartisian_Duet3_RRF3/blob/master/config.g



  • Yeah G31 should have the offset in X and Y which is the distance in mm from the centre of the nozzle.

    Are you able to get the probe to deply when doing a G30?


  • administrators

    @triumphantduke, your config.g extract looks ok to me apart from the zero X and Y offsets. Are you able to deploy and retract the pin using M400 and M401 M401 and M402? What do you have in your deployprobe.g and retractprobe.g files?



  • @ajcraig99 nothing happens when using G30, besides X-axis moving over a little.
    @dc42 no movement of bltouch pin when using M400 or M401, the bltouch does run its internal self test when machine powers on.

    When hitting home Z button (after successfully homing X and Y) in web interface, I see no movement besides x-axis moving over a little. I think rep rap isn't happy with how I specified the 2 z motors, since there is no Z axis movement for either Z motor.

    Fixed M350 Driver 2 and Driver 3 does not support x0 micro stepping with interpolation error, PEBKAT lol.. firmware only supports designating micro steps per axis and is not to be set twice for two z axis motors.

    deployprobe.g
    M950 S0 C"io2.out"
    M280 P0 S10

    retractprobe.g
    M950 S0 C"io2.out"
    M280 P0 S90

    thank you for any input!



  • So... Learning experience. Fixed the z motor lack of movement. The only place to mention that there are two z motors is in the initial declaration, you can't put multiple step settings/amp settings/etc. Still working on BLtouch to work, and fixing super low temps on thermistors at room temperature, like -275C, but if i fake it and up the resistance, and get it to heat, it has not issues (false open circuit failure if i dont mod the resistance for first heat)



  • Another learning experience for those out there configuring a duet 3, with beta firmware, when you do this M584 X0.0 Y0.1 Z0.2:0.3 E0.4:0.5 you end up controlling z motors when you try to retract/extrude lol BUT when you do:
    M584 X0.0 Y0.1 Z0.2:0.3
    M584 E0.4:0.5

    Then retracting/extruding ends up using the right motors.

    Now.... the last piece of the puzzle is the BLtouch and then setup mesh bed leveling. It does successfully self test a couple times when powered on, then led stays solid red and duet web interface shows "0" for z probe. When I try to do M401 then nothing.. if I'm using a duet 3 what governs "pin" or "servo" number in the below? (M950 S# or M280 P#) I'm running out of trouble shooting strategies.. 😧

    config.g
    ; Z-Probe
    M558 P9 C"io2.in" H5 R1 F50 T6000 A5 S0.02 B1 ; set Z probe type to bltouch and the dive height + speeds
    M950 S0 C"io2.out"
    G31 P500 X1 Y2 Z2.5 ; set Z probe trigger value, offset and trigger height
    M557 X15:440 Y15:440 P20 ; define mesh grid

    deployprobe.g
    M950 S0 C"io2.out"
    M280 P0 S10

    retractprobe.g
    M950 S0 C"io2.out"
    M280 P0 S90

    Pin connections...
    Red 5v to 5v EXT
    Yellow/orange, signal to io2.out
    2 grnd wires to GRND
    White, Zmin to io2.in



  • Maybe you need PWM on the orange cable? On https://duet3d.dozuki.com/Wiki/RepRapFirmware_3_overview have SERVO pin.. Where is he? It doesn’t work for me either. There is no instruction where to connect which cable.



  • So new finding... Plugging in BLTouch to io2 had no success, BUT simply plugging into io8 works now?

    Should I do a warranty claim @dc42? I had this same issue when with fans, some plugs on board seem to not function and changing to a different one caused the fans to work too



  • YES, in 8 work. thx



  • new nuance found, to successfully save bed mesh grid (G29), you need to have a memory card hooked up to the duet 3 board. Running mesh bed compensation will not automatically understand to save to SBC if there is no mem card on duet 3, and I didn't find a way to point it in the right direction. After it runs, it will save a file to the board, cool but now you have to take the sd card out from the duet 3 and manually transfer that file from the duet 3 sd to your SBC sd card in the same directory as config.g (easier to just connect to your SBC through web and drag and drop the file.). On the plus side, it's time for my first test print! woohoo!



  • This was just fixed but I don't think it's been released yet.
    https://forum.duet3d.com/post/111473



  • @triumphantduke Does it make sense in SBC on a regular printer with 4 motors? What is it that they all rush about with it?



  • @stereo for the low number of motors, probably no biggg deal for printing. BUT it makes a huge difference in the web/user interface speeds for only 40 dollarsish for a raspberry pi. Then you get the added benefits of taking pictures/streaming while you print, incase youre into that



  • uploaded my config here... first print went ok! but need to get some part cooling going on for PLA 😧

    https://github.com/murtagh1/Cartisian_Duet3_RRF3


  • administrators

    I assume you have a Duet 3 version 0.6. Pin io2.out is not PWM capable, so it cannot be used to control a BLTouch. Use io4, 5, 6, 7 or 8 instead. I am sorry I didn't spot this earlier in your config.



  • Thanks @triumphantduke for posting all of your work along the way. The wiring connections you mentioned and sharing your git repo for your config.g were very helpful for me in getting G29 working in only a few minutes. If you have the bltouch working on your end, could you mark the thread 'resolved' so people know that it contains an accurate solution?



  • @brendon I'm glad it helped! Sorry, yes i should mark it as resolved. Still working on slicer settings, but hopefully will zone in on something functional!



  • @dc42 Thank you!


Log in to reply