Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    BLTouch Probe Won't Deploy

    Scheduled Pinned Locked Moved Solved
    General Discussion
    4
    95
    4.9k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Charlieundefined
      Charlie
      last edited by

      My M122 response.

      m122
      === Diagnostics ===
      RepRapFirmware for Duet 3 MB6HC version 3.3 (2021-06-15 21:45:47) running on Duet 3 MB6HC v1.01 or later (SBC mode)
      Board ID: 08DJM-956L2-G43S8-6J9DG-3S46T-KV2LF
      Used output buffers: 1 of 40 (10 max)
      === RTOS ===
      Static ram: 150904
      Dynamic ram: 62124 of which 132 recycled
      Never used RAM 141032, free system stack 202 words
      Tasks: SBC(ready,4.9%,318) HEAT(delaying,0.0%,325) Move(notifyWait,0.0%,302) CanReceiv(notifyWait,0.0%,908) CanSender(notifyWait,0.0%,374) CanClock(delaying,0.0%,339) TMC(notifyWait,7.1%,93) MAIN(running,87.9%,922) IDLE(ready,0.0%,29), total 100.0%
      Owned mutexes: HTTP(MAIN)
      === Platform ===
      Last reset 00:09:33 ago, cause: power up
      Last software reset at 2021-12-07 00:27, reason: User, GCodes spinning, available RAM 141032, slot 0
      Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task SBC Freestk 0 n/a
      Error status: 0x00
      Aux0 errors 0,0,1
      Step timer max interval 131
      MCU temperature: min 31.6, current 44.8, max 45.0
      Supply voltage: min 24.0, current 24.0, max 24.1, under voltage events: 0, over voltage events: 0, power good: yes
      12V rail voltage: min 12.0, current 12.1, max 12.1, under voltage events: 0
      Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
      Driver 0: position 0, standstill, reads 1389, writes 14 timeouts 0, SG min/max 0/0
      Driver 1: position 0, standstill, reads 1389, writes 14 timeouts 0, SG min/max 0/0
      Driver 2: position 0, standstill, reads 1389, writes 14 timeouts 0, SG min/max 0/0
      Driver 3: position 0, standstill, reads 1389, writes 14 timeouts 0, SG min/max 0/0
      Driver 4: position 0, standstill, reads 1389, writes 14 timeouts 0, SG min/max 0/0
      Driver 5: position 0, standstill, reads 1389, writes 14 timeouts 0, SG min/max 0/0
      Date/time: 2021-12-09 03:42:41
      Slowest loop: 0.46ms; fastest: 0.04ms
      === Storage ===
      Free file entries: 10
      SD card 0 not detected, interface speed: 37.5MBytes/sec
      SD card longest read time 0.0ms, write time 0.0ms, max retries 0
      === Move ===
      DMs created 125, maxWait 0ms, bed compensation in use: none, comp offset 0.000
      === MainDDARing ===
      Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
      === AuxDDARing ===
      Scheduled moves 0, completed moves 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, chamberHeaters = -1 -1 -1 -1
      Heater 1 is on, I-accum = 0.0
      === GCodes ===
      Segments left: 0
      Movement lock held by null
      HTTP* is doing "M122" 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 assembling a command 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 5073, received 7, lost 0, longest wait 1ms for reply type 6042, peak Tx sync delay 2403, free buffers 49 (min 48), ts 2870/2865/0
      Tx timeouts 0,0,4,0,0,0 last cancelled message type 30 dest 127
      
      === SBC interface ===
      State: 4, failed transfers: 1, checksum errors: 0
      Last transfer: 1ms ago
      RX/TX seq numbers: 19609/19609
      SPI underruns 0, overruns 0
      Disconnects: 0, timeouts: 0, IAP RAM available 0x2c83c
      Buffer RX/TX: 0/0-0
      === Duet Control Server ===
      Duet Control Server v3.3.0
      Code buffer space: 4096
      Configured SPI speed: 8000000Hz
      Full transfers per second: 21.15, max wait times: 18.5ms/0.0ms
      Codes per second: 0.06
      Maximum length of RX/TX data transfers: 2948/332
      
      fcwiltundefined 1 Reply Last reply Reply Quote 0
      • fcwiltundefined
        fcwilt @Charlie
        last edited by

        @charlie

        Your M280 statements are incorrect. The P parameter is the servo index, not the pin name.

        M280

        Also the M401 and M402 commands simply invoke the deploy/retract macros.

        Frederick

        Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

        Charlieundefined 1 Reply Last reply Reply Quote 1
        • Charlieundefined
          Charlie @fcwilt
          last edited by

          @fcwilt
          Thank you very much for the reply!

          That seems to contradict the statement made in the M280 GCode Dictionary

          "RRF3: Before you can use M280 you must create a GPIO port using M950. Then in the M280 command, the P parameter is the GPIO port number, not the logical pin number. Duet 2 supports up to 10 GPIO ports, numbers 0 to 9. No GPIO ports are allocated by default."

          Am I looking at this the wrong way?

          Furthermore, when I put M280 P"0.io4.out" S10 in the Console, the probe deploys.

          Is there something that I am not considering?

          JoergS5undefined fcwiltundefined Phaedruxundefined 3 Replies Last reply Reply Quote 0
          • JoergS5undefined
            JoergS5 @Charlie
            last edited by JoergS5

            @charlie said in BLTouch Probe Won't Deploy:

            when I put M280 P"0.io4.out" S10 in the Console, the probe deploys.

            I checked the source, the P parameter reads the expression after P as integer, so P0 is read. The part after 0 is ignored.

            Charlieundefined 1 Reply Last reply Reply Quote 1
            • fcwiltundefined
              fcwilt @Charlie
              last edited by fcwilt

              @charlie said in BLTouch Probe Won't Deploy:

              That seems to contradict the statement made in the M280 GCode Dictionary

              Is there something that I am not considering?

              No, the docs are simply confusing things by using two different terms (servo index, port number) for the same thing.

              It not unusual to find the docs are a bit wonky in certain regards.

              As to the other question regards the M280 working it as been explained by another poster.

              Frederick

              Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

              Charlieundefined 1 Reply Last reply Reply Quote 0
              • Phaedruxundefined
                Phaedrux Moderator @Charlie
                last edited by

                @charlie said in BLTouch Probe Won't Deploy:

                you must create a GPIO port using M950. Then in the M280 command, the P parameter is the GPIO port number

                Is that confusing? You must create a port number with M950 and then M280 uses that port number. What do you suggest to make it more clear?

                It even shows examples

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

                Z-Bot CoreXY Build | Thingiverse Profile

                Charlieundefined 1 Reply Last reply Reply Quote 0
                • Charlieundefined
                  Charlie @JoergS5
                  last edited by

                  @joergs5
                  Thank you for your response. That's good to know. I changed the deployprobe0.g file to

                  M280 P0 S10  ; Set servo position.
                               ; P (Servo index): 0.io4.out (Mainboard, io4.out).
                               ; S (Servo angle): 10.
                  

                  anyway, to avoid making the same mistake that I made between the GPIO port number and logical pin number.

                  The issue persists with this modification.

                  1 Reply Last reply Reply Quote 0
                  • Charlieundefined
                    Charlie @fcwilt
                    last edited by

                    @fcwilt
                    Okay, that explains why the M280 command worked even though I messed up the P value.

                    With that said, Im still having issues deploying the BLTouch probe when homing the Z axis. The M280 P0 S10 and M401 commands successfully deploy the probe.

                    JoergS5undefined 1 Reply Last reply Reply Quote 0
                    • JoergS5undefined
                      JoergS5 @Charlie
                      last edited by JoergS5

                      @charlie one issue in your config.g is, that the speeds are very low:

                      M203 S1 X300.00 Y300.00 Z15.00 E20.00

                      S1 does not exist for M203, so the speeds are mm/min, so e.g. Z is only 0.25 mm/s. So your probing might run into a timeout. Please use higher values. I would take the values of the documentation of M203: https://duet3d.dozuki.com/Wiki/M203

                      BUT: does Voron has a specific firmware, where S1 is valid? Then the firmware could be a reason for your problem, but I don't know how to help then. Which tool did you use to create the config file? Marlin and Slic3rPR use mm/s, but RRF use mm/min.

                      Charlieundefined 1 Reply Last reply Reply Quote 0
                      • Charlieundefined
                        Charlie @JoergS5
                        last edited by

                        @joergs5
                        I assumed based on Duet3D Changelog: RepRapFirmware 3.3

                        "The M203 command now supports an optional S1 parameter which changes the units to mm/sec. The default is still mm/min."

                        The X, Y, and Z homing speeds appear to be the same speed as I had before the change to S1. The probe just doesnt deploy during the Z homing step.

                        JoergS5undefined fcwiltundefined 4 Replies Last reply Reply Quote 0
                        • JoergS5undefined
                          JoergS5 @Charlie
                          last edited by

                          @charlie then sorry, it is not in the documentation yet.

                          I proceed searching for a possible reason...

                          1 Reply Last reply Reply Quote 0
                          • JoergS5undefined
                            JoergS5 @Charlie
                            last edited by

                            @charlie homing is often made by homeall.g, can you please post it, and homex.g and homey.g also?

                            How do you home Z: individually X, Y, Z or together in one step?

                            Charlieundefined 2 Replies Last reply Reply Quote 1
                            • fcwiltundefined
                              fcwilt @Charlie
                              last edited by

                              @charlie said in BLTouch Probe Won't Deploy:

                              The X, Y, and Z homing speeds appear to be the same speed as I had before the change to S1. The probe just doesnt deploy during the Z homing step.

                              There are parameters to M558 to control probing speeds (travel and probing) including the ability to specify two probing speeds.

                              As another poster has mentioned you didn't post homeall.g which may well be why we didn't spot the problem.

                              Frederick

                              Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                              1 Reply Last reply Reply Quote 0
                              • Charlieundefined
                                Charlie @JoergS5
                                last edited by

                                @joergs5

                                No worries. I greatly appreciate your willingness to help!

                                In this case, I am homing X, then Y, then Z. With that said, the issue also occurs using the "Home All" button in DWC.

                                fcwiltundefined 1 Reply Last reply Reply Quote 0
                                • fcwiltundefined
                                  fcwilt @Charlie
                                  last edited by

                                  @charlie said in BLTouch Probe Won't Deploy:

                                  @joergs5

                                  No worries. I greatly appreciate your willingness to help!

                                  In this case, I am homing X, then Y, then Z. With that said, the issue also occurs using the "Home All" button in DWC.

                                  So homing just Z with the DWC Home Z button does not work? Just want to be sure I understand what is happening.

                                  Frederick

                                  Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                                  Charlieundefined 1 Reply Last reply Reply Quote 0
                                  • Charlieundefined
                                    Charlie @JoergS5
                                    last edited by

                                    @joergs5

                                    homex.g

                                    ; Voron.
                                    ; 0:/sys/homex.g
                                    ; Called to home the X axis via G28 X.
                                    ; 2020/10/24/20:00
                                    
                                    G91               ; Set axes (not extruders) to relative positioning mode.
                                    G1 H2 Z5 F6000    ; Lift Z relative to current position.
                                    G1 H1 X355 F6000  ; Move quickly to X endstop (1 of 2 passes).
                                    G1 H0 X-3 F6000   ; Move away from X endstop.
                                    G1 H1 X10 F360    ; Move slowly to X axis endstop once more (2 of 2 passes).
                                    G1 H2 Z-5 F6000   ; Lower Z relative to current position.
                                    G90               ; Set axes (not extruders) to absolute positioning mode.
                                    

                                    homey.g

                                    ; Voron
                                    ; 0:/sys/homey.g
                                    ; Called to home the Y axis via G28 Y.
                                    ; 2020/10/24/20:01
                                    
                                    G91               ; Set axes (not extruders) to relative positioning mode.
                                    G1 H2 Z5 F6000    ; Lift Z relative to current position.
                                    G1 H1 Y360 F6000  ; Move quickly to Y endstop (1 of 2 passes).
                                    G1 H0 Y-3 F6000   ; Move away from Y endstop.
                                    G1 H1 Y10 F360    ; Move slowly to X axis endstop once more (2 of 2 passes).
                                    G1 H2 Z-5 F6000   ; Lower Z relative to current position.
                                    G90               ; Set axes (not extruders) to absolute positioning mode.
                                    

                                    homeall.g

                                    ; Voron.
                                    ; 0:/sys/homeall.g
                                    ; Called to home all axes via G28.
                                    ; 2020/10/24/21:00
                                    
                                    G91                    ; Set axes (not extruders) to relative positioning mode.
                                    G1 H2 Z5 F6000         ; Lift Z relative to current position.
                                    G1 H1 X355 Y360 F6000  ; Move quickly to X or Y axis endstop and stop there.
                                    G1 H1 X355 F6000       ; Move quickly to X endstop and stop there.
                                    G1 H1 Y360 F6000       ; Move quickly to Y endstop and stop there.
                                    G1 H0 X-3 Y-3 F6000    ; Move away from X and Y endstops.
                                    G1 H1 X10 F360         ; Move slowly to X endstop once more.
                                    G1 H1 Y10 F360         ; Move slowly to Y endstop once more.
                                    G90                    ; Set axes (not extruders) to absolute positioning mode.
                                    G1 X175 Y151.5 F6000   ; Move X and Y axes so the Z probe is at the center of the bed.
                                    M558 F600 H2 A1        ; Set Z probe. Feed rate: 600 mm/min. Dive height: 2 mm. Times to probe: 1.
                                    G30                    ; Z probe quickly (1 of 2 passes).
                                    M558 F120 H5 A1        ; Set Z probe. Feed rate: 120 mm/min. Dive height: 5 mm. Times to probe: 1.
                                    G30                    ; Home Z by probing the bed slowly (2 of 2 passes).
                                    
                                    1 Reply Last reply Reply Quote 0
                                    • JoergS5undefined
                                      JoergS5 @Charlie
                                      last edited by

                                      @charlie you may need to exchange the order or M950 and M558:

                                      in the M950 documentation https://duet3d.dozuki.com/Wiki/M950 :
                                      "M950 must come before any commands that refer to the device being created."
                                      So M950, then M558 which uses the servo part of BLTouch.

                                      I am not sure about this. In the examples I know, M950 is first, M558 next, but the two commands don't have a reference to each other. But it's worth a try. M558 may expect to know the M950 values.

                                      Charlieundefined 1 Reply Last reply Reply Quote 0
                                      • Charlieundefined
                                        Charlie @fcwilt
                                        last edited by

                                        @fcwilt
                                        That is correct. Homing just Z doesnt work.

                                        It also doesnt work if I use "Home All".

                                        fcwiltundefined JoergS5undefined 2 Replies Last reply Reply Quote 0
                                        • fcwiltundefined
                                          fcwilt @Charlie
                                          last edited by

                                          @charlie said in BLTouch Probe Won't Deploy:

                                          @fcwilt
                                          That is correct. Homing just Z doesnt work.

                                          It also doesnt work if I use "Home All".

                                          OK let's take the homing code out of the picture.

                                          Can you reset the printer and successfully home X and Y?

                                          Frederick

                                          Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                                          Charlieundefined 1 Reply Last reply Reply Quote 0
                                          • JoergS5undefined
                                            JoergS5 @Charlie
                                            last edited by

                                            @charlie a last additional idea: M208 has Z minimum 0 and the BLTouch starts at 3 mm height. It may be that it cannot probe below 0 because of M208. This was changed in 3.4 somewhere if I remember correct, but if you use 3.3 firmware, it may be a try to set the M208 Z limit below 0.

                                            Charlieundefined 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA