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

    Moving a Z on a duet wifi

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    5
    26
    1.3k
    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.
    • zBeebleundefined
      zBeeble
      last edited by

      So... I have a duet wifi. I've had it for quite a few years now. The other day, I noticed odd buzzing by one of my Z motors and so I decided to replace it. I had extra new stepper motors, so all was good. I've done that now and one motor runs while the other does not. Since I had a 3rd new motor, I swapped out the one that wasn't working. I also swapped wires and I swapped which of the two Z connectors served which motor. Still only one runs.

      When I first put in the new motors, I had the current set to 2A (the previous motors were rated 2.5A). I had only run it for a few seconds --- as the z-homing behaviour was enough to know it was bad. I set the current to 1200 (new motors are 1.5A) and no change in behavior.

      Now... for testing purposes, what would changes to my config.g look like if I moved one z motor over to the unused 5th control?

      Does this behaviour give any of you an idea for diagnostics I could do?

      I am building another fancier printer (building printers is, I would add, more fun than printing things), and would like my duet 3 purchase to run for that --- but I'm wondering if this board is shot.

      Help?

      jay_s_ukundefined 1 Reply Last reply Reply Quote 0
      • jay_s_ukundefined
        jay_s_uk @zBeeble
        last edited by

        @zbeeble you pretty much just change the M584 mapping, e.g. Z2:4
        you will have to do some sort of levelling though when you energise the motors though to keep them in sync (as steppers can move by up to 4 steps when first powered).

        Are you running both motors from the 2 Z headers?

        Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

        zBeebleundefined 1 Reply Last reply Reply Quote 0
        • zBeebleundefined
          zBeeble @jay_s_uk
          last edited by

          @jay_s_uk Right now I am using the two z headers --- but this is, as I said, going badly. I'm kinda lost as to trying to figure the blame ... except having tried three new motors in the 2 spots.

          ... so maybe better to lay out the steps:

          • The original motors were 2.2A or 2.5A current set at 2000 in config.g
          • I observed the right tower sometimes "vibrating" ... and not turning while the left tower turned (but only occasionally). Bad.
          • I replaced both motors (and wires) with 1.5A motors and briefly tried to home. Right tower turned, left tower was silent (AFAICT ... could have been vibrating).
          • I switched headers. Brief test again --- did not change --- Right moved, left didn't.
          • I realized that my config.g was at 2000 --- I reduced it to 1200. No change
          • I swapped out the left motor for another new identical motor with a new wire. No change.
          • I swapped headers again. No change.

          ... at that point I figured I should post for ideas. One idea was to move the other Z motor onto an other driver --- mostly for testing. I have a bltouch on the carriage (printer is roughly mendel in design).

          Is there something else that I should do? Can the experts here already recommend what I've broke?

          Norderundefined markzundefined 2 Replies Last reply Reply Quote 0
          • Norderundefined
            Norder @zBeeble
            last edited by

            @zbeeble

            My printer has Dual-Z.
            One stepper motor per Z spindle and each motor has its own driver and end-stop.

            This is what my config.g entry looks like:
            M584 X0 Y1 Z2:3 E4

            It is important not to forget to put two jumpers in one of the two Z connections.
            See this photo (Duet Docs Link)

            You can find more information here (Duet Docs Link)

            Here is a way to test the motors to see if they work. (YouTube Link)

            Google Translate
            --- Original Text ---

            Mein Drucker hat Dual-Z.
            Je ein Stepper Motor pro Z Spindel und jeder Motor hat seinen eigenen Treiber und auch einen eigenen Endstop.

            So sieht mein config.g Eintrag aus:
            M584 X0 Y1 Z2:3 E4

            Wichtig ist, nicht zu vergessen in einem der beiden Z Anschlüsse zwei Jumper zu stecken.
            Siehe dieses Foto (Duet Docs Link)

            Nähere Infos findest Du hier (Duet Docs Link)

            Hier eine Möglichkeit die Motoren zu testen ob sie funktionieren. (YouTube Link)

            DDA5X... 0.9° Stepper... Linearrails... Duet 2 Wifi... PT100 Board... Duet IR-Probe... Dyze Pro Kit up to 500°C.. etc
            Thingiverse

            1 Reply Last reply Reply Quote 0
            • markzundefined
              markz @zBeeble
              last edited by markz

              @zbeeble It's important to note that the two Z headers are wired in series. This means that the two Z motors you are using must be identical and wired the same to the connectors. I would check the impedance of the two sets of motor wiring with a voltmeter and ensure they are the same.

              If one motor is more 'sensitive' than the other motor only one will turn. If one motor is miswired then at most one motor will turn.

              The two Zs headers are just connected together and it's hard to imagine that failed so it's far more likely that the two motors are not identical or perhaps one leg of the driver is failing due to bad motor wiring.

              To test: I would jumper the second header (see duet doc) and then test the two motors individually. If they both work it's very likely they aren't identical.

              zBeebleundefined 2 Replies Last reply Reply Quote 0
              • zBeebleundefined
                zBeeble @markz
                last edited by

                @markz Thanks for the wisdom. In effect, I was assuming the non-spinning motor was the malfunction, but you're indicating it could equally be the working motor that is the culprit here. The three new motors were all bought together, so they "should" be the same.

                1 Reply Last reply Reply Quote 0
                • zBeebleundefined
                  zBeeble @markz
                  last edited by

                  @markz OK. Carefully, using my digital ohm meter and exactly the same amount of wires I measured my probes and some dupont wires (used to connect to the motor) at 1 ohm (calibration) and a measured value of 3.8 for two and 3.9 for a third of the new motors. That's just a hair under 3 ohms for each if I did this all in any way correctly.

                  Is there an m-command to cause one output to rotate a certain amount?

                  1 Reply Last reply Reply Quote 0
                  • zBeebleundefined
                    zBeeble
                    last edited by

                    What is the next logical diagnostic step?

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

                      @zbeeble said in Moving a Z on a duet wifi:

                      What is the next logical diagnostic step?

                      Did you try this?

                      To test: I would jumper the second header (see duet doc) and then test the two motors individually. If they both work it's very likely they aren't identical.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      zBeebleundefined 1 Reply Last reply Reply Quote 0
                      • zBeebleundefined
                        zBeeble @Phaedrux
                        last edited by

                        @phaedrux said in Moving a Z on a duet wifi:

                        @zbeeble said in Moving a Z on a duet wifi:

                        What is the next logical diagnostic step?

                        Did you try this?

                        To test: I would jumper the second header (see duet doc) and then test the two motors individually. If they both work it's very likely they aren't identical.

                        So sampling the resistance (and finding it the same) is not enough?

                        1 Reply Last reply Reply Quote 0
                        • zBeebleundefined
                          zBeeble
                          last edited by

                          I went down to do some more messing around. As I said before, all the motors test at the same resistance. One of the threaded rods was harder to turn than the other --- some careful adjustments fixed that, but the problem remained.

                          The motors arrived as a set of 4. One is currently running my extruder (seemingly good). That left 3 for me to experiment with on the Z axis. I haven't tried all combinations, but I've switched both and they all came with wiring that was compatible with the Duet --- so wiring was changed each time.

                          Are some motors just not applicable to this pairing? Is there something that I should watch for in buying a motor?

                          The motors are OUYZGIA 17HS4401S...

                          zBeebleundefined 1 Reply Last reply Reply Quote 0
                          • zBeebleundefined
                            zBeeble @zBeeble
                            last edited by

                            @zbeeble At this point, I don't know. I bought two different but identical to each other steppers. Nice ones. https://www.amazon.ca/gp/product/B06ZYQNBFR ... in case you want to have a look at it.

                            Same behaviour. I don't know what I should look at. All these motors run as a single motor just fine.

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

                              Can you post some photos of the board and connector? both sides?

                              If each motor works fine individually on the Z driver when the jumper is placed on the second connector, but has problems with both motors are connected to the board in series, perhaps there is a problem with the second connector.

                              Z-Bot CoreXY Build | Thingiverse Profile

                              zBeebleundefined 1 Reply Last reply Reply Quote 0
                              • zBeebleundefined
                                zBeeble @Phaedrux
                                last edited by

                                @phaedrux said in Moving a Z on a duet wifi:

                                Can you post some photos of the board and connector? both sides?

                                If each motor works fine individually on the Z driver when the jumper is placed on the second connector, but has problems with both motors are connected to the board in series, perhaps there is a problem with the second connector.

                                I was starting to wonder if I should be looking at the board. This board is old ... BTW. Bought quite a few years ago. Here's a next cloud pic. I included some pics of the y-endstop connector --- it's been flaky too (and I replaced the wire). It's almost like I should suspect the y-endstop is a loose solder joint.

                                https://v4.nextcloud.towernet.ca/s/aHyJDfB959RkYmZ

                                Those are 4k x 3k pics. You might have to download them to get full resolution. I also have RAW files.

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

                                  I don't see any visible reason the connector wouldn't work. Usually if there were a problem with a driver it would generate an error message.

                                  Can you capture a video of a simple bench setup with two motors connected to the Z driver ports and send a command to move them like G1 H2 Z10 F200. Also show us your config and give us the motor specs for what you're trying.

                                  Z-Bot CoreXY Build | Thingiverse Profile

                                  1 Reply Last reply Reply Quote 0
                                  • zBeebleundefined
                                    zBeeble
                                    last edited by

                                    OK. Finally a bit of progress. Here is a portion of my current config.g

                                    ; Drives
                                    M569 P0 S1                                     ; physical drive 0 goes forwards
                                    M569 P1 S0                                     ; physical drive 1 goes backwards
                                    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 X100.00 Y100.00 Z5104.00 E666.00          ; set steps per mm
                                    M566 X450.00 Y450.00 Z60.00 E120.00            ; set maximum instantaneous speed changes (mm/min)
                                    M203 X6000.00 Y6000.00 Z100.00 E1200.00        ; set maximum speeds (mm/min)
                                    M201 X250.00 Y250.00 Z20.00 E250.00            ; set accelerations (mm/s^2)
                                    M906 X1200 Y1200 Z1200 E1200 I30               ; set motor currents (mA) and motor idle factor in per cent
                                    M84 S30                                        ; Set idle timeout
                                    

                                    I was doing what you said ... and finding that even in the dual-Z configuration, the motors were moving when I used the move .5mm command. However, when I then asked for a home, one motor would move. OK. So ... the M203 was set Z180.00. I lowered the M203 to Z100.00 and homing is fine (allbeit slow).

                                    The new motor had this card in the package: https://v4.nextcloud.towernet.ca/s/9cN2tJJdfzWCtfT

                                    ... I'm assuming here that this is max current 2A... so with the 80% rule, I should be able to set Z1600 in M906 --- or, can I raise that a bit --- and if so, what sort of max speed should I set (or should I twiddle the acceleration value)?

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

                                      Post your homing file and your full config.g

                                      5104 is an odd looking steps per mm for Z. What kind of a Z axis arrangement is it?

                                      80% of 2000ma seems reasonable place to start.

                                      Did you try a longer G1 Z move than just 0.5mm?

                                      What feed rate did you use? What feed rate does the homing file use?

                                      Z-Bot CoreXY Build | Thingiverse Profile

                                      zBeebleundefined 1 Reply Last reply Reply Quote 0
                                      • zBeebleundefined
                                        zBeeble @Phaedrux
                                        last edited by zBeeble

                                        @phaedrux said in Moving a Z on a duet wifi:

                                        Post your homing file and your full config.g

                                        (note that this has the max Z at 100 mm/min, not the 180 that was failing)

                                        ; Configuration file for Duet WiFi (firmware version 3.3)
                                        ; executed by the firmware on start-up
                                        ;
                                        ; generated by RepRapFirmware Configuration Tool v3.3.11 on Sat Jul 30 2022 14:43:31 GMT-0400 (Eastern Daylight Saving Time)
                                        
                                        ; General preferences
                                        M575 P1 S1 B57600                              ; enable support for PanelDue
                                        G90                                            ; send absolute coordinates...
                                        M83                                            ; ...but relative extruder moves
                                        M550 P"The A-Frame"                            ; set printer name
                                        
                                        ; Network
                                        M551 P"averynicepasswordindeed"                               ; set password
                                        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 S0                                     ; physical drive 1 goes backwards
                                        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 X100.00 Y100.00 Z5104.00 E666.00          ; set steps per mm
                                        M566 X450.00 Y450.00 Z60.00 E120.00            ; set maximum instantaneous speed changes (mm/min)
                                        M203 X6000.00 Y6000.00 Z100.00 E1200.00        ; set maximum speeds (mm/min)
                                        M201 X250.00 Y250.00 Z20.00 E250.00            ; set accelerations (mm/s^2)
                                        M906 X1200 Y1200 Z1200 E1200 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 X230 Y210 Z200 S0                         ; set axis maxima
                                        
                                        ; Endstops
                                        M574 X1 S1 P"!xstop"                            ; configure switch-type (e.g. microswitch) endstop for low end on X via pin xstop
                                        M574 Y1 S1 P"!ystop"                            ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop
                                        ; M574 Z1 S1 P"!zstop"                            ; configure switch-type (e.g. microswitch) endstop for low end on Z via pin zstop
                                        M574 Z1 S2
                                        
                                        ; Z-Probe
                                        ; M558 P0 H5 F120 T6000                          ; disable Z probe but set dive height, probe speed and travel speed
                                        ; M557 X15:215 Y15:195 S20                       ; define mesh grid
                                        M950 S0 C"exp.heater3" ; Duet 2 WiFi/Ethernet
                                        M558 P9 C"^zprobe.in" H5 F120 T6000 ; Duet 2 WiFi/Ethernet, DueX2/5
                                        G31 P25 X35 Y0 Z1.1
                                        M557 X35:185 Y15:185 S20
                                        
                                        ; 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 B1 S1.00                               ; enable bang-bang mode for the bed heater and set PWM limit
                                        M307 H0 R0.291 K0.301:0.000 D3.50 E1.35 S1.00 B0
                                        M140 H0                                        ; map heated bed to heater 0
                                        M143 H0 S120                                   ; set temperature limit for heater 0 to 120C
                                        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 R2.207 K0.479:0.004 D5.47 E1.35 S1.00 B0 V11.9
                                        ; M307 H1 R2.187 K0.828:0.000 D4.46 E1.35 S1.00 B0 V11.9
                                        M307 H1 R1.947 K0.473:0.002 D4.81 E1.35 S1.00 B0 V11.9
                                        M143 H1 S300                                   ; set temperature limit for heater 1 to 300C
                                        
                                        ; Fans
                                        M950 F0 C"fan0" Q500                           ; create fan 0 on pin fan0 and set its frequency
                                        M106 P0 S0 H0:1 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 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
                                        

                                        This is the homeall.g

                                        ; homeall.g
                                        ; called to home all axes
                                        ;
                                        ; generated by RepRapFirmware Configuration Tool v3.3.12 on Fri Aug 05 2022 18:02:19 GMT-0400 (Eastern Daylight Saving Time)
                                        G91                     ; relative positioning
                                        G1 H2 Z5 F6000          ; lift Z relative to current position
                                        G1 H1 X-235 Y-215 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-235 Y-215 F360  ; move slowly to X and Y axis endstops once more (second pass)
                                        G90                     ; absolute positioning
                                        G1 X-20 Y15 F6000       ; 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
                                        

                                        5104 is an odd looking steps per mm for Z. What kind of a Z axis arrangement is it?

                                        The stepper motors turn threaded rod which move through a spaced pair of nuts to raise an lower the bed. Think roughly a mendel design.

                                        80% of 2000ma seems reasonable place to start.

                                        So your advice is 1600? Will 1600 support 180 mm/min in this config with that motor?

                                        Did you try a longer G1 Z move than just 0.5mm?

                                        No, but I did several in a row.

                                        What feed rate did you use? What feed rate does the homing file use?

                                        I just used the button on the dashboard page. I don't know what feed rate it uses --- but I assume the "max" since it slowed down.

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

                                          @zbeeble said in Moving a Z on a duet wifi:

                                          The stepper motors turn threaded rod which move through a spaced pair of nuts to raise an lower the bed. Think roughly a mendel design.

                                          Are you getting binding there?

                                          Have you tried the two motors disconnected from the actual Z axis? I think I suggested that several days ago.

                                          Z-Bot CoreXY Build | Thingiverse Profile

                                          zBeebleundefined 1 Reply Last reply Reply Quote 0
                                          • zBeebleundefined
                                            zBeeble @Phaedrux
                                            last edited by

                                            @phaedrux said in Moving a Z on a duet wifi:

                                            @zbeeble said in Moving a Z on a duet wifi:

                                            The stepper motors turn threaded rod which move through a spaced pair of nuts to raise an lower the bed. Think roughly a mendel design.

                                            Are you getting binding there?

                                            Have you tried the two motors disconnected from the actual Z axis? I think I suggested that several days ago.

                                            I haven't tried them turning freely. I'm pretty sure this means that the shafts turn somewhat unequally. I don't have a sensitive torque measurement tool, but the turning force is very close by touch. As-I-said earlier, I detected one was a little harder to turn earlier and I corrected some geometry (the bottom clamp on the smooth rod of the configuration was inboard by a couple milimeters). Now the "feel" of the turn is the same to the accuracy I can detect with my hands.

                                            Let's go at this another way. I have a bltouch now. It's 35 milimeters x positive from my extruder and 1.1 mm Z positive. Certainly, I can't home the two Zed's independantly, but is there code to handle the two zeds separately with a bltouch as the level sensing device?

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