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

    Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards

    Scheduled Pinned Locked Moved
    Config Tool
    6
    59
    2.7k
    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.
    • developeralgo222undefined
      developeralgo222 @developeralgo222
      last edited by

      @developeralgo222 @dc42 @droftarts @fcwilt @o_lampe

      i really need help on this configuration setup for a PNP machine. i am new to Duet 3 board but it was highly recommended. Not sure is there is any true support for Duet 3 6XD and 3HC Products.

      There is a ton of documentation and help on how to setup 3D printers but almost non-existent support or help on how to correctly setup PnP machine using Duet 6XD and 3HC boards apart from very few users in the forum who are trying similar setups.

      This is very frustrating for Duet board users

      fcwiltundefined droftartsundefined 2 Replies Last reply Reply Quote 0
      • fcwiltundefined
        fcwilt @developeralgo222
        last edited by

        @developeralgo222

        Well the 6HC and the 6XD are the same board except for how they connect to steppers.

        The 6HC connect directly to steppers using standard A+ A- B+ B- high current connections.

        The 6XD is designed to connect to standard external stepper drivers and servo drivers using STEP DIR ENA & ERR connections.

        The 3HC provides the same kind of connections to steppers that the 6HC does.

        You can easily use two 6xx boards in the same system as long as one board is at the start of the CAN bus and the other at the end, as the boards only have one CAN connector and built-in terminators, so they are not designed for easy daisy-chaining.

        I assume you have read all of this:

        PnP using Duet hardware

        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 @developeralgo222
          last edited by

          @developeralgo222 please post your homex.g and homey.g. Do all the other axes home correctly? If you run homex.g on its own, does the axis move at all? Is there any more messages in the console while or after homex.g has run?

          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

          developeralgo222undefined 1 Reply Last reply Reply Quote 0
          • developeralgo222undefined
            developeralgo222 @droftarts
            last edited by developeralgo222

            @droftarts said in Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards:

            @developeralgo222 please post your homex.g and homey.g. Do all the other axes home correctly? If you run homex.g on its own, does the axis move at all? Is there any more messages in the console while or after homex.g has run?

            Ian

            • X and Y Axis do not home at all

            • Z-Axes ( Z, U, V, W, A, B ) homes but not correctly

            • Only Rotational Axes ( C , D, 'A, 'B, 'C, 'D ) = ( C, D, a, b, c, d) home correctly

            Below are my current homex.g and homey.g

            homex.g

            ; homex.g
            ; called to home the X axis
            ;
            ; generated by RepRapFirmware Configuration Tool v3.3.16 on Tue Dec 05 2023 09:51:46 GMT-0500 (Eastern Standard Time)
            G91              ; relative positioning
            G1 H2 Z50 F6000     ; Rotate Nema 17 Motor 1 by 50 Degrees to move up Z relative to current position
            G1 H2 U-100 F6000   ; Rotate Nema 17 Motor 1 by -100 Degrees to move up U relative to current position
            G1 H2 V50 F6000     ; Rotate Nema 17 Motor 2 by 50 Degrees to move up V relative to current position
            G1 H2 W-100 F6000   ; Rotate Nema 17 Motor 2 by -100 Degrees to move up W relative to current position
            G1 H2 A50 F6000     ; Rotate Nema 17 Motor 3 by 50 Degrees to move up A relative to current position
            G1 H2 B-100 F6000   ; Rotate Nema 17 Motor 3 by -100 Degrees to move up B relative to current position
            G1 H1 X235 F1800    ; move quickly to X axis endstop and stop there (first pass)
            G1 H2 X-5 F6000     ; go back a few mm
            G1 H1 X235 F360     ; move slowly to X axis endstop once more (second pass)
            G1 H2 Z-50 F6000    ; Rotate Nema 17 Motor 1 by -50 Degrees to move down  Z again
            G1 H2 U100 F6000    ; Rotate Nema 17 Motor 1 by 100 Degrees to move down U again
            G1 H2 V-50 F6000    ; Rotate Nema 17 Motor 2 by -50 Degrees to move down V again
            G1 H2 W100 F6000    ; Rotate Nema 17 Motor 2 by 100 Degrees to move down W again
            G1 H2 A-50 F6000    ; Rotate Nema 17 Motor 3 by -50 Degrees to move down A again
            G1 H2 B100 F6000    ; Rotate Nema 17 Motor 3 by 100 Degrees to move down B again
            G90              ; absolute positioning
            

            homey.g

            ; homey.g
            ; called to home the Y axis
            ;
            ; generated by RepRapFirmware Configuration Tool v3.3.16 on Tue Dec 05 2023 09:51:46 GMT-0500 (Eastern Standard Time)
            G91              ; relative positioning
            G1 H2 Z50 F6000     ; Rotate Nema 17 Motor 1 by 50 Degrees to move up Z relative to current position
            G1 H2 U-100 F6000   ; Rotate Nema 17 Motor 1 by -100 Degrees to move up U relative to current position
            G1 H2 V50 F6000     ; Rotate Nema 17 Motor 2 by 50 Degrees to move up V relative to current position
            G1 H2 W-100 F6000   ; Rotate Nema 17 Motor 2 by -100 Degrees to move up W relative to current position
            G1 H2 A50 F6000     ; Rotate Nema 17 Motor 3 by 50 Degrees to move up A relative to current position
            G1 H2 B-100 F6000   ; Rotate Nema 17 Motor 3 by -100 Degrees to move up B relative to current position
            G1 H1 Y215 F1800 ; move quickly to Y axis endstop and stop there (first pass)
            G1 H2 Y-5 F6000  ; go back a few mm
            G1 H1 Y215 F360  ; move slowly to Y axis endstop once more (second pass)
            G1 H2 Z-50 F6000    ; Rotate Nema 17 Motor 1 by -50 Degrees to move down  Z again
            G1 H2 U100 F6000    ; Rotate Nema 17 Motor 1 by 100 Degrees to move down U again
            G1 H2 V-50 F6000    ; Rotate Nema 17 Motor 2 by -50 Degrees to move down V again
            G1 H2 W100 F6000    ; Rotate Nema 17 Motor 2 by 100 Degrees to move down W again
            G1 H2 A-50 F6000    ; Rotate Nema 17 Motor 3 by -50 Degrees to move down A again
            G1 H2 B100 F6000    ; Rotate Nema 17 Motor 3 by 100 Degrees to move down B again
            G90              ; absolute positioning
            
            droftartsundefined 2 Replies Last reply Reply Quote 0
            • droftartsundefined
              droftarts administrators @developeralgo222
              last edited by droftarts

              @developeralgo222 Your X and Y endstops are set as axis low end (ie where X=0) endstops:

              M574 X1 S1 P"!io0.in"               ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io0.in
              M574 Y1 S1 P"!io1.in"               ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin io1.in
              

              Whether the endstop is at the minimum or maximum end is defined by the number after the axis label, ie X or Y, in M574

              Xnnn Position of X endstop: 0 = none, 1 = low end, 2 = high end.

              However, your homing script tries to home the X axis to the high end (Y is the same):

              G1 H1 X235 F1800    ; move quickly to X axis endstop and stop there (first pass)
              G1 H2 X-5 F6000     ; go back a few mm
              G1 H1 X235 F360     ; move slowly to X axis endstop once more (second pass)
              

              Where is each endstop actually located, low or high end? Check the other linear axes for the same issue.

              Edit: when the endstop is triggered, the axis position is set to the low or high number (depending on whether it's a low or high endstop) in the M208 commands:

              ; Axis Limits
              M208 X0 Y0 Z-50 U-50 V-50 W-50 A-50 B-50  C-180 D-180 'A-180 'B-180 'C-180 'D-180 S1	; Set axis minima
              M208 X450 Y500 Z50 U50 V50 W50 A50 B50  C180 D180 'A180 'B180 'C180 'D180 S0	        ; Set axis maxima
              

              Edit 2: You also need to move the axis far enough to actually trigger the endstop. Your X and Y axis moves are X235 and Y215, but the axis length is X450 and Y500.
              Also, check you motors are actually going the way you expect. The origin (X0 Y0) usually in the front left corner, a +X move should move to the right, a +Y move should move the tool towards the back, relative to the 'bed'. If you have a moving bed (which I don't think you do), the bed would move forward. If the axis moving the wrong way, change it with the M569 S parameter. All yours are S1; some may need to be S0, to change the direction.

              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 @developeralgo222
                last edited by

                @developeralgo222 said in Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards:

                Z-Axes ( Z, U, V, W, A, B ) homes but not correctly

                Regarding your setup of the 6 nozzles, you say they are set up as:

                Nozzle Pair, Shared Z Axis, Cam
                A nozzle pair share a Z axis motor. The two nozzles are pushed down by a rotational cam, pulled up with a spring

                Is this how they are actually set up? I would think this means you only need 3 Z axes, and a way to actuate the cam; this is usually done by going to the end of the axis and hitting a bump stop that flips the cam. Does yours do something different? With the option you have selected, the gcode openPNP produces likely only contains commands for 3 Z axes.

                @developeralgo222 said in Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards:

                i really need help on this configuration setup for a PNP machine. i am new to Duet 3 board but it was highly recommended. Not sure is there is any true support for Duet 3 6XD and 3HC Products.
                There is a ton of documentation and help on how to setup 3D printers but almost non-existent support or help on how to correctly setup PnP machine using Duet 6XD and 3HC boards apart from very few users in the forum who are trying similar setups.
                This is very frustrating for Duet board users

                The forum is the way we offer support; you bought Duet hardware, not a support contract. You are building a very complicated machine, which you haven't fully described (position of endstops, how the nozzles are activated/switched). You are on a learning curve to implement this with Duet and RRF, and you are jumping in at the deep end. It takes us time to go through your posts, to understand the layout of your machine, and what you are trying to achieve. OpenPNP users are a small fraction of our users, and we don't have an OpenPNP test setup to be able to try out the options, just like we don't have every kind of 3D printer, or CNC machine. For some areas, you would be better served by asking on the OpenPNP forums/Discord/wherever for advice. So, please, be patient, we're learning as well.

                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

                developeralgo222undefined 1 Reply Last reply Reply Quote 1
                • developeralgo222undefined
                  developeralgo222 @droftarts
                  last edited by

                  @droftarts said in Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards:

                  Is this how they are actually set up? I would think this means you only need 3 Z axes, and a way to actuate the cam; this is usually done by going to the end of the axis and hitting a bump stop that flips the cam. Does yours do something different? With the option you have selected, the gcode openPNP produces likely only contains commands for 3 Z axes.

                  Yes that's how it's setup. On Each each CAM pair there is an end stop on each axis (2 Nozzles , 2 Endstops on the shared Z-axis )

                  dc42undefined developeralgo222undefined 2 Replies Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators @developeralgo222
                    last edited by dc42

                    @developeralgo222 thanks. Please let is know what issues remain when you have corrected the issues identified by Ian 3 posts up from here.

                    You may find https://docs.duet3d.com/en/User_manual/Machine_configuration/Configuration_cartesian useful because it describes how config.g should be set up to control the axis motors and how the homing files should be set up.

                    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

                    developeralgo222undefined 1 Reply Last reply Reply Quote 0
                    • developeralgo222undefined
                      developeralgo222 @developeralgo222
                      last edited by developeralgo222

                      @developeralgo222

                      Here is an illustration to capture the PnP machine build so that anyone willing to help can visualize my build

                      JaBIT_Design_Duet_6XD.png

                      1 Reply Last reply Reply Quote 0
                      • developeralgo222undefined
                        developeralgo222 @dc42
                        last edited by developeralgo222

                        @dc42 Is there anyone who can work with me to come up with a working configuration for this PnP Machine. It will also help those who want to take the dive with Duet 3 6XD, 6HC and expansion boards in building PnP Machines to at least have sample config.g and homeall.g that they can use and play around with. I will buy him/her coffee or beer for a week !!!!!

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

                          @developeralgo222 please read the page I linked to in my previous post and the advice from Ian. That should give you enough information to get X and Y homing properly. Further advice:

                          1. Test motor movement like this:
                          • Send G91 to put the machine into relative movement mode
                          • Use G1 H2 commands to command individual motors regardless of their homed status. For example, G1 H2 X10 should move the X axis by +10mm, and G1 H2 X-10 should move it by -10mm.
                          1. Read the endstop states, either by using M119, or in Duet Web Control start the Object Model Browser and expand sensors/endstops. Check that the state changes as expected when you operate the endstop.

                          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

                          developeralgo222undefined 1 Reply Last reply Reply Quote 0
                          • developeralgo222undefined
                            developeralgo222 @dc42
                            last edited by developeralgo222

                            @dc42
                            In trying to troubleshoot the homing Failure for X and Y axis, I noticed that when NEMA 34 Closed Loop Motors ( 86HSE8N-BC38 8.0N.m ) with External Driver (HSS86) are energized(48V Power is applied ) it locks, as it should, but does not move when i try to home it even after changes . Without Power applied i can move it manually and moves fine as expected

                            i have double checked all Wiring from Motor <---> Driver <--> Duet 3 6XD and seems correct as expected, No error light on the Driver or Duet 6XD

                            • I am thinking that one of Motor Power (A+, A-, B+, B-) internal wires might be crossed or swapped or

                            • PSU Output supply 48V DC @ 12.5A Max . is this an undervoltage issue ?

                            Looking at the Datasheets of both the Driver and Closed Loop Motor, it seems to suggest that the recommended DC is 60V while some documents say 48V . i am perplexed on this. Any one with an idea about this motors or drivers?

                            droftartsundefined dc42undefined 2 Replies Last reply Reply Quote 0
                            • droftartsundefined
                              droftarts administrators @developeralgo222
                              last edited by droftarts

                              @developeralgo222 have you ever got the X and Y axes moving? I notice you haven’t got a T parameter in your M569 command for X and Y:

                              M569 P0.0 S1 R1                  ; X-Axis physical drive 0.0 goes forwards on CAN ID = 0 - Duet 6XD Drive 0.0
                              M569 P0.1 S1 R1                  ; Y-Axis physical drive 0.1 goes forwards on CAN ID = 0 - Duet 6XD Drive 0.1
                              

                              T controls the timing of the step pulses:

                              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 haven’t ploughed through the drive manual, but try T5:5:10:10 eg
                              M569 P0.0 S1 R1 T5:5:10:10

                              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

                              developeralgo222undefined 1 Reply Last reply Reply Quote 1
                              • dc42undefined
                                dc42 administrators @developeralgo222
                                last edited by

                                @developeralgo222 the motor voltage is unlikely to be critical. Higher voltage allows movement at higher speeds before torque drops off.

                                Please provide a link to the datasheet of the motor driver, and show us how you have connected it to the 6XD.

                                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

                                developeralgo222undefined 1 Reply Last reply Reply Quote 0
                                • developeralgo222undefined
                                  developeralgo222 @dc42
                                  last edited by developeralgo222

                                  @dc42
                                  Here are the links to the Datasheets

                                  • Driver: HSS86 Closed Look Driver HSS86

                                  • Nema 34 8 N.m Closed Loop Motor
                                    86HSE8N-BC38 or this link 86HSE8N-BC38

                                  d1945a0e9632f07d725fd317427b4016.jpg

                                  As per the Datasheet wiring
                                  Wiring_NEMA34_asper_datasheet.png

                                  My Actual wiring of NEMA 34 Closed Loop(86HSE8N-BC38) + HSS86 Hybrid Servo Driver + Duet 3 6XD as per the datasheets
                                  Wiring_NEMA34_asper_datasheet.png
                                  IMG_0938.jpg
                                  IMG_0937.jpg

                                  1 Reply Last reply Reply Quote 0
                                  • developeralgo222undefined
                                    developeralgo222 @droftarts
                                    last edited by

                                    @droftarts said in Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards:

                                    M569 P0.0 S1 R1 T5:5:10:10

                                    I have not got X and Y to move, The Motor is energized fine, no errors on the driver but they don't move. No meaningful error on the Duet Web Control console. i have updated config.g and other files as per suggestions here from users but to no avail.

                                    sebkritikelundefined 1 Reply Last reply Reply Quote 0
                                    • sebkritikelundefined
                                      sebkritikel @developeralgo222
                                      last edited by sebkritikel

                                      @developeralgo222 I know several people are trying to help you (and I'll try to where I can as well), but can you do the following?

                                      1. Post your latest config.g file
                                      2. In the console type M98 P"config.g", and post what the results are.
                                      3. Can you please verify if you have tested X and Y motor movement like dc42 has described below---

                                      dc42 said in Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards:

                                      1. Test motor movement like this:
                                      • Send G91 to put the machine into relative movement mode
                                      • Use G1 H2 commands to command individual motors regardless of their homed status. For example, G1 H2 X10 should move the X axis by +10mm, and G1 H2 X-10 should move it by -10mm.
                                      1. Read the endstop states, either by using M119, or in Duet Web Control start the Object Model Browser and expand sensors/endstops. Check that the state changes as expected when you operate the endstop.

                                      --- and let us know what happens (nothing? error light on the HSS86 driver?)
                                      4. What do you have the microstep settings set to on the driver (with the SW3、SW4、SW5、SW6 switches)

                                      While we are trying to help you 'piece by piece', it is very helpful for us if you respond by answering all the questions previously asked - it helps us work out what could be going wrong. In addition, posting your updated config.g once you make changes is extremely important, as it helps us 'peer review' the changes that have been made. If we can't see the config.g file, we won't be 100% sure with whats going on.

                                      Large(ish?) IDEX - 6HC, 1HCL
                                      Stratasys Dimension 1200es to 6HC Conversion

                                      developeralgo222undefined 1 Reply Last reply Reply Quote 0
                                      • developeralgo222undefined
                                        developeralgo222 @sebkritikel
                                        last edited by developeralgo222

                                        @sebkritikel said in Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards:

                                        M98 P"config.g"

                                        Config.g

                                        ; 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 Tue Dec 05 2023 09:51:46 GMT-0500 (Eastern Standard Time)
                                        
                                        ; General preferences
                                        G90                            ; send absolute coordinates...
                                        M83                            ; ...but relative extruder moves
                                        M550 P"MYTEST PNP"              ; set printer name
                                        
                                        ; Wait a moment for the CAN expansion boards to start
                                        G4 S2
                                        
                                        ; Network
                                        if {network.interfaces[0].type = "ethernet"}
                                            M552 P10.0.0.200 S1			; enable network and set IP address
                                        	M553 P255.255.255.0			; set netmask
                                            M554 P10.0.0.1				; set gateway
                                        else
                                            M552 S1
                                        
                                        M586 P0 S1                     ; enable HTTP
                                        M586 P1 S0                     ; disable FTP
                                        M586 P2 S0                     ; disable Telnet
                                        
                                        ;The X axis to control the movement of the PnP head right and left. Right(Clockwise rotation to move Forward = S0) is positive.
                                        ;The Y axis to control the movement of the PnP head forward and back. Forward( AntiClockwise rotation to move Forward = S1) is positive.
                                        ;The Z axis to control raising and lowering of the PnP nozzle up and down. Up is positive.
                                        ;The V, U, W, A, B, C (for 6-Head nozzles) axes rotates clockwise and counter-clockwise. Counter-clockwise is positive.
                                        ;RepRapFirmware supports X, Y and Z axes as standard and allows you to create up to 7 additional axes depending on the firmware 
                                        ;version and which Duet you are using. Axes are created and associated with ;stepper motors using the M584 command in config.g. 
                                        ;You may use any of the following letters to refer to the new axes: U V W A B C D (letter D is not supported in older firmware versions)
                                        
                                        ;If no T parameter is given, then on boards having internal drivers the step pulse width and interval are guaranteed to be suitable for the on-board drivers only, 
                                        ;and will generally be too fast for external drivers. On the MB6XD board the default is T2.5:2.5:2.5:2.5.
                                        
                                        ; Drives
                                        ;Physical Drives CAN ID = 0
                                        M569 P0.0 S0 R1 T5:5:10:10           ; X-Axis physical drive 0.0 goes forwards on CAN ID = 0 - Duet 6XD Drive 0.0 with 5us timings between pulses
                                        M569 P0.1 S1 R1 T5:5:10:10           ; Y-Axis physical drive 0.1 goes forwards on CAN ID = 0 - Duet 6XD Drive 0.1 with 5us timings between pulses
                                        ;Physical Drives CAN ID = 1
                                        M569 P1.0 S1                ; Z & U Axis physical drive 1.0 Rotates Clockwise or Anticlockwise to move CAM driven dual nozzles down and up on Z & U axis on CAN ID = 1 - Duet 3HC Drive 1.0
                                        M569 P1.1 S1                ; V & W Axis physical drive 1.1 Rotates Clockwise or Anticlockwise to move CAM driven dual nozzles down and up on V & W axis on CAN ID = 1 - Duet 3HC Drive 1.1
                                        M569 P1.2 S1                ; A & B Axis physical drive 1.2 Rotates Clockwise or Anticlockwise to move CAM driven dual nozzles down and up on A & B axis on CAN ID = 1 - Duet 3HC Drive 1.2
                                        ;Physical Drives CAN ID = 2
                                        M569 P2.0 S1                ; C-Axis physical drive 2.0 goes Rotates forwards and backwards (+180 and -180 ) on CAN ID = 2 - Duet 3HC Drive 2.0
                                        M569 P2.1 S1                ; D-Axis physical drive 2.1 goes Rotates forwards and backwards (+180 and -180 ) on CAN ID = 2 - Duet 3HC Drive 2.1
                                        M569 P2.2 S1                ; 'A-Axis physical drive 2.2 goes Rotates forwards and backwards (+180 and -180 ) on CAN ID = 2 - Duet 3HC Drive 2.2
                                        ;Physical Drives CAN ID = 3
                                        M569 P3.0 S1                ; 'B-Axis physical drive 3.0 goes Rotates forwards and backwards (+180 and -180 ) on CAN ID = 3 - Duet 3HC Drive 3.0
                                        M569 P3.1 S1                ; 'C-Axis physical drive 3.1 goes Rotates forwards and backwards (+180 and -180 ) on CAN ID = 3 - Duet 3HC Drive 3.1
                                        M569 P3.2 S1                ; 'D-Axis physical drive 3.2 goes Rotates forwards and backwards (+180 and -180 ) on CAN ID = 3 - Duet 3HC Drive 3.2
                                        
                                        ;By default Z U V W are linear and A B C D are rotary; but you can change that using the R
                                        
                                        ; set visible drive mapping
                                        
                                        ; X-Axis , Y-Axis (2 x Nema 34 Closed Loop Motors) and Z-Axes (Z,U,V,W,A,B) mapping to 3 Stepper motors 
                                        ; directly connected to 3HC (CAN ID = 1) (which moves the nozzles up and down along Z-axis)
                                        ;M584 X0.0 Y0.1 Z1.0 U1.0 V1.1 W1.1 A1.2 B1.2 R0 ;  LIN R0 = LINEAR, R1 = ROTATION
                                        M584 X0.0 Y0.1 R0 ;  LIN R0 = LINEAR, R1 = ROTATION
                                        ; Rotational Axes mapping (C, D, 'A, 'B, 'C, 'D ) to 6 motors directly connected to 3HC (CAN ID 2 and 3) (which rotates the nozzles +180 / -180 along Rotational axis)
                                        ;M584 C2.0 D2.1 'A2.2 'B3.0 'C3.1 'D3.2 R1  ;    LIN R0 = LINEAR, R1 = ROTATION
                                        M584 Z1.0 U1.0 V1.1 W1.1 A1.2 B1.2 C2.0 D2.1 'A2.2 'B3.0 'C3.1 'D3.2 R1  ;    LIN R0 = LINEAR, R1 = ROTATION
                                        
                                        M350 X16 Y16 Z16 U16 V16 W16 A16 B16 C16 D16 'A16 'B16 'C16 'D16 I1                     ; configure microstepping with interpolation
                                        M92 X40.00 Y40.00 Z8.888 U8.888 V8.888 W8.888 A8.888 B8.888  C8.888 D8.888 'A8.888 'B8.888 'C8.888 'D8.888          ; set steps per mm 50mm/rev
                                        M566 X900.0 Y900.0 Z900.0 U900.0 V900.0 W900.0 A900.0 B900.0  C100.0 D100.0 'A100.0 'B100.0 'C100.0 'D100.0         ; set maximum instantaneous speed changes (mm/min)
                                        M203 X126000.00 Y126000.00 Z24000.00 U24000.00 V24000.00 W24000.00 A24000.00 B24000.00  C24000.00 D24000.00 'A24000.00 'B24000.00 'C24000.00 'D24000.00     ; set maximum speeds (mm/min)
                                        M201 X50000.00 Y50000.00 Z500.00 U500.00 V500.00 W500.00 A500.00 B500.00  C5000.00 D5000.00 'A5000.00 'B5000.00 'C5000.00 'D5000.00                         ; set accelerations (mm/s^2)
                                        M906 X800 Y800 Z600.0 U600.0 V600.0 W600.0 A600.0 B600.0  C500.0 D500.0 'A500.0 'B500.0 'C500.0 'D500.0 I30        ; set motor currents (mA) and motor idle factor in per cent
                                        M84 S30      ; Set idle timeout
                                        M564 H0		 ; Sets homing, H0 allows mvmnt wo homing
                                        
                                        ; Axis Limits
                                        M208 X0 Y0 Z-160 U-160 V-160 W-160 A-160 B-160  C0 D0 'A0 'B0 'C0 'D0 S1	; Set axis minima
                                        M208 X500 Y500 Z0 U0 V0 W0 A0 B0 C180 D180 'A180 'B180 'C180 'D180 S0	    ; Set axis maxima
                                        
                                        
                                        ; There are two parameters to be set for each endstop:
                                        
                                        ; (1) The electrical type of the endstop (S parameter). S0 = active low (S0, e.g. normally-open switch or Hall sensor), S1 = active high (S1, e.g. a normally-closed switch or opto switch),
                                        ; S2 = Use Z probe (S2) and S3 = for using motor stall detection (S3).
                                        
                                        ; (2) Whether the endstop is at the minimum end (Low End) or the maximum end (High End) of the axis. 
                                        ; These are the X, Y and Z parameters. 0 = no endstop present(e.g X0) , 1 = an endstop switch at the Minimum end (e.g X1) , 2 = an endstop switch at the Maximum end (e.g X2) of the axis.
                                        
                                        ; Endstops 
                                        ; For X and Y Axis
                                        M574 X2 S1 P"!io0.in"               ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io0.in
                                        M574 Y2 S1 P"!io1.in"               ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin io1.in
                                        ; For Z-Axis (Z,U,V,W,A,B) - Up/down)  -- CAM Driven Dual Nozzles ( 1 Motor rotates up/down to drive 2 Nozzles )
                                        M574 Z1 S1 P"!1.io0.in"             ; configure switch-type (e.g. microswitch) endstop for low end on Z via pin 1.io0.in
                                        M574 U1 S1 P"!1.io1.in"             ; configure switch-type (e.g. microswitch) endstop for low end on U via pin 1.io1.in
                                        M574 V1 S1 P"!1.io2.in"             ; configure switch-type (e.g. microswitch) endstop for low end on V via pin 1.io2.in
                                        M574 W1 S1 P"!1.io3.in"             ; configure switch-type (e.g. microswitch) endstop for low end on W via pin 1.io3.in
                                        M574 A1 S1 P"!1.io4.in"             ; configure switch-type (e.g. microswitch) endstop for low end on A via pin 1.io4.in
                                        M574 B1 S1 P"!1.io5.in"             ; configure switch-type (e.g. microswitch) endstop for low end on B via pin 1.io5.in
                                        ; For Rotational Axes only (C,D,'A,'B,'C,'D) +180 / - 180 )  
                                        M574 C1 S1 P"!2.io0.in"            ; configure switch-type (e.g. microswitch) endstop for low end on C via pin 2.io0.in
                                        M574 D1 S1 P"!2.io1.in"            ; configure switch-type (e.g. microswitch) endstop for low end on D via pin 2.io1.in
                                        M574 'A1 S1 P"!2.io2.in"            ; configure switch-type (e.g. microswitch) endstop for low end on 'A via pin 2.io2.in
                                        M574 'B1 S1 P"!3.io0.in"            ; configure switch-type (e.g. microswitch) endstop for low end on 'B via pin 3.io0.in
                                        M574 'C1 S1 P"!3.io1.in"            ; configure switch-type (e.g. microswitch) endstop for low end on 'C via pin 3.io1.in
                                        M574 'D1 S1 P"!3.io2.in"            ; configure switch-type (e.g. microswitch) endstop for low end on 'D via pin 3.io2.in
                                        
                                        
                                        ; Z-Probe
                                        
                                        ; Heaters
                                        
                                        ; Fans
                                        
                                        ; Tools
                                        
                                        ; Custom settings are not defined
                                        
                                        

                                        (1) updated above in this post Config.g
                                        (2) M98 P"config.g" when sent it disconnects and nothing happens
                                        (3) tested X an Y movement independently as @dc42 suggested and none moves at all
                                        (4) double checked all the connections again, no alarms or short circuits
                                        (5) The Endstops for X and Y

                                        M119
                                        Endstops - X: at max stop, Y: at max stop, Z: at min stop, U: at min stop, V: at min stop, W: at min stop, A: at min stop, B: at min stop, C: not stopped, D: not stopped, a: not stopped, b: not stopped, c: not stopped, d: not stopped, Z probe: at min stop
                                        

                                        i will adjust endstops correctly once i get X and Y moving since no triggers will happen if X and Y dont move at all

                                        (6) Microsteps is set to defaults (400) : SW1 = ON ( selects 86HSE8N-BC38 ), SW2=ON, SW3=ON, SW4=ON, SW5=ON,SW6=ON

                                        (7) checked the internal encoder wires at the back of the NEMA 34 motors and they are fine ,no crossings . They are correct as per the wiring listing on the side of the NEMA 34 motor

                                        droftartsundefined o_lampeundefined 3 Replies Last reply Reply Quote 0
                                        • droftartsundefined
                                          droftarts administrators @developeralgo222
                                          last edited by

                                          @developeralgo222 said in Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards:

                                          If M119 is reporting that the X and Y axis are at the max endstop, the axis won't move. Try changing the endstop configuration, removing the invert flag (!), eg

                                          M574 X2 S1 P"io0.in"               ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io0.in
                                          M574 Y2 S1 P"io1.in"               ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin io1.in
                                          

                                          The endstops should report 'not stopped' with M119, then, and the axis should be able to move. You can tell if it does move, because the machine position will change in DWC. If this moves, and your motors don't, then there's another reason, eg motor not actually enabled.

                                          Alternatively, send M564 H0 S0 to allow axes to move that aren't homed, and allow axes to move outside the bounds of the printer. USE CAREFULLY! See https://docs.duet3d.com/en/User_manual/Reference/Gcodes#m564-limit-axes

                                          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

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

                                            @developeralgo222 I've also had a look at the HSS86 datasheet, and it doesn't have any information on timings to use beyond

                                            frequency 0~200KHz

                                            200KHz is a pulse and interval every 5us, so it should be able to do T2.5:2.5:10:10 (no information on the last two parameters, direction set up and direction hold).

                                            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

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