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

    M221 - Request for help for proper extruder drive mapping DWC

    Scheduled Pinned Locked Moved Solved
    Tuning and tweaking
    3
    22
    762
    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.
    • code7undefined
      code7
      last edited by code7

      @Phaedrux @deckingman

      Here is the updated config.g. I've also removed all references to the U and V axis as they were for testing.

      ; Configuration file for Duet WiFi (firmware version 3)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool v2.1.8 on Tue Feb 11 2020 11:45:16 GMT-0700 (Mountain Standard Time)
      
      ; General preferences
      G90                            	                ; send absolute coordinates...
      M83                                             ; ...but relative extruder moves
      M550 P"Delta Printer"                           ; set printer name
      M665 R88 L236 B55 H259.5                        ; Set delta radius, diagonal rod length, printable radius and homed height
      M666 X-1.170 Y1.058 Z0.112                      ; put your endstop adjustments here, or let auto calibration find them (default X0 Y0 Z0)
      

      ; Panel Due
      M575 P1 B57600 S1 ;Set baud rate Duet Board.

      ; Network
      M587 S"Ammon"
      M551 P"12345" ; set password
      M552 S0 ; Turn on Wifi
      ;M552 P192.168.1.0 ; enable network and set static IP - doesn't work, Static IP needs to be setup in Router

      M552 S1
      ;M553 P255.255.255.0 ; Netmask
      ;M554 P192.168.1.1 ; Gateway (not used yet)
      M586 P0 S1 ; enable HTTP
      ;M586 P1 S0 ; disable FTP
      ;M586 P2 S0 ; disable Telnet

      ; Drives
      M569 P0 S0 ; physical drive 0 goes forwards - X
      M569 P1 S0 ; physical drive 1 goes forwards - Y
      M569 P2 S0 ; physical drive 2 goes forwards - Z
      M569 P3 S0 ; physical drive 3 goes forwards - E0
      M569 P10 S1 ; physical drive 10 goes forwards - E10
      M584 X0 Y1 Z2 E10 ; set drive mapping with Wire Control
      M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
      ;M92 X80.00 Y80.00 Z80.00 E3918.10 ; set steps per mm (original values)
      M92 X80.00 Y80.00 Z80.00 E2487.71 ; set steps per mm
      M566 X1200.00 Y1200.00 Z1200.00 E10 ; set maximum instantaneous speed changes (mm/min)
      M203 X4500 Y4500 Z4500 E2000 ; set maximum speeds (mm/min)
      M201 X300.00 Y300.00 Z300.00 E500 ; set accelerations (mm/s^2 (default 1000 for XYZ)
      M906 X2000 Y2000 Z2000 I65 ; set motor currents (mA) and motor idle factor in per cent (I30 is default but doesn't hold effector)
      M906 E800 I20 ; set motor currents (mA) and motor idle factor in per cent (I30 is default but doesn't hold effector)
      M84 S30 ; Set idle timeout

      ; Axis Limits
      M208 Z0 S1 ; set minimum Z for Delta Printer

      ; Endstops
      M574 X2 S1 P"!xstop" ; configure active-low endstop for high end on X via pin xstop
      M574 Y2 S1 P"!ystop" ; configure active-low endstop for high end on Y via pin ystop
      M574 Z2 S1 P"!zstop" ; configure active-low endstop for high end on Z via pin zstop
      M574 U2 S1 P"exp.E2_STOP" ; configure active-low endstop for high end on Z via pin zstop (configured this pin for a Spool Rewind dummy endstop. Can use XYZ endstop as well with +)

      ; Z-Probe
      M558 P5 C"^!zprobe.in" H5 F120 T6000 ; set Z probe type to switch and the dive height + speeds (P5 selects switch for bed probing between the In/Gnd pins of the Z-probe connector) (Defualt H5 F120)
      ;M558 H30 ;*** Remove this line after delta calibration has been done and new delta parameters have been saved with M500
      G31 P500 X0 Y0 Z-9.0 ; set Z probe trigger value, offset and trigger height (Default Z=-6.5)
      M557 R30 S10 ; define mesh grid
      M208 S1 Z-2.5 ; allow movement down to Z=-2.5

      ; Heaters
      M308 S0 P"bedtemp" A"Bed Temp" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
      M308 S1 P"e0temp" A"Deposition Head" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
      M308 S2 P"e1temp" A"Power 1" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
      M308 S3 P"exp.thermistor3" A"Power 2" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
      M308 S4 P"exp.thermistor4" A"Power 3" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
      M308 S5 P"exp.thermistor5" A"Stepper X" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
      M308 S6 P"exp.thermistor6" A"Y Axis SMA AG" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
      M308 S7 P"^exp.thermistor7" A"X Axis SMA Ceramic" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp

      ; Fans
      M950 F0 C"fan0" Q500 ; 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" 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" Q100 ; create fan 2 on pin fan2 and set its frequency
      M106 P2 C"Power Power" S0 H-1 B0.05 ; set fan 2 name and value. Thermostatic control is turned off. Blip time is set at .05sec full PWM (0.1 sec is default if field is empty).

      ; Expansion Pins
      M950 P2 C"spi.cs2" ; Auto or not for E0 controller. Set by M42 P1 S0 or S1 in macros

      ; Tools
      M563 P0 S"Deposition Head" D0 F-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

      ; Miscellaneous
      T0 ; select tool 0

      ; Custom settings
      M302 P1 ; allow cold extrusion
      M42 P1 S50 ; turn on chamber light
      M501 ; Loads saved (M500) values at startup (calibration etc.) and overrides any similar commands earlier in config.g

      ; Power Enable/Disable Safety Relay - Expansion GPIO (0-9 pins available on Heater/Fan pins)
      M950 P0 C"exp.heater5" ; Expansion connector pin 18
      M42 P0 S0 ; Disable Powers - DC/SSR
      M950 P1 C"exp.heater6" ; Expansion connector pin 23
      M42 P1 S0 ; Deposition Signal OFF - AC/SSR
      M950 P6 C"exp.heater7" ; Expansion connector pin 31
      M42 P6 S0 ; Turns On the Aux. (Full Power is 0, Off is 255)
      M950 P5 C"exp.heater4" ; Expansion connector pin 13
      M42 P5 S0 ; Turns Shield Gas OFF (Full Power is 255, Off is 0)
      M950 J7 C"exp.heater3" ; Expansion connector pin 8
      M42 P7 S1 ; Senses conductivity between wire and bed/part
      ; M581 P"exp.heater3" T2 C1

      Delta Printer Using a Duet 2 Wifi v1.04c, FW3.4.0beta2, Duet WiFi sever 1.26, Duet Web Control 3.3.0

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

        Can you explain a bit more about what you're trying to accomplish? What is driver 10? What did Danal create for you? Was it working before in RRF2? Do you have a config example from then?

        @code7 said in M221 - Request for help for proper extruder drive mapping DWC:

        M574 U2 S1 P"exp.E2_STOP" ; configure active-low endstop for high end on Z via pin zstop (configured this pin for a Spool Rewind dummy endstop. Can use XYZ endstop as well with +)

        You still refer to U axis endstop here.

        Z-Bot CoreXY Build | Thingiverse Profile

        1 Reply Last reply Reply Quote 0
        • deckingmanundefined
          deckingman @code7
          last edited by

          @code7 What @Phaedrux said plus can you explain what hardware you are using?

          By that I mean what board and any expansion boards.

          I'm making a guess from you signature and the config.g file that you only have a Duet Wifi. In which case you only have 5 drivers (0 to 4). You might have a Duex 5 but it doesn't look likely from the config.g. A Duex 5 would give you 5 additional drivers which would be drivers 5 to 9.

          So driver 10 would need to be somehow connected to an expansion board or the expansion header. But although it would driver 10, it can't be extruder 10 because XY and Z take up the first 3 drivers (0 to 2). So what I think you are trying to do is connect extruder 0 (the only extruder) to driver 10 which is an external driver connected to an expansion board or the expansion header.

          But this all conjecture and deduction on my part so we need some more information about the hardware. A picture or two might help.

          Ian
          https://somei3deas.wordpress.com/
          https://www.youtube.com/@deckingman

          1 Reply Last reply Reply Quote 0
          • code7undefined
            code7
            last edited by

            @Phaedrux

            Thanks, I removed this line.

            This was created in RRF3 to automatically speed up the extrusion feed rate based on an external trigger for closed-loop control. I was hoping to do this within the firmware, but Danal said the FW and Controller would not be able to react quickly enough.

            Delta Printer Using a Duet 2 Wifi v1.04c, FW3.4.0beta2, Duet WiFi sever 1.26, Duet Web Control 3.3.0

            1 Reply Last reply Reply Quote 0
            • code7undefined
              code7
              last edited by

              @deckingman

              Yes I am using a Duet Wifi with the external controller and motor driver wired through the expansion header. I am no longer using the E0 pins on the board so maybe it would be simpler to not use the expansion header pins for the external controller/motor driver?

              Delta Printer Using a Duet 2 Wifi v1.04c, FW3.4.0beta2, Duet WiFi sever 1.26, Duet Web Control 3.3.0

              deckingmanundefined 1 Reply Last reply Reply Quote 0
              • deckingmanundefined
                deckingman @code7
                last edited by

                @code7 said in M221 - Request for help for proper extruder drive mapping DWC:

                @deckingman

                Yes I am using a Duet Wifi with the external controller and motor driver wired through the expansion header. I am no longer using the E0 pins on the board so maybe it would be simpler to not use the expansion header pins for the external controller/motor driver?

                Probably. But I have zero experience of using external drivers so personally, I am unable to help. If you can connect the motor directly to the onboard driver, then it becomes a piece of cake.

                Ian
                https://somei3deas.wordpress.com/
                https://www.youtube.com/@deckingman

                1 Reply Last reply Reply Quote 0
                • code7undefined
                  code7
                  last edited by

                  @Phaedrux @deckingman

                  Do you know why sending either M221 S150 D0 or M221 S150 D10 has no effect on changing the feedrate?

                  Delta Printer Using a Duet 2 Wifi v1.04c, FW3.4.0beta2, Duet WiFi sever 1.26, Duet Web Control 3.3.0

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

                    Well D10 wouldn't work because there is no 10th motor driver. Not sure why D0 wouldn't work unless it is working, just not being reflected in DWC. What do you get if you just send M221 D0 by itself? Does it report the currently set feedrate?

                    I have to admit, I'm still pretty lost on what your setup is and what's going on. sorry.

                    Z-Bot CoreXY Build | Thingiverse Profile

                    1 Reply Last reply Reply Quote 0
                    • code7undefined
                      code7
                      last edited by code7

                      @Phaedrux

                      Sending M221 D0 returns the current set feedrate: Extrusion factor for extruder 0: 150.0%
                      But sending G0 E10 F100 still feeds the extruder forward 10mm at a feed of only 100mm/min as verified with an external timer.

                      Delta Printer Using a Duet 2 Wifi v1.04c, FW3.4.0beta2, Duet WiFi sever 1.26, Duet Web Control 3.3.0

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

                        I'm not sure if M221 will modify a G0 command in the way that you're expecting since it's not being detected as a coordinated print extrusion move with an X Y E value. I could be wrong, but if you're sending G0 E10 it will give you G0 E10 regardless of the M221 set.

                        Try giving it a G1 X Y E command instead and see if it then applies M221. I'm not sure, but that might also need to be executed from a print file.

                        @dc42 would have to clarify.

                        Z-Bot CoreXY Build | Thingiverse Profile

                        1 Reply Last reply Reply Quote 0
                        • code7undefined
                          code7
                          last edited by

                          @Phaedrux

                          You are correct and this explains everything. M221 will only modify a G0 or G1 if it contains a coordinated print extrusion move with an X Y E value.

                          Would it be OK to remove most of the intermediate posts on this topic to save future users from having to read through them?

                          Sure appreciate your help.

                          Delta Printer Using a Duet 2 Wifi v1.04c, FW3.4.0beta2, Duet WiFi sever 1.26, Duet Web Control 3.3.0

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

                            No need to delete. I can mark the answer to show up at the start.

                            Z-Bot CoreXY Build | Thingiverse Profile

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