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

TMC2660 problem

Scheduled Pinned Locked Moved Solved
Duet Hardware and wiring
8
25
2.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.
  • undefined
    PCR @PCR
    last edited by PCR 11 Nov 2021, 13:20 11 Nov 2021, 13:19

    M569 P0 S0 ; physical drive 0 goes backwards
    M569 P1 S1 ; physical drive 1 goes forwards
    M569 P2 S0 ; physical drive 2 goes backwards
    M569 P3 S0 ; physical drive 3 goes backwards
    M569 P4 S0 ; physical drive 4 goes backwards
    M569 P5 S0 ; physical drive 5 goes backwards
    M569 P6 S0 ; physical drive 6 goes backwards
    M569 P7 S0 ; physical drive 7 goes backwards
    M584 X0 Y1:4 Z2:5:6:7 E3 ; set drive mapping
    M671 X-60:-60:660:660 Y-48:378:378:-48 S7 ; set the coordinates of the 4 Z-axis drivers
    M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
    M92 X80.03 Y79.84 Z1615.90 E300.00 ; set steps per mm
    M566 X900.00 Y900.00 Z60.00 E500.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X10000.00 Y10000.00 Z500.00 E1000.00 ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z20.00 E500.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 X0 Y0 Z0 S1 ; set axis minima
    M208 X600 Y300 Z470 S0 ; set axis maxima
    ; Endstops
    M574 X1 S1 P"!xstop" ; configure active-low endstop for low end on X via pin !xstop
    M574 Y1 S1 P"!ystop+!e1stop" ; configure active-low endstop for low end on Y via pin !ystop
    M574 Z1 S2 ; configure Z-probe endstop for low end on Z
    ; Z-Probe
    M950 S0 C"duex.pwm1" ; create servo pin 0 for BLTouch
    M558 P9 C"^zprobe.in" H5 F120 T4000 ; set Z probe type to bltouch and the dive height + speeds
    G31 P500 X36 Y9 Z0 ; set Z probe trigger value, offset and trigger height
    M557 X65:585 Y20:280 S130 ; define mesh grid
    ;Filament Runout switch
    M591 D0 P2 C"e0stop" S1 ; filament switch
    ; Heaters
    M308 S0 P"bedtemp" Y"thermistor" T100000 B3950 R4700 ; 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 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
    M140 H0 ; map heated bed to heater 0
    M143 H0 S120 ; set temperature limit for heater 0 to 120C
    M308 S1 P"e0temp" Y"pt1000" T100000 B4000 R4700 ; 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 R2.926 C244.4 D10.45 S1.00 V25.0 ; disable bang-bang mode for heater and set PWM limit
    M143 H1 S260 ; set temperature limit for heater 1 to 260C
    ; Fans
    M950 F0 C"fan0" Q500 ; create fan 0 "part fan" 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" Q500 ; create fan 1 "hotend fan"on pin fan1 and set its frequency
    M106 P1 S1 H1 T70 ; 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
    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 M92 Z80, not M92 Z80:80
    1 Reply Last reply Reply Quote 0
    • undefined
      jerolee @PCR
      last edited by jerolee 11 Nov 2021, 13:44 11 Nov 2021, 13:42

      @pcr
      This has no solution for the Extruder stepper problem but that aside.

      Quote "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." end quote.

      I use identical motors on my axis.
      This means that my Z-axis will always run out of sync go skewed in height while the motors are not exactly the same? I had to calibrate them.
      Have them raise Z 450mm then measure the actual distance and do some calculation to adjust the number of steps per mm per motor.
      They didnt raise the gantry at all corners exactly accurate. Same as you do for extruding exact amount of filament.
      But oddly enough, after the calibration, feed in these steps in the config, the 4 corners does run accurate 🙂 so another wierd thing goin on then?

      This would be 1 more reason to step away from reprap software?

      undefined 1 Reply Last reply 11 Nov 2021, 20:04 Reply Quote 0
      • undefined
        dc42 administrators @jerolee
        last edited by 11 Nov 2021, 20:04

        @jerolee please can you provide a link to the pancake stepper motor that you purchased. I will then purchase on so that I can test it with Duets.

        @jerolee said in TMC2660 problem:

        This means that my Z-axis will always run out of sync go skewed in height while the motors are not exactly the same?

        Only if your Z steps/mm is not the same for all your Z motors, or they can't all be run at the same current.

        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

        undefined 1 Reply Last reply 11 Nov 2021, 20:09 Reply Quote 0
        • undefined
          GeneRisi @dc42
          last edited by 11 Nov 2021, 20:09

          @dc42 I have exactly the same motor. It works. @jerolee , here is my suggestion. Connect the motor wiring from the motor all the way to the duet board. The duet board connector has the wiring between coils on adjacent pins, so one coil will be pins 1 and 2. The other coil will be on pins 3 and 4. Measure the resistance on the connector you are plugging into the duet board. If you do not get approx. 2 ohms for both pairs, a wire is crossed. Typical Nema 17 steppers have the pairs interlaced. The LDO pancake stepper does not.

          undefined 1 Reply Last reply 11 Nov 2021, 20:24 Reply Quote 0
          • undefined
            dc42 administrators @GeneRisi
            last edited by 11 Nov 2021, 20:24

            @generisi, thanks for your observations.

            @jerolee in your original post you said:

            I cant get mine to work, which ever combination of wiring, tried 8 combo's
            result a little hum.

            Unfortunately, connecting stepper motors incorrectly to a stepper driver is the best way of blowing it. We took steps when designing the Duet to improve the resilience of the drivers when a motor is disconnected under load. However, the current regulation in the stepper drive relies on the motor being connected correctly, and we can't do anything about that. This is why at https://duet3d.dozuki.com/Wiki/Choosing_and_connecting_stepper_motors#Section_Connecting_stepper_motors we stress the need to connect the motors correctly.

            The TMC2660s are high-current drivers and the short-circuit protection built into them is unfortunately not fast enough to protect the driver in all situations (even though RRF sets it to maximum sensitivity), especially when connecting low-inductance motors incorrectly. Therefore I suggest you check whether the motor output that you are testing the pancake motor with is still capable of driving one of your Nema 17 motors correctly.

            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

            undefined 1 Reply Last reply 11 Nov 2021, 22:19 Reply Quote 0
            • undefined
              jerolee @dc42
              last edited by jerolee 11 Nov 2021, 23:18 11 Nov 2021, 22:19

              @dc42
              All of the drivers still operate normally with all NEMA17 on it. So none of the drivers is defective or burned out. my 3D printer functions, it homes all axis, it does the tramming. it just wont let the pancake motors rotate. i connected them to all of the drivers and they just dont work.
              Please stop replying on the wiring because i connect the coils correctly. 1 coil on 1-2 pin other coil to 3-4 pin. i looked at the wiring schematic of the Duet board.
              So nema17 just works fine, i know the wiring can be different for motors, thats exactly why i measured which pairs are the coils, to not make mistakes here.

              Im completely in the dark about what can cause this. I posted the config file im using. Can someone comment on the settings for the Extruder?
              I cant think of anything wrong there tbh because it has all the settings the other drivers get.
              Also tried different current settings, nothing changes. tried without interpolation, etc...

              I connect the pancakes to my ender3 board which runs on a SKR turbo with Marlin and there the round pancakes just work fine, rotating both directions
              No worries.

              If you guys dont have a clue either, then just say it. dont bring up the wiring again 🙂
              Thanks anyways.

              i just changed the Y and Z steps to just 1 value for each letter. Does the same goes for the current settings and others like acceleration, speed?

              After getting used to reprap and DWC i would hate to change back, a lot of work again, time and money invested lost. im not happy, the printer as good as finished but without the extruder running its useless sitting there.IMG_1778.JPG

              undefined undefined 2 Replies Last reply 12 Nov 2021, 03:11 Reply Quote -1
              • undefined
                jerolee @jerolee
                last edited by jerolee 11 Dec 2021, 03:13 12 Nov 2021, 03:11

                pancake (1).JPG

                @dc42 Same measurement, same wiring like other picture but just more clear in view.

                Hurray the stepper is rotating!!! The only thing i changed today was that i removed the (not needed) steps per mm in the config file from the Y and Z axis. This has nothing to do with E axis right?!
                BUT appearantly , how in the hell this is possible i dunno, it fucked up the pancake steppers. Im completely stunned here and i would like to ask DC42 to try and replicate this. the more values registered under Y and Z axis must have crazed the system in some kinda really odd way.
                Wow unbelievable, but im so happy it works now, jeeeez im speechless.

                1 Reply Last reply Reply Quote 0
                • undefined
                  GeneRisi @jerolee
                  last edited by 12 Nov 2021, 03:13

                  @jerolee , I am only trying to help you out. My final comment is to look at the section of my config file below. The first extruder is a 20mm LDO pancake, the second extruder is a 17mm LDO pancake. They are both driving a version of the Orbiter extruder.

                  ; *** Motion Settings ***
                  ;
                  M566 X400 Y400 Z8 A8 C2 E300:300:300:300 ; Set maximum instantaneous speed changes (mm/min)
                  M203 X35000 Y35000 Z1200 A1200 C5000 E3600:7200:3600:5000 ; Set maximum speeds (mm/min)
                  M201 X6000 Y6000 Z400 A400 C400 E600:800:600:5000 ; Set accelerations (mm/s^2)
                  ;M593 F48 ; cancel ringing at 50Hz (https://forum.e3d-online.com/threads/accelerometer-and-resonance-measurements-of-the-motion-system.3445/)
                  ;
                  ; *** Drive Currents ***
                  ;
                  ;M906 X2000 Y2000 Z1330 C400 E1000:1680:1680:1380 I30 ; motor currents (mA) maxes
                  M906 X1400 Y1400 I30
                  M906 E1200:650:500:1380 I10
                  M906 A700 C400 I10
                  M906 Z1250 I70
                  ;
                  M84 S120 ; Set idle timeout```
                  For the 20mm LDO pancake, I have the current set at 1200 mA. I also have a lower "maximum instantaneous speed change.
                  I hope this helps.
                  undefined 1 Reply Last reply 12 Nov 2021, 03:22 Reply Quote 0
                  • undefined
                    jerolee @GeneRisi
                    last edited by jerolee 11 Dec 2021, 03:38 12 Nov 2021, 03:22

                    @generisi
                    Hi, i appreciate your help ofcourse.

                    Good news mate, after i removed the values from Y and Z for the other motors on that axis in the config file, so only 1 value for Y and 1 value for Z, after upload and reset the pancake extruder WORKED!!!
                    It has nothing to do with the wiring but appearantly the values from Y and Z in the config file did some really odd magic preventing the 36mm round pancake to rotate. It did not bother a NEMA17

                    I ask DC42 to try and replicate this oddly behaviour as i gues its a very interesting conflict somewhere??

                    So my problem is solved and im a happy camper.

                    M584 X0 Y1:4 Z2:5:6:7 E3 ; set drive mapping
                    M671 X-60:-60:660:660 Y-48:378:378:-48 S7 ; set the coordinates of the 4 Z-axis drivers
                    M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
                    M92 X80.03 Y79.84 Z1619.80 E704.00 ; set steps per mm
                    M566 X900.00 Y900.00 Z60.00 E300.00 ; set maximum instantaneous speed changes (mm/min)
                    M203 X10000.00 Y10000.00 Z500.00 E1000.00 ; set maximum speeds (mm/min)
                    M201 X500.00 Y500.00 Z20.00 E500.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

                    undefined undefined 2 Replies Last reply 12 Nov 2021, 03:45 Reply Quote 0
                    • undefined
                      GeneRisi @jerolee
                      last edited by 12 Nov 2021, 03:45

                      @jerolee I am glad you figured it out. Check my settings for current, etc. they are working well for me so far.
                      Gene

                      1 Reply Last reply Reply Quote 0
                      • undefined jerolee has marked this topic as solved 12 Nov 2021, 03:57
                      • undefined
                        droftarts administrators @jerolee
                        last edited by 12 Nov 2021, 10:44

                        @jerolee What firmware version are you using? Send M115 and post response.

                        Multiple values on gcodes that should only have one (like M350, M92, M566, M203, M201 and M906) used to cause problems, but I thought had been fixed in more recent versions of the firmware. If you're using the latest and it's still causing issues, I'll raise it with @dc42 for him to check. Also, @PCR 's suggested changes included setting single values for each axis, so if you'd tried all of what he suggested, it should have worked. My suggestion (if I'd read this thread earlier) would have been to create a blank config.g with one motor defined, and test. You can also send M98 P"config.g" to check your config.g for errors, though I'm not sure it spots multiple values being specified when they shouldn't be.

                        Next time you post a problem, it's best to post what hardware you are using, firmware version, and your config.g in your first post; it will make helping you a lot more straightforward, and quicker. See https://forum.duet3d.com/topic/5909/

                        Ian

                        Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                        undefined 1 Reply Last reply 12 Nov 2021, 13:30 Reply Quote 0
                        • undefined
                          jerolee @droftarts
                          last edited by 12 Nov 2021, 13:30

                          @droftarts
                          RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 3.3 ELECTRONICS: Duet WiFi 1.02 or later + DueX5 FIRMWARE_DATE: 2021-06-15 21:45:03

                          I did the changes PCR suggested otherwise i would never have found the solution 🙂
                          @PCR
                          Thanks mate, by removing values from the config as you suggested, the odd behaviour of the software was gone and round pancake worked.

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