faulty duet 3 mini?



  • i have just got my new duet 3 mini and wondering if i have a faulty board. i've updated it to the latest version and cabled it up and have two primary issues.

    this first issue is the steppers drivers seem to be behaving strangely. as an example, if i try and home certain axis other axis will either move instead or in tandem. as an example if i try and home y, the z motors will move. if i try and home x it just clunks and stalls out. if i home z it goes up instead on down, etc. i've adjusted the x & y currents in either direction and it doesn't seem to make any difference.

    everything was working perfectly fine running on a duet 2 wifi and just swapped the steppers wires as is. i understand the d3m potentially uses a different pin naming convention than the d2w, however i've seen posts that show P0.1, P0.2, etc referenced as well as P0, P1. i went ahead and ran through the configuration tool and plugged in all the correct numbers from the d2w config and loaded all the files in /sys just to make sure it was all the correct syntax.

    the one main difference is i have dual z motors, and the d2w just used one driver wired together to run two (quite a nice feature, why would you change that?). i've went ahead and coupled two of the drivers together to the run z motors and of the 4 motion steppers are the only two that actually run without complete clunking and "stalling". however they are quite loud which was a surprise given these are supposed to be 2209 drivers.

    the second issue is the system can't seem to reconnect to wifi on soft restart / reboot. i have to physically power off the board and turn in back on and it will connect right away.

    is this potentially faulty hardware? the board i received revision v0.5. below in the config.g with the changes for the dual z motors.

    
    ; General preferences
    G90                                              ; send absolute coordinates...
    M83                                              ; ...but relative extruder moves
    
    
    ; Network
    M552 S1                                          ; enable network
    M586 P0 S1                                       ; enable HTTP
    M586 P1 S0                                       ; disable FTP
    M586 P2 S0                                       ; disable Telnet
    
    ; Drives
    M569 P0.0 S1                                     ; physical drive 0.0 goes forwards
    M569 P0.1 S1                                     ; physical drive 0.1 goes forwards
    M569 P0.2 S1                                     ; physical drive 0.2 goes forwards
    M569 P0.3 S1                                     ; physical drive 0.3 goes forwards
    M569 P0.4 S1                                     ; physical drive 0.4 goes forwards
    M584 X0.0 Y0.1 Z0.2:0.3 E0.4                     ; set drive mapping
    
    
    
    M350 X16 Y16 Z16:16 E16 I1                       ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z800.00:800.00 E115.00         ; set steps per mm
    M566 X900.00 Y900.00 Z60.00:60.00 E120.00        ; set maximum instantaneous speed changes (mm/min)
    M203 X12000.00 Y12000.00 Z300.00:300:00 E1500.00 ; set maximum speeds (mm/min)
    M201 X1000.00 Y1000.00 Z100.00:100.00 E5000.00   ; set accelerations (mm/s^2)
    M906 X580 Y580 Z730:730 E500 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 Y230 Z260 S0                           ; set axis maxima
    
    ; Endstops
    M574 X1 S1 P"^!io0.in"                             ; configure active-high endstop for low end on X via pin io0.in
    M574 Y1 S1 P"^!io1.in"                             ; configure active-high endstop for low end on Y via pin io1.in
    M574 Z1 S1 P"i^!o2.in"                             ; configure active-high endstop for low end on Z via pin io2.in
    
    ; 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
    
    ; Heaters
    M308 S0 P"temp0" Y"thermistor" T100000 B4138     ; configure sensor 0 as thermistor on pin temp0
    M950 H0 C"out0" T0                               ; create bed heater output on out0 and map it to sensor 0
    M307 H0 B1 S1.00                                 ; enable bang-bang mode for the bed heater and set PWM limit
    M140 H0                                          ; map heated bed to heater 0
    M143 H0 S125                                     ; set temperature limit for heater 0 to 125C
    M308 S1 P"temp1" Y"thermistor" T100000 B4138     ; configure sensor 1 as thermistor on pin temp1
    M950 H1 C"out1" T1                               ; create nozzle heater output on out1 and map it to sensor 1
    M307 H1 B0 S1.00                                 ; disable bang-bang mode for heater  and set PWM limit
    M143 H1 S275                                     ; set temperature limit for heater 1 to 275C
    
    ; Fans
    M950 F0 C"out5" Q500                             ; create fan 0 on pin out5 and set its frequency
    M106 P0 S0 H-1                                   ; set fan 0 value. Thermostatic control is turned off
    M950 F1 C"out6" Q500                             ; create fan 1 on pin out6 and set its frequency
    M106 P1 S1 H-1                                   ; set fan 1 value. Thermostatic control is turned off
    
    ; Tools
    M563 P0 S"Hotend" D0 H1 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
    
    
    


  • @dos said in faulty duet 3 mini?:

    M574 Z1 S1 P"i^!o2.in" ; configure active-high endstop for low end on Z via pin io2.in

    This is not right, but I have no idea if it would cause any issues.

    Just FYI, I'll keep looking.



  • @alankilian that was a typo as was marked as spam before i could correct it. it won't let me change it now that its been flagged.



  • @alankilian i do think there is an issue with the stops though. the d3m has a different setup and then the d2w and might need to trail and error the correct wiring combination. the end stops i have are just switches which should work the same way as the d2w but doesn't appear to be the case.



  • Hi,

    What firmware are you running?

    Your end stops are using v3 syntax.

    In your config you have things like Z60.00:60.00 - that is not supported.

    In M584 you have Z0.2:0.3 - that is treated as one stepper, so to speak, for commands M92, M566, M203, M201, M906.

    Also you said Z was working but not X or Y. X and Y both have lower current settings than Z - try upping them.

    Frederick



  • Check your steps per mm and motor mapping. I used this format:

    M584 X0:1 U1 Y2 Z3:4 V4 E5 ; set drive mapping

    M92 X64.00 U64.00 Y64.00 Z1259 V1259 E420.00 ; set steps per mm



  • @fcwilt
    What firmware are you running?

    Your end stops are using v3 syntax.

    • version 3.2.2, hence the v3 syntax. (i believe the 3 mini only supports v3+)

    In your config you have things like Z60.00:60.00 - that is not supported.

    • can you verify that? that syntax comes from the configuration tool

    In M584 you have Z0.2:0.3 - that is treated as one stepper, so to speak, for commands M92, M566, M203, M201, M906.

    • correct, per my original post you will see i am running dual z-motors.

    Also you said Z was working but not X or Y. X and Y both have lower current settings than Z - try upping them.

    • i have up'd them, lowered them, and set them the same and i get the same results. y will move but makes a horrible noise while doing so and continues to "grind" even after hitting the end stop. x does nothing but vibrates in place. all of the steppers are the exact same model and have the same wiring.


  • From the docs:

    RepRapFirmware does not support individual motor settings where an axis has multiple motors connected to different stepper drivers. The first parameter specified will be used for all motors on the axis. You should use identical motors on any axis that has more than one motor to avoid unexpected behaviour.

    Example: If you have two motors on your Z axis, physically connected to Z and E0 stepper drivers, configured with M584 Z2:3, set M906 Z200, not M906 Z200:200

    Can you do something so the X & Y steppers can be tested without any load on them? Loosen the pulleys perhaps?

    Frederick


  • administrators

    @dos said in faulty duet 3 mini?:

    this first issue is the steppers drivers seem to be behaving strangely. as an example, if i try and home certain axis other axis will either move instead or in tandem. as an example if i try and home y, the z motors will move. if i try and home x it just clunks and stalls out. if i home z it goes up instead on down, etc.

    I can't think of any way that commanding one motor should affect a different motor, unless the kinematics have been selected to do that. I suggest you do the following:

    1. Run M669 without parameters to check that the correct kinematics is selected. I don't see a M669 command in your config.g file, so it should report that Cartesian kinematics is selected, with a unit diagonal matrix.

    2. You can use G91 G1 H2 commands to test individual motors.

    Regarding motor directions, I think you will find that on the Duet 3 Mini the directions are reversed compared to the Duet 2. This is a consequence of the TMC2209 pinout. So you will need to change the M569 commands to reverse the directions. We could change the firmware to undo the reversal, but this would inconvenience all those users who have configured their machine to work with the existing directions.



  • what kind of printer is it?


Log in to reply