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

    Confusion on M558 for Duet Maestro with RRF3

    Scheduled Pinned Locked Moved
    IR Height Sensor
    4
    16
    728
    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.
    • j3dundefined
      j3d
      last edited by

      Hi there. I've found conflicting information regarding the proper setting for M558 on a Duet Maestro with RRF3.

      Here, dc42 says that it should be P1: https://forum.duet3d.com/topic/7208/ir-probe-and-duet-maestro?_=1607816200149

      On his blog, he says that for RRF3, it should be P8: https://miscsolutions.wordpress.com/mini-height-sensor-board/

      Here, it doesn't explicitly say Maestro, but it says either P1 or P8: https://duet3d.dozuki.com/Wiki/Connecting_a_Z_probe#Section_Connecting_different_types_of_Z_probe

      If I understand the documentation for M558 here: https://duet3d.dozuki.com/Wiki/Gcode#Section_M558_in_RepRapFirmware_Num_3 the numbers have not changed in RRF3. So why has it gone from being an analog sensor in RRF2 (P1) to a digital one in RRF3 (P8)?

      What is the proper setting?

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

        It can be either. Though I think digital mode is preferred and behaves quicker. When used on a tool board for instance it must be P8 and the analog signal can't be used at all.

        Best to use P8.

        Z-Bot CoreXY Build | Thingiverse Profile

        1 Reply Last reply Reply Quote 0
        • j3dundefined
          j3d
          last edited by j3d

          Thanks for that. It's odd though - my sensor always reports 0 with P8. (It reports 3-4 with P1) When it turns on, it blinks once, waits a second, then blinks four more times, which I believe is it entering analog mode?

          I saw that another user had the same issue: https://forum.duet3d.com/topic/19864/duet-ir-sensor-stopped-working

          I haven't checked the voltages yet on the test pads as pointed out in that thread, but I have confirmed that the wiring is correct.

          1 Reply Last reply Reply Quote 0
          • dc42undefined
            dc42 administrators
            last edited by

            If you want to use the IR sensor in digital mode with a Duet WiFi/Ethernet or Maestro, you will need to enable the pullup resistor on the Z probe input, by using ^ at the start of the pin name.

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            1 Reply Last reply Reply Quote 0
            • j3dundefined
              j3d
              last edited by

              Is that required for P1 or P8?

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

                P8 is digital mode.

                Z-Bot CoreXY Build | Thingiverse Profile

                1 Reply Last reply Reply Quote 0
                • j3dundefined
                  j3d
                  last edited by j3d

                  Great, now I see the expected two blinks, however it's still reporting 0 - I guess I'll have to look at the board more closely. It's brand-new, so I'm a bit confused as to why it isn't working properly.

                  Aside, when I read the documentation, if it says Duet 2, could I assume that it also means the Maestro as well if not specified otherwise? For instance, the documentation on M558 says: "Enable pullup resistor with ^ if using Duet 2, running RRF3, using the Z probe input pin, and the probe type is a switch or BLTouch." I passed over this because it didn't mention the Maestro and I didn't believe the sensor would be designated as a switch because it outputs a distance. (Or is this only in analog mode?)

                  @dc42 , on your webpage you say "About 4 seconds after power is applied, the LED on the sensor should flash twice, indicating that the board has started in digital output mode." Perhaps you should add that you must enable the pull-up to enter that mode?

                  1 Reply Last reply Reply Quote 0
                  • j3dundefined
                    j3d
                    last edited by j3d

                    I've checked the voltages, and they seem to be the same as those provided by fotomas here: https://forum.duet3d.com/topic/19864/duet-ir-sensor-stopped-working

                    The only difference is that when I probe the point next to R1 the LED starts flashing rapidly:

                    https://forum.duet3d.com/assets/uploads/files/1605648225764-untitled.png

                    1 Reply Last reply Reply Quote 0
                    • j3dundefined
                      j3d
                      last edited by j3d

                      I have confirmed that the IR emitters are active.

                      Is there anything else I can do to try and diagnose the issue? The only thing I can think of is trying to plug it into an Arduino and see if I can get any data from it directly, however given the fact that it gets power and can sense whether it is in digital or analog mode would imply that the connections are correct.

                      I was able to get data from it once, but haven't been able to get anything since - and I haven't changed any of the wiring or configuration of the board. It is connected to Z_PROBE_IN, GND and 3.3V on the Z Probe header.

                      The following is the contents of my config.g:

                      ; General preferences
                      G90                                         ; send absolute coordinates...
                      M83                                         ; ...but relative extruder moves
                      M550 P"Printer"                         ; set printer name
                      
                      ; Network
                      M551 P"redacted"                           ; set password
                      M552 P0.0.0.0 S1                            ; enable network and acquire dynamic address via DHCP
                      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 X128 Y128 E64 I0                       ; configure microstepping without interpolation
                      M350 Z16 I1                                 ; configure microstepping with interpolation
                      M92 X711.00 Y711.00 Z400.00 E400.00         ; set steps per mm
                      M566 X900.00 Y900.00 Z12.00 E120.00         ; set maximum instantaneous speed changes (mm/min)
                      M203 X6000.00 Y6000.00 Z360.00 E1200.00     ; set maximum speeds (mm/min)
                      M201 X500.00 Y500.00 Z50.00 E250.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 X-20 Y0 Z0 S1                          ; set axis minima
                      M208 X275 Y150 Z150 S0                      ; set axis maxima
                      
                      ; Endstops
                      M574 X2 S1 P"!xstop"                        ; configure active-high endstop for high end on X via pin !xstop
                      M574 Y2 S1 P"!ystop"                        ; configure active-high endstop for high end on Y via pin !ystop
                      M574 Z1 S1 P"!zstop"                        ; configure active-high endstop for low end on Z via pin !zstop
                      
                      ; Z-Probe
                      M558 P8 C"^zprobe.in" H-5 F120 T6000         ; set Z probe type to unmodulated and the dive height + speeds
                      G31 P50 X6.5 Y-35 Z2.5                      ; set Z probe trigger value, offset and trigger height
                      M557 X-30:215 Y15:125 S20                   ; define mesh grid
                      
                      ; Heaters
                      M140 H-1                                    ; disable heated bed (overrides default heater mapping)
                      M308 S0 P"spi.cs1" Y"thermocouple-max31856" ; configure sensor 0 as thermocouple via CS pin spi.cs1
                      M950 H0 C"e0heat" T0                        ; create nozzle heater output on e0heat and map it to sensor 0
                      M307 H0 B0 S1.00                            ; disable bang-bang mode for heater  and set PWM limit
                      
                      ; Fans
                      M950 F0 C"fan0" Q500                        ; create fan 0 on pin fan0 and set its frequency
                      M106 P0 S0 H0 T45                           ; set fan 0 value. Thermostatic control is turned on
                      M950 F1 C"fan1" Q500                        ; create fan 1 on pin fan1 and set its frequency
                      M106 P1 S0 H-1                              ; set fan 1 value. Thermostatic control is turned off
                      M950 F2 C"fan2" Q500                        ; create fan 2 on pin fan2 and set its frequency
                      M106 P2 S0 H-1                              ; set fan 2 value. Thermostatic control is turned off
                      
                      ; Tools
                      M563 P0 D0 H0 F0:1                          ; 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
                      T0                                          ; select first tool
                      

                      I'm using RepRapFirmware for Duet 2 Maestro version 3.1.1 running on Duet Maestro 1.0

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

                        Your config looks fine. The Maestro is a Duet 2 series board.

                        When you do a probe test with G30 as described here, what happens?

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

                        Does the probe trigger and halt movement?

                        Your config also shows a Z endstop configured. But what do you have in your homing files to home Z?

                        Z-Bot CoreXY Build | Thingiverse Profile

                        1 Reply Last reply Reply Quote 0
                        • j3dundefined
                          j3d
                          last edited by

                          It does nothing. If I hadn't stopped it, it would have crashed into the bed. Nothing seems to trigger it.

                          Yes, I still have a Z end stop configured, and the home Z script utilizes it - I have yet to convert it over to using the Z probe due to this issue.

                          1 Reply Last reply Reply Quote 0
                          • Vetiundefined
                            Veti
                            last edited by

                            @j3d said in Confusion on M558 for Duet Maestro with RRF3:

                            M558 P8 C"^zprobe.in" H-5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds

                            H-5 is a bit strange.

                            can you test with M119. If it not shows as triggered and the probe light is on full it might be your wiring.

                            1 Reply Last reply Reply Quote 0
                            • j3dundefined
                              j3d
                              last edited by j3d

                              I finally was able to look at the board up-close with a loupe to see what was going on. It looked like the solder underneath the IR receiver had not reflowed completely. Putting a dab of solder at one end seems to have fixed it, and I now have a functioning z probe. Hooray!

                              Hopefully it remains reliable. I don't have much faith in my soldering skills - however I'm pretty sure that taking a soldering iron to the board terminates the warranty anyways, even if it was a factory defect... 😕

                              1 Reply Last reply Reply Quote 0
                              • j3dundefined
                                j3d
                                last edited by

                                Also, my board seems to be missing a component - C1. Is this intentional? @dc42

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

                                  In this case I don't think we'd terminate the warranty unless you really melted the hell out of it. 😉 Since reflowing the solder point has made it functional it was clearly a defect in manufacturing. If you wish, you can contact your vendor and seek a warranty replacement. Include a link to this thread as authorization. Sorry for the inconvenience.

                                  Z-Bot CoreXY Build | Thingiverse Profile

                                  1 Reply Last reply Reply Quote 0
                                  • dc42undefined
                                    dc42 administrators
                                    last edited by dc42

                                    C1 is intentionally not fitted.

                                    I am glad you found the problem. Soldering the side-looking IR receiver can indeed be a problem because of the unusual location of the pads, and that is the first thing we check when a sensor doesn't respond to a nearby surface.

                                    Duet WiFi hardware designer and firmware engineer
                                    Please do not ask me for Duet support via PM or email, use the forum
                                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                                    1 Reply Last reply Reply Quote 0
                                    • j3dundefined j3d referenced this topic
                                    • j3dundefined j3d referenced this topic
                                    • First post
                                      Last post
                                    Unless otherwise noted, all forum content is licensed under CC-BY-SA