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

    CNC Setup Duet 3D 6XD Controller Board

    Scheduled Pinned Locked Moved Solved
    CNC
    4
    16
    709
    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.
    • fcwiltundefined
      fcwilt @moe.adams9093
      last edited by

      @moe-adams9093

      One thing to remember about config.g on startup. If there is an error it tends to stop running config.g at the point of the error without telling you so.

      So it may well be that the reference to address 121 when there is no connection to 121 is causing the error and nothing further gets executed.

      Ask me how I know this. 😊

      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

      moe.adams9093undefined droftartsundefined 2 Replies Last reply Reply Quote 0
      • moe.adams9093undefined
        moe.adams9093 @fcwilt
        last edited by

        @fcwilt I will try to comment out this line so the system won’t recognize it and I will update accordingly. I’m going to ask how do you know about this ?.

        Thank you

        fcwiltundefined 1 Reply Last reply Reply Quote 0
        • fcwiltundefined
          fcwilt @moe.adams9093
          last edited by

          @moe-adams9093 said in CNC Setup Duet 3D 6XD Controller Board:

          @fcwilt I will try to comment out this line so the system won’t recognize it and I will update accordingly. I’m going to ask how do you know about this ?.

          Thank you

          My system had been working fine for quite a while, but then after a recent edit of config.g and reset of the system the Z probe no longer worked. I tracked it down to an error that preceded the lines that configured the Z probe.

          I finally remembered that errors in config.g at "boot-up" were silent (bad idea in my opinion), so I executed config.g from the DWC console and then it reported what line had the error which was easy to spot and fix.

          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
          • droftartsundefined
            droftarts administrators @moe.adams9093
            last edited by

            @moe-adams9093
            I think this is a timing problem. Usually external stepper drivers can’t run as fast as internal stepper drivers, so we need to set the timing for the step and direction pulses. This is done with the M569 T parameter :

            Taa:bb:cc:dd (firmware 1.21 and later) Minimum driver step pulse width, step pulse interval, direction setup time and direction hold time, in microseconds

            I can’t find a data sheet for your stepper drivers that says what timing to use, except that 200MHz is the fastest step rate per second, which is 5us between steps. So try changing the M569 P0.0 S1 line in config.g to:

            M569 P0.0 S1 T5:5:10:10        ; physical drive 0.0 goes forwards
            

            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

            1 Reply Last reply Reply Quote 0
            • droftartsundefined
              droftarts administrators @fcwilt
              last edited by

              @fcwilt said in CNC Setup Duet 3D 6XD Controller Board:

              If there is an error it tends to stop running config.g at the point of the error without telling you so.

              No, it doesn’t. Config.g can have multiple errors, and still run to the end. If you can show an example where it breaks the running, please start a new thread showing this so we can track down why it’s happening.

              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

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

                @droftarts said in CNC Setup Duet 3D 6XD Controller Board:

                No, it doesn’t. Config.g can have multiple errors, and still run to the end. If you can show an example where it breaks the running, please start a new thread showing this so we can track down why it’s happening.

                It most certainly appeared to stop executing for me.

                I concluded that nothing past the point of the error had been executed based on the fact that the configuration of the Z probe, triggers, tools, etc. which all followed the point of the error, had not been configured.

                I will try to come up with a simple example of such a config file. Mine is quite complex, using lots of M98 calls to other code.

                I remember what the error was in my config file - so I can put that error back and run some more tests.

                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

                droftartsundefined 1 Reply Last reply Reply Quote 0
                • droftartsundefined
                  droftarts administrators @fcwilt
                  last edited by

                  @fcwilt perhaps missing a quote mark, so everything following until the next quote mark counts as a string, could cause chunks of config.g not to work, I suppose. Please start a new thread if you find an example.

                  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

                  1 Reply Last reply Reply Quote 0
                  • moe.adams9093undefined
                    moe.adams9093
                    last edited by moe.adams9093

                    I have done some tests first I removed the 1 HCL board CAN address from the config.g file the error is gone now, but still no movement after that I added timing input as @droftarts requested still no luck.

                    I still do get some errors on of them it says

                    Error in macro line 27 while starting up: in file macro line 27 column 27: M92: array too long, max length = 0
                    

                    Here's my new M122

                    m122
                    === Diagnostics ===
                    RepRapFirmware for Duet 3 MB6XD version 3.5.0-rc.1 (2023-08-31 16:21:04) running on Duet 3 MB6XD v1.0 (standalone mode)
                    Board ID: 08DLM-956DA-M2NS4-6JKD6-3S86T-1B32S
                    Used output buffers: 1 of 40 (19 max)
                    Error in macro line 27 while starting up: in file macro line 27 column 27: M92: array too long, max length = 0
                    === RTOS ===
                    Static ram: 153300
                    Dynamic ram: 117888 of which 248 recycled
                    Never used RAM 71556, free system stack 193 words
                    Tasks: NETWORK(1,ready,34.4%,182) ETHERNET(5,nWait,0.1%,325) HEAT(3,nWait,0.0%,370) Move(4,nWait,0.0%,255) CanReceiv(6,nWait,0.0%,941) CanSender(5,nWait,0.0%,335) CanClock(7,delaying,0.0%,344) MAIN(1,running,65.4%,444) IDLE(0,ready,0.0%,30), total 100.0%
                    Owned mutexes:
                    === Platform ===
                    Last reset 00:03:32 ago, cause: software
                    Last software reset at 2023-12-07 19:59, reason: User, Gcodes spinning, available RAM 71700, slot 1
                    Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a
                    Error status: 0x00
                    Aux0 errors 0,0,0
                    MCU temperature: min 33.9, current 34.5, max 34.8
                    Supply voltage: min 26.7, current 26.8, max 26.8, under voltage events: 0, over voltage events: 0, power good: yes
                    12V rail voltage: min 12.0, current 12.1, max 12.2, under voltage events: 0
                    Heap OK, handles allocated/used 99/2, heap memory allocated/used/recyclable 2048/80/0, gc cycles 0
                    Events: 0 queued, 0 completed
                    Driver 0: ok
                    Driver 1: ok
                    Driver 2: ok
                    Driver 3: ok
                    Driver 4: ok
                    Driver 5: ok
                    Date/time: 2023-12-07 20:03:03
                    Slowest loop: 4.30ms; fastest: 0.07ms
                    === Storage ===
                    Free file entries: 20
                    SD card 0 detected, interface speed: 25.0MBytes/sec
                    SD card longest read time 3.5ms, write time 0.0ms, max retries 0
                    === Move ===
                    DMs created 125, segments created 6, maxWait 80472ms, bed compensation in use: none, height map offset 0.000, ebfmin 0.00, ebfmax 0.00
                    no step interrupt scheduled
                    Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0
                    === DDARing 0 ===
                    Scheduled moves 25, completed 25, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 15], CDDA state -1
                    === DDARing 1 ===
                    Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                    === Heat ===
                    Bed heaters -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
                    === GCodes ===
                    Movement locks held by null, null
                    HTTP is idle in state(s) 0
                    Telnet is idle in state(s) 0
                    File is idle in state(s) 0
                    USB is idle in state(s) 0
                    Aux is idle in state(s) 0
                    Trigger is idle in state(s) 0
                    Queue is idle in state(s) 0
                    LCD is idle in state(s) 0
                    SBC is idle in state(s) 0
                    Daemon is idle in state(s) 0
                    Aux2 is idle in state(s) 0
                    Autopause is idle in state(s) 0
                    File2 is idle in state(s) 0
                    Queue2 is idle in state(s) 0
                    Q0 segments left 0, axes/extruders owned 0x0000006
                    Code queue 0 is empty
                    Q1 segments left 0, axes/extruders owned 0x0000000
                    Code queue 1 is empty
                    === CAN ===
                    Messages queued 1061, received 0, lost 0, boc 0
                    Longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 50 (min 50), ts 1061/0/0
                    Tx timeouts 0,0,1060,0,0,0 last cancelled message type 30 dest 127
                    === Network ===
                    Slowest loop: 1.54ms; fastest: 0.03ms
                    Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
                    HTTP sessions: 1 of 8
                    = Ethernet =
                    Interface state: active
                    Error counts: 0 0 0 0 0 0
                    Socket states: 5 2 2 2 2 0 0 0
                    === Multicast handler ===
                    Responder is inactive, messages received 0, responses 0
                    

                    in side M122 file under the Movement Locks

                    Movement locks held by null, null
                    HTTP is idle in state(s) 0
                    Telnet is idle in state(s) 0
                    File is idle in state(s) 0
                    USB is idle in state(s) 0
                    Aux is idle in state(s) 0
                    Trigger is idle in state(s) 0
                    Queue is idle in state(s) 0
                    LCD is idle in state(s) 0
                    SBC is idle in state(s) 0
                    Daemon is idle in state(s) 0
                    Aux2 is idle in state(s) 0
                    Autopause is idle in state(s) 0
                    File2 is idle in state(s) 0
                    Queue2 is idle in state(s) 0
                    Q0 segments left 0, axes/extruders owned 0x0000006
                    Code queue 0 is empty
                    Q1 segments left 0, axes/extruders owned 0x0000000
                    Code queue 1 is empty
                    

                    I don't know if there's an issue under this section causing this problem

                    I ran M121 and I get this error

                    m121
                    Error: Pop(): stack underflow on HTTP
                    

                    Also, here's my most recent config.g file

                    ; Configuration file for Duet 3 MB 6XD (firmware version 3.3)
                    ; executed by the firmware on start-up
                    ;
                    ; generated by RepRapFirmware Configuration Tool v3.3.16 on Sun Dec 03 2023 20:33:20 GMT-0600 (Central Standard Time)
                    
                    ; General preferences
                    M575 P1 S1 B57600                       ; enable support for PanelDue
                    G90                                     ; send absolute coordinates...
                    M83                                     ; ...but relative extruder moves
                    M550 P"Makinta-R1500"                   ; set printer name
                    
                    ; Wait a moment for the CAN expansion boards to start
                    G4 S2
                    
                    ; Network
                    M552 P0.0.0.0 S1                        ; enable network and acquire dynamic address via DHCP
                    M586 P0 S1                              ; enable HTTP
                    M586 P1 S0                              ; disable FTP
                    M586 P2 S0                              ; disable Telnet
                    
                    ; Drives
                    
                    M569 P0.0 S1 T5:5:10:10 ; physical drive 0.0 goes forwards
                    M569 P0.2 S1                            ; physical drive 0.2 goes forwards
                    M569 P0.3 S1                            ; physical drive 0.3 goes forwards
                    M584  Y0.0 Z0.2 X0.3                ; set drive mapping
                    M92 X80.00 Y80.00 Z80.00 E420.00        ; set steps per mm
                    M566 X900.00 Y900.00 Z60.00 E120.00     ; set maximum instantaneous speed changes (mm/min)
                    M203 X6000.00 Y6000.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 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 X1500 Y1500 Z150 S0                ; set axis maxima
                    
                    ; Endstops
                    
                    M574 Y1 S1 P"io0.in"                    ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin io0.in
                    M574 Z1 S1 P"io1.in"                    ; configure switch-type (e.g. microswitch) endstop for low end on Z via pin io1.in
                    
                    ; Z-Probe
                    M558 P0 H5 F120 T12000                  ; disable Z probe but set dive height, probe speed and travel speed
                    M557 X15:215 Y15:195 S20                ; define mesh grid
                    
                    ; Heaters
                    M140 H-1                                ; disable heated bed (overrides default heater mapping)
                    
                    ; Fans
                    M950 F0 C"out3" Q500                    ; create fan 0 on pin out3 and set its frequency
                    M106 P0 S0 H-1                          ; set fan 0 value. Thermostatic control is turned off
                    M950 F1 C"out4" Q500                    ; create fan 1 on pin out4 and set its frequency
                    M106 P1 S1 H T45                        ; set fan 1 value. Thermostatic control is turned on
                    
                    ; Tools
                    M563 P0 D0 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
                    

                    here's the current driver status

                    12/7/2023, 8:21:18 PM	M569 P0.0
                    Drive 0 runs forwards, active high enable, timing 5.0:5.0:10.0:10.0us (actual 5.0:5.7:10.7:11.0us)
                    

                    M98

                    ~~M98 P"config.g"
                    HTTP is enabled on port 80
                    FTP is disabled
                    TELNET is disabled
                    Error: bad drive number
                    Error: in file macro line 58: G10: Invalid tool number
                    Error: in file macro line 59: G10: Invalid tool number~~
                    

                    thank you

                    fcwiltundefined 1 Reply Last reply Reply Quote 0
                    • fcwiltundefined
                      fcwilt @moe.adams9093
                      last edited by fcwilt

                      @moe-adams9093

                      Let's start with the easy one: M121 will "pop" the saved state of the machine but you need to do M120 first to save the state of the machine to have something to "pop".

                      The error mentioning M92 is very odd. It may be caused by referencing the E axis but you have no E drive in the M584.

                      That is the first thing I would do - remove the E in M92 and see if the error goes away.

                      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

                      moe.adams9093undefined 1 Reply Last reply Reply Quote 0
                      • moe.adams9093undefined
                        moe.adams9093 @fcwilt
                        last edited by

                        @fcwilt Thank you, for all your help.

                        I did figure it out I was using the old configurator tool for the 3.5 firmware, and I didn't know that Reprap has a new configurator tool after I did a new config setup the motors are working fine now these are just testing motors next step is going with the 1 HCL + Moons Nema 24 with the incremental encoder so hopefully that goes smooth.

                        fcwiltundefined dc42undefined droftartsundefined 3 Replies Last reply Reply Quote 1
                        • fcwiltundefined
                          fcwilt @moe.adams9093
                          last edited by

                          @moe-adams9093

                          I never used the config tools - I felt they just got in the way of learning all the bits and pieces I needed to know to really understand what was going on in the various files.

                          Very glad you got it working so far. Keep us informed of your progress.

                          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
                          • dc42undefined
                            dc42 administrators @moe.adams9093
                            last edited by

                            @moe-adams9093 thanks, I'll mark this as solved. Please start a new thread if you have other problems unrelated to this one.

                            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
                            • dc42undefined dc42 marked this topic as a question
                            • dc42undefined dc42 has marked this topic as solved
                            • droftartsundefined
                              droftarts administrators @moe.adams9093
                              last edited by droftarts

                              @moe-adams9093 can you post your current config.g?

                              Also, see https://docs.duet3d.com/en/User_manual/Machine_configuration/Configuration_CNC

                              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

                              1 Reply Last reply Reply Quote 0
                              • moe.adams9093undefined
                                moe.adams9093
                                last edited by

                                Sure, I do get some errors when I start up the duet controller I'm going to post some screenshots, as well as M122, M98, and Config.g.

                                Screen Shots.PNG

                                M122

                                12/9/2023, 1:46:27 PM	M122
                                === Diagnostics ===
                                RepRapFirmware for Duet 3 MB6XD version 3.5.0-rc.1 (2023-08-31 16:21:04) running on Duet 3 MB6XD v1.0 (standalone mode)
                                Board ID: 08DLM-956DA-M2NS4-6JKD6-3S86T-1B32S
                                Used output buffers: 1 of 40 (18 max)
                                Error in macro line 54 while starting up: exactly one of EFHJPSR must be given
                                === RTOS ===
                                Static ram: 153300
                                Dynamic ram: 117976 of which 0 recycled
                                Never used RAM 71860, free system stack 210 words
                                Tasks: NETWORK(1,ready,36.0%,182) ETHERNET(5,nWait,0.1%,317) HEAT(3,nWait,0.0%,340) Move(4,nWait,0.0%,339) CanReceiv(6,nWait,0.0%,941) CanSender(5,nWait,0.0%,335) CanClock(7,delaying,0.0%,344) MAIN(1,running,63.9%,162) IDLE(0,ready,0.0%,30), total 100.0%
                                Owned mutexes:
                                === Platform ===
                                Last reset 00:18:19 ago, cause: power up
                                Last software reset at 2023-12-08 02:09, reason: User, Gcodes spinning, available RAM 71756, slot 1
                                Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a
                                Error status: 0x00
                                MCU temperature: min 16.9, current 35.3, max 35.4
                                Supply voltage: min 26.7, current 26.8, max 26.8, under voltage events: 0, over voltage events: 0, power good: yes
                                12V rail voltage: min 12.0, current 12.1, max 12.2, under voltage events: 0
                                Heap OK, handles allocated/used 99/2, heap memory allocated/used/recyclable 2048/48/0, gc cycles 0
                                Events: 0 queued, 0 completed
                                Driver 0: ok
                                Driver 1: ok
                                Driver 2: ok
                                Driver 3: ok
                                Driver 4: ok
                                Driver 5: ok
                                Date/time: 2023-12-09 13:46:25
                                Slowest loop: 4.30ms; fastest: 0.07ms
                                === Storage ===
                                Free file entries: 20
                                SD card 0 detected, interface speed: 25.0MBytes/sec
                                SD card longest read time 3.5ms, write time 0.0ms, max retries 0
                                === Move ===
                                DMs created 125, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, ebfmin 0.00, ebfmax 0.00
                                no step interrupt scheduled
                                Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0
                                === DDARing 0 ===
                                Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                                === DDARing 1 ===
                                Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                                === Heat ===
                                Bed heaters 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
                                === GCodes ===
                                Movement locks held by null, null
                                HTTP is idle in state(s) 0
                                Telnet is idle in state(s) 0
                                File is idle in state(s) 0
                                USB is idle in state(s) 0
                                Aux is idle in state(s) 0
                                Trigger is idle in state(s) 0
                                Queue is idle in state(s) 0
                                LCD is idle in state(s) 0
                                SBC is idle in state(s) 0
                                Daemon is idle in state(s) 0
                                Aux2 is idle in state(s) 0
                                Autopause is idle in state(s) 0
                                File2 is idle in state(s) 0
                                Queue2 is idle in state(s) 0
                                Q0 segments left 0, axes/extruders owned 0x0000000
                                Code queue 0 is empty
                                Q1 segments left 0, axes/extruders owned 0x0000000
                                Code queue 1 is empty
                                === CAN ===
                                Messages queued 5499, received 0, lost 0, boc 0
                                Longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 50 (min 50), ts 5499/0/0
                                Tx timeouts 0,0,5498,0,0,0 last cancelled message type 30 dest 127
                                === Network ===
                                Slowest loop: 3.95ms; fastest: 0.03ms
                                Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
                                HTTP sessions: 1 of 8
                                = Ethernet =
                                Interface state: active
                                Error counts: 0 0 0 1 0 0
                                Socket states: 5 2 2 2 2 0 0 0
                                === Multicast handler ===
                                Responder is inactive, messages received 0, responses 0
                                

                                M98 P"config.g"

                                12/9/2023, 1:48:12 PM	M98 P"config.g"
                                HTTP is enabled on port 80
                                Warning: Sensor number 0 has not been defined
                                Warning: Heater 0 predicted maximum temperature at full power is 321°C
                                Warning: Sensor number 1 has not been defined
                                Error: exactly one of EFHJPSR must be given
                                

                                Config.g

                                ; Configuration file for RepRapFirmware on Duet 3 Main Board 6XD
                                ; executed by the firmware on start-up
                                ;
                                ; generated by RepRapFirmware Configuration Tool v3.5.0-rc.1 on Thu Dec 07 2023 21:03:57 GMT-0600 (Central Standard Time)
                                
                                ; General
                                M550 P"MAKINTA-R1500"                   ; set hostname
                                
                                ; Network
                                M552 P0.0.0.0 S1                        ; configure Ethernet adapter
                                M586 P0 S1                              ; configure HTTP
                                
                                ; Motor Idle Current Reduction
                                M906 I30                                ; set motor current idle factor
                                M84 S30                                 ; set motor current idle timeout
                                
                                ; External Drivers
                                M569 P0.0 S1 R0 T5:5:10:0               ; driver 0.0 goes forwards and requires an active-low enable signal (X axis)
                                M569 P0.1 S1 R0 T5:5:10:0               ; driver 0.1 goes forwards and requires an active-low enable signal (Y axis)
                                M569 P0.2 S1 R0 T5:5:10:0               ; driver 0.2 goes forwards and requires an active-low enable signal (Y axis)
                                M569 P0.3 S1 R0 T5:5:10:0               ; driver 0.3 goes forwards and requires an active-low enable signal (Z axis)
                                
                                ; Kinematics
                                M669 K0                                 ; configure Cartesian kinematics
                                
                                ; Axes
                                M584 X0.0 Y0.1:0.2 Z0.3                 ; set axis mapping
                                M350 X16 Y16 Z16 I0                     ; configure microstepping without interpolation
                                M92 X20 Y20 Z20                         ; configure steps per mm
                                M208 S1 X0 Y0 Z0                        ; set axis minima
                                M208 S0 X1500 Y1500 Z150                ; set axis maxima
                                M566 X5000 Y5000 Z5000                  ; set maximum instantaneous speed changes (mm/min)
                                M203 X10000 Y10000 Z10000                ; set maximum speeds (mm/min)
                                M201 X1000 Y1000 Z1000                  ; set accelerations (mm/s^2)
                                
                                ; Endstops
                                M574 X1 P"!io1.in" S1                   ; configure X axis endstop
                                M574 Y1 P"!io2.in+!io3.in" S1           ; configure Y axis endstop
                                M574 Z1 P"!io4.in" S1                   ; configure Z axis endstop
                                
                                
                                ; Heaters
                                M950 H0 C"out0" T0                      ; create heater #0
                                M143 H0 P0 T0 C0 S140 A0                ; configure heater monitor #0 for heater #0
                                M307 H0 R2.43 D5.5 E1.35 K0.56 B1       ; configure model of heater #0
                                M950 H1 C"out1" T1                      ; create heater #1
                                M143 H1 P0 T1 C0 S285 A0                ; configure heater monitor #0 for heater #1
                                M307 H1 R2.43 D5.5 E1.35 K0.56 B0       ; configure model of heater #1
                                
                                ; Heated beds
                                M140 P0 H0                              ; configure heated bed #0
                                
                                ; Spindles
                                M950 C"io4.out+pson+led" Q500 L60:10000 ; configure spindle #0
                                
                                ; Miscellaneous
                                M453                                    ; select CNC mode
                                

                                please let me know how can I fix those errors.

                                Thank you

                                droftartsundefined 1 Reply Last reply Reply Quote 0
                                • droftartsundefined
                                  droftarts administrators @moe.adams9093
                                  last edited by

                                  @moe-adams9093 said in CNC Setup Duet 3D 6XD Controller Board:

                                  For this error in M122 (and onscreen in DWC, and in the response to running config.g) Error in macro line 54 while starting up: exactly one of EFHJPSR must be given it relates to this line:

                                  M950 C"io4.out+pson+led" Q500 L60:10000 ; configure spindle #0

                                  See https://docs.duet3d.com/en/User_manual/Reference/Gcodes#configuration-examples-and-notes

                                  You need an R parameter to denote this output as a spindle, ie

                                  M950 R0 C"io4.out+pson+led" Q500 L60:10000 ; configure spindle #0
                                  

                                  I'm not sure these are the best pins for laser control. io4.out and pson are 3.3V signalling, while led is 5V.

                                  For the DWC incompatibility error, check what version of RRF and DWC you are using in the Setting > General and Settings > Machine specific menu options. They should match.

                                  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

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