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

    Driver numbers?

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    8
    40
    7.4k
    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.
    • Kulitorumundefined
      Kulitorum
      last edited by

      I am confused that on the wiring diagram (https://duet3d.com/wiki/Duet_WiFi_wiring_diagrams) the drivers does not have their corresponding firmware driver numbers written on them. Why do we refer to driver numbers 0-10 in the firmware, but in the hardware documentation they are named x,y,z,e0,e1,e2,e3,e4,e5,e6

      Please put the correct driver numbers in the wiring diagrams.

      Kulitorum

      1 Reply Last reply Reply Quote 0
      • T3P3Tonyundefined
        T3P3Tony administrators
        last edited by

        Hi, good point, I will sort it out ASAP.

        You are right the xyze1 etc is just the default mapping, any alternative is possible so the wiring diagram should show that.

        www.duet3d.com

        1 Reply Last reply Reply Quote 0
        • Kulitorumundefined
          Kulitorum
          last edited by

          Did you forget about this?

          Kulitorum

          1 Reply Last reply Reply Quote 0
          • DjDemonDundefined
            DjDemonD
            last edited by

            I wonder if numbering of heaters, drivers, temperature monitoring channels can be standardised across the firmware, diagrams, DWC and paneldue? Its sometimes hard to work out if you want fan 0 (or fan 1 as it is on DWC) etc.. there is already a thread about temperature monitoring channels.

            Simon. Precision Piezo Z-Probe Technology
            www.precisionpiezo.co.uk
            PT1000 cartridge sensors NOW IN, just attach to your Duet board directly!

            1 Reply Last reply Reply Quote 0
            • dc42undefined
              dc42 administrators
              last edited by

              The text from the wiki that you quoted is the comment at the end of the example. That example sets them up as that comment describes. The mapping from driver numbers to connectors on the Duet is as you list.

              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

              1 Reply Last reply Reply Quote 0
              • FrankNPrinterundefined
                FrankNPrinter
                last edited by

                i have an ft5 and am running 2 y motors and dual z in series and a bl touch. here is my config if it helps. Be forewarned, still a newbie so if you see anything wrong or that could be done better, i am all ears 🙂

                M111 S0 ; Debugging off
                G21 ; Work in millimetres
                G90 ; Send absolute coordinates…
                M83 ; ...but relative extruder moves
                M555 P1 ; Set firmware compatibility to look like RepRapFirmare
                M208 X0 Y0 Z0 S1 ; Set axis minima
                M208 X280 Y280 Z450 S0 ; Set axis maxima

                ; Endstops
                M574 X1 Y2 Z1 S0 ; Define active low and unused microswitches

                ; BLTouch
                M307 H3 A-1 C-1 D-1
                M558 P5 X-22 Y-9 Z4.05 H3 F200 T5000
                G31 X-22 Y-9 Z1.1

                M584 X0 Y1:4 Z2 E3

                ; Drives
                M569 P0 S0 ; Drive 0 goes forwards - X
                M569 P1 S0 ; Drive 1 goes Backwards - Y
                M569 P2 S0 ; Drive 2 goes Backwards - Z
                M569 P3 S1 ; Drive 3 goes forwards - E0
                M569 P4 S1 ; Drive 4 goes forwards - Y

                M350 X32 Y32 Z32 E32 I1 ; Configure microstepping with interpolation
                M92 X320 Y320 Z1610 E340.5 ; Set steps per mm
                M566 X600 Y600 Z600 E120 ; Set maximum instantaneous speed changes (mm/min)
                M203 X6000 Y6000 Z1000 E1200 ; Set maximum speeds (mm/min)
                M201 X500 Y500 Z500 E500 ; Set accelerations (mm/s^2)
                M906 X1500 Y1500 Z1500 E1500 I30 ; Set motor currents (mA) and motor idle factor in per cent
                M84 S30 ; Set idle timeout

                ; Heaters
                M143 S260 ; Set maximum heater temperature to 260C
                M301 H0 S1.00 P10 I0.1 D200 T0.4 W180 B30 ; Use PID on bed heater (may require further tuning)
                M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0
                M305 P1 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 1

                ; Tools
                M563 P0 D0 H1 ; Define tool 0
                G10 P0 X0 Y0 ; Set tool 0 axis offsets
                G10 P0 R100 S200 ; Set initial tool 0 active and standby temperatures to 0C

                ; Network
                M550 PFrankNPrinter ; Set machine name
                M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP

                ; Fans
                M106 P0 S0.3 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
                M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
                M106 P2 S1 I0 F500 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off

                ; Custom settings are not configured

                1 Reply Last reply Reply Quote 0
                • stellatorundefined
                  stellator
                  last edited by

                  Hi there, i still couldnt figure out the correct remapping of my four z-axis motors. I also got a Duex5 board and would like to assign Motor Drivers E2,E3,E4,E5 of the Duex board to drive my z-axis and some time later maybe even autolevel and not only probe the bed using the z-probe…

                  The Duex should be working fine since it pops up after giving the M115 command and its powered at 24V. My g-code is as follows:

                  ; Drives
                  M569 P0 S1 ; Drive 0 goes forwards
                  M569 P1 S1 ; Drive 1 goes forwards
                  M569 P2 S0 ; Drive 2 goes backwards
                  M569 P3 S1 ; Drive 3 goes forwards
                  M584 X0 Y1 Z5:6:7:8 E3 ; Apply custom drive mapping
                  ...

                  Iam new to any programming language so iam having difficulties understanding the gcode grammar but maybe someone could tell me what is wrong with my code, since the motors dont move or see any current at all.

                  Moving and z-probing the bed worked already when I was using the two serial Z-motor connectors of the DuetWifi board with 2xtwo motors connected in parallel but i also cleverly forgot that the electronic coupling also hinders me from independently moving the four axes manually in order to level the bed :-))

                  many thanks in advance!!!

                  1 Reply Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators
                    last edited by

                    Make sure that you put the M584 command before other movement-related commands (except M569), in particular before M350 and M906. Also check that the firmware reports the presence of the DueX5 board in the M115 command or on the Settings General page of DWC,

                    I have started implementing bed levelling using independent Z motors. See https://duet3d.com/wiki/G-code#M671:_Define_Z_leadscrew_positions.

                    Driver numbers are now documented at https://duet3d.com/wiki/Driver_and_heater_numbers.

                    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

                    1 Reply Last reply Reply Quote 0
                    • T3P3Tonyundefined
                      T3P3Tony administrators
                      last edited by

                      @Kulitorum:

                      I am confused that on the wiring diagram (https://duet3d.com/wiki/Duet_WiFi_wiring_diagrams) the drivers does not have their corresponding firmware driver numbers written on them. Why do we refer to driver numbers 0-10 in the firmware, but in the hardware documentation they are named x,y,z,e0,e1,e2,e3,e4,e5,e6

                      Please put the correct driver numbers in the wiring diagrams.

                      Kulitorum

                      I have finally done this, sorry for the delay:

                      https://duet3d.com/wiki/Duet_WiFi_wiring_diagrams

                      https://duet3d.com/wiki/Duex2_and_Duex5_wiring_diagram

                      www.duet3d.com

                      1 Reply Last reply Reply Quote 0
                      • fcwiltundefined
                        fcwilt
                        last edited by

                        Another example of the first rate support provided for Duet products.

                        Loving it.

                        Frederick

                        Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                        1 Reply Last reply Reply Quote 0
                        • Guyarosundefined
                          Guyaros
                          last edited by

                          Thanks Tony,
                          this is very useful.

                          1 Reply Last reply Reply Quote 0
                          • stellatorundefined
                            stellator
                            last edited by

                            Dear DC42, sorry that i cant put this more specific but what do i have to do to perform an auto bed levelling exactly? I get a nice reliable heightmap within 5µm deviation between measurements but the single z-axis motors do not corrected for the offset.

                            thanks and gn8

                            1 Reply Last reply Reply Quote 0
                            • stellatorundefined
                              stellator
                              last edited by

                              Oh, here is the according config:

                              ; General preferences
                              M111 S0 ; Debugging off
                              G21 ; Work in millimetres
                              G90 ; Send absolute coordinates…
                              M83 ; ...but relative extruder moves
                              M555 P1 ; Set firmware compatibility to look like RepRapFirmare
                              M208 X0 Y0 Z0 S1 ; Set axis minima
                              M208 X230 Y310 Z220 S0 ; Set axis maxima

                              ; Endstops
                              M574 Z0 S0 ; Define active low and unused microswitches
                              M574 X1 Y1 S1 ; Define active high microswitches
                              M558 P5 X0 Y0 Z1 H3 R0.2 F7000 T7000 I1 ; Set Z probe type to switch and the axes for which it is used, the dive height H, the recovery time R, F is feedrate speed for z-axis, T is travel speed for x and y, I is for active high or low
                              G31 P600 Z0 ; Set Z probe trigger value, offset and trigger height
                              M557 X0:230 Y0:310 S100 ; Define mesh grid XY limits and S spacing

                              ; Drives
                              M569 P0 S1 ; Drive 0 (X) goes forwards
                              M569 P1 S1 ; Drive 1 (Y) goes forwards
                              M569 P2 S0 ; Drive 2 (Z) goes backwards
                              M569 P3 S1 ; Drive 3 (E0) goes forward
                              M569 P4 S0 ; Drive 4 (E1) goes backwards
                              M569 P5 S0 ; Drive 5 (Z1) goes backwards
                              M569 P6 S0 ; Drive 6 (Z2) goes backwards
                              M569 P7 S0 ; Drive 7 (Z3) goes backwards
                              M569 P8 S0 ; Drive 8 (Z4) goes backwards
                              M584 X0 Y1 Z5:6:7:8 E3 ; Apply custom drive mapping Drives 5,6,7,8 are driven as one
                              M671 X10:220:220:10 Y10:10:300:300 ; Z motors are at coordinates 5:X10Y10 6:X220Y10 7:X220Y300 8:X220Y300
                              M350 X16 Y16 Z16 E16 I1 ; Configure microstepping, interpolation
                              M92 X32,6531 Y32,6531 Z800 E500 ; Set steps per mm
                              M566 X600 Y600 Z30 E120 ; Set maximum instantaneous speed change or jerk when changing direciton (mm/min)
                              M203 X10000 Y10000 Z500 E3000 ; Set maximum speeds, ignored when executing M558 (mm/min)
                              M201 X2000 Y2000 Z30 E50 ; Set accelerations (mm/s^2)
                              M906 X1300 Y1300 Z1500 E1500 I30 ; Set motor currents (mA) and motor idle factor in per cent
                              M84 S30 ; Set idle timeout

                              ; Heaters
                              M141 H2 ; Assign chamber heater to heater 2
                              M143 H0 S125 ; set maximum bed temperature to 125C
                              M143 H1 S600 ; set maximum hotend temperature to 600C
                              M143 H2 S90 ; set the maximum chamber temperature to 90C
                              M301 H0 P-1 ; Set bed heater to bang-bang mode
                              ;M301 H1 P-1 ; Set bed heater to bang-bang mode
                              M301 H1 S0.40 P10 I0.2 D0 T0.4 W180 B80 ; Use PID on hotend heater (may require further tuning)
                              M301 H2 P-1 ; Set chamber heater 2 to bang-bang mode
                              M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for bed heater 0
                              M305 P1 X104 ; Assign TC daughter board channel 1 to H1 hotend heater
                              M305 P2 X200 ; Remap sensor channel 2 to Pt100 daughter board channel 200
                              M305 P101 X105 S"TC 2" ;
                              M305 P102 X201 S"Pt 2" ;

                              ; Fans
                              ;M106 P0 S1 I0 F500 H1:2 T45 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
                              ;M106 P1 S1 I0 F500 H1:2 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
                              M106 P0 S50 I0 F32 B1 H1 T30 ; Set fan 0 0-255 value, PWM signal inversion and frequency and start up time. Starts fan over 30C.
                              M106 P3 S1 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off
                              M106 P5 S0.3 ; Red LED to 30% power
                              M106 P6 S0.3 ; Green LED to 30% power
                              M106 P7 S0.3 ; Blue LED to 30% power
                              ;M106 P3 S1 H-1 ; Set Duex fan 3 to always on full power and not thermostaically controlled

                              ; Tools
                              M563 P0 D0 H1 ; Define tool P(0) and assign to Extruder D(0) Heater H(1)
                              G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
                              G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C

                              ; Network
                              M550 P ; Set machine name
                              M551 P ; Set password
                              M552 S1 ; Enable network
                              ; Access point is configured manually via M587 by the user
                              M586 P0 S1 ; Enable HTTP
                              M586 P1 S0 ; Disable FTP
                              M586 P2 S0 ; Disable Telnet

                              ; Custom settings are not configured

                              ; Miscellaneous
                              ;M501 ; Load saved parameters from non-volatile memory
                              T0 ; Select first tool

                              1 Reply Last reply Reply Quote 0
                              • stellatorundefined
                                stellator
                                last edited by

                                ; bed.g
                                ; called to perform automatic bed compensation via G32
                                ; M584 X0 Y1 Z5:6:7:8 E3 ; Apply custom drive mapping Drives 5,6,7,8 are driven as one
                                ; generated by RepRapFirmware Configuration Tool on Wed Nov 08 2017 23:58:37 GMT+0100

                                ; Clear any bed transform
                                M561

                                ; Home all axes
                                G28

                                ; Probe the bed at 4 points and autolevel all four afterwards
                                G30 P0 X10 Y10 H0 Z-99999 ; probe near motor 5
                                G30 P1 X220 Y10 H0 Z-99999 ; probe near motor 6
                                G30 P2 X220 Y300 H0 Z-99999 ; probe near motor 7
                                G30 P3 X10 Y300 H0 Z-99999 S4 ; probe near motor 8 and correct all four z positions

                                1 Reply Last reply Reply Quote 0
                                • dc42undefined
                                  dc42 administrators
                                  last edited by

                                  That should work if you press the bed compensation button before each print. But I recommend you use mesh bed compensation instead of 4-point compensation. See https://duet3d.com/wiki/Using_mesh_bed_compensation.

                                  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

                                  1 Reply Last reply Reply Quote 0
                                  • stellatorundefined
                                    stellator
                                    last edited by

                                    Hi, thanks for the fast reply but Iam looking for auto levelling/calibration before and even without printing. I thought there was already a command for that like G30/32 or G29 which does it but i always get the same heightmap in the end with no corretions made, you see?

                                    First run
                                    [/file:///C:/Users/Hoschie/Desktop/1st.jpg]
                                    Second run
                                    [/file:///C:/Users/Hoschie/Desktop/2nd.jpg]
                                    Gcode Console:

                                    12:54:24
                                    G29
                                    12 points probed, mean error 0.014, deviation 0.024
                                    Height map saved to file heightmap.csv
                                    12:53:47
                                    G32
                                    Leadscrew adjustments made: 0.829 0.834 0.832 0.827, points used 4, deviation before 0.856 after 0.000
                                    12:50:12
                                    G29
                                    12 points probed, mean error 0.015, deviation 0.025
                                    Height map saved to file heightmap.csv
                                    12:49:34
                                    G32
                                    Leadscrew adjustments made: 0.829 0.824 0.822 0.827, points used 4, deviation before 0.854 after 0.000

                                    1 Reply Last reply Reply Quote 0
                                    • stellatorundefined
                                      stellator
                                      last edited by

                                      Doh - unfortuntately I am obviously so bad in text based code that i cant even upload an image 😉

                                      1 Reply Last reply Reply Quote 0
                                      • stellatorundefined
                                        stellator
                                        last edited by

                                        Well its still saying it did do leadscrew adjustments but it doesnt..
                                        Plus i do not seem to be able to individually define mesh grid points instead of a pattern with a predefined spacing. If i would like to scan and display the heightmap with only 4 points for bed levelling before compensation during print, that it not possible if a have a non symmertric bed (like 200x300 as i do).

                                        thx

                                        1 Reply Last reply Reply Quote 0
                                        • dc42undefined
                                          dc42 administrators
                                          last edited by

                                          1. Your bed probing for leadscrew adjustment and your G29 bed probing appear to differ in their idea of where Z=0 is by about 0.8mm. Are you homing during the sequence at all, e.g. in the bed.g file ?

                                          2. What happens if you run leadscrew adjustment multiple times, without homing or doing G29 in between? Does the adjustment converts to near zero?

                                          3. The M557 mesh bed compensation allows you to specify different X and Y spacings for the grid. So you can do 4 point probing on a rectangular bed.

                                          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

                                          1 Reply Last reply Reply Quote 0
                                          • stellatorundefined
                                            stellator
                                            last edited by

                                            Hi, M557 worked, using two different s parameters for each axis is doing the trick - thanks!

                                            I dont get leadscrew adjustments yet, with or without homing. It still says leadscrew adjustments are made when they are not - e.g. leadscrew 4 at motor 8 offset is constantly 50 µm off and not being adjusted automatically, when manualy adjustment is working by splitting the z motor definition to individual ones using M584 (meaning that i can move individual z motors so they are not under defined when only defining one z motor in config.g, correct?)

                                            thx

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