Duet3D Logo

    Duet3D

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Documentation
    • Order

    motor whine after movement

    Duet Hardware and wiring
    3
    3
    85
    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.
    • npm1
      npm1 last edited by

      Hia,
      when I move my corexy axis the motors whine really badly, when no movement occurs i hardly realize it is on

      ; Configuration file for Duet WiFi (firmware version 3)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool v3.1.4 on Wed Oct 07 2020 00:20:48 GMT+0100 (British Summer Time)
      
      ; General preferences
      G90                                            ; send absolute coordinates...
      M83                                            ; ...but relative extruder moves
      M550 P"My Printer"                             ; set printer name
      M669 K1                                     ; select CoreXY mode
      
      ; Network
      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 Backwards
      M569 P4 S1                                   ; physical drive 1 goes forwards
      M569 P2 S1                                     ; physical drive 2 goes forwards
      M569 P3 S1                                     ; physical drive 3 goes forwards
      M584 X0 Y4 Z2 E3                               ; set drive mapping
      M350 X64 Y64 Z16 E16 I1                        ; configure microstepping with interpolation
      M92 X400 Y400 Z600.00 E436.54              ; set steps per mm
      M566 X400 Y400 Z12.00 E120.00            ; set maximum instantaneous speed changes (mm/min)
      M203 X1500.00 Y1500.00 Z180.00 E1200.00        ; set maximum speeds (mm/min)
      M201 X500.00 Y500.00 Z20.00 E250.00            ; set accelerations (mm/s^2)
      M906 X800 Y800 Z1000 E800 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 X315 Y315 Z270 S0                         ; set axis maxima
      
      ; Endstops
      M574 X1 S1 P"!xstop"                          ; configure active-high endstop for low end on Y via pin ystop
      M574 Y1 S1 P"!e1stop"                           ; configure active-high endstop for low end on Y via pin ystop
      M574 Z1 S2                                     ; configure Z-probe endstop for low end on Z
      
      ; Z-Probe
      M950 H3 C"nil" ;
      M950 S0 C"exp.heater3"                         ; create servo pin 0 for BLTouch
      M558 P9 C"^zprobe.in" H5 F120 T6000            ; set Z probe type to bltouch and the dive height + speeds
      G31 P500 X0 Y0 Z2.5                            ; set Z probe trigger value, offset and trigger height
      M557 X15:215 Y15:195 S20                       ; define mesh grid
      
      ; Z-Probe
      ;M558 P0 H20 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"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
      M140 H0                                        ; map heated bed to heater 0
      M143 H0 S150                                   ; set temperature limit for heater 0 to 150C
      M308 S1 P"e0temp" Y"thermistor" T100000 B3950 ; 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
       M140 H-1
      
      ; Fans
      M950 F0 C"fan0" Q2500                           ; create fan 0 on pin fan0 and set its frequency
      M106 P0 S0 H-1                                 ; set fan 0 value. Thermostatic control is turned off
      M950 F1 C"fan1" Q2500                           ; create fan 1 on pin fan1 and set its frequency
      M106 P1 S1 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
      
      
      

      My printer has yet to be calibrated yet and it has only one fuse on it rather than the three

      Ender 5 pro(LGXextruderddewith e3d revo rapid changer) with fly rrf e3 and a standard prusa mk3, both siting air-tight in a ikea kitchen cabinet.

      1 Reply Last reply Reply Quote 0
      • theruttmeister
        theruttmeister last edited by

        First:
        Line 24: M350 X64 Y64 Z16 E16 I1
        By setting X and Y to 1/64th stepping, it prevents those drivers from using interpolation.
        There's not really any practical benefit to running 1/64th stepping anyway, as you are highly unlikely to actually get that mechanical resolution. Most people run 1/16th, and the interpolation just smooths the motion.

        But your question:
        The motors are whining because they are resonating (different motor windings will do that at different frequencies). The drivers try and avoid this with a clever thing called 'SpreadCycle', which is on by default. You can try playing with that setting by adding the command M569 Pnn Dnn
        For example: M569 P0 D2 sets the X driver to SpreadCycle. M569 P1 D1 will set the Y drive to random off time.

        For more info:
        https://duet3d.dozuki.com/Wiki/Gcode#Section_M569_Set_motor_driver_direction_enable_polarity_and_step_pulse_timing

        Remember you can just put the commands into the console to see their impact before you edit config.g

        If you are really desperate for silence, try 'StealthChop' but be aware that it drops the torque by a huge amount.
        If you want to know more about StealthChop and SpreadCycle, check out Trinamic's documentation.

        Isolate, substitute, verify.

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

          also see
          https://duet3d.dozuki.com/Wiki/Reducing_Stand-Still_Noise

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