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

    Lower case axis letters

    Scheduled Pinned Locked Moved
    Beta Firmware
    4
    13
    597
    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.
    • theolodianundefined
      theolodian
      last edited by

      Re: Maximum number of axis?

      Where did we get on axis labels please? Has anyone tested it out? I can't get any movement (or errors) from an axis defined as one of abcdefghijkl (XYZUVW works fine). I've tried every combination of upper and lower case, with and without the single quote prefix, in a G1. However, I also don't get any warnings that a motor is not connected when it is not connected for that defined axis.

      Furthermore, a G1 X50 F1000 does move the motor if trying to use say M584 'j0.0 - despite no mention of an X axis in the config.g file!

      I also get this error on startup:

      a484330f-ac8b-4382-b9e9-c86c1cc8d2b4-image.png

      From config.g:

      c7cf4ecc-8ee2-4b07-a853-3fa0f067579e-image.png
      6HC on RRF3.4b6 in SBC mode.

      I want to define 12 independent axes not including XYZ. Ideally I would also be able to use those letters as macro parameters, however they don't need to be lower case in the macro call.

      theolodianundefined 1 Reply Last reply Reply Quote 0
      • theolodianundefined
        theolodian @theolodian
        last edited by theolodian

        @theolodian

        OK, this bit of config.g:

        0e909fe8-e895-4f08-84b8-2ac012a99df3-image.png

        Gives this result:

        b2139f28-7e6d-415e-902b-21ebc6c99d58-image.png

        So only 10 axis, and must be declared in XYZUVWABCD order still in RRF3.4?

        jay_s_ukundefined 1 Reply Last reply Reply Quote 0
        • jay_s_ukundefined
          jay_s_uk @theolodian
          last edited by

          This post is deleted!
          1 Reply Last reply Reply Quote 0
          • theolodianundefined
            theolodian
            last edited by

            There's a lot of strange stuff going on here. Definitely trying to insist on XYZ?

            Here are the console messages from a single startup:

            10072820-33ff-4132-9869-84b87ff4d3af-image.png

            And here is the config.g (I tried declaring and reassigning X Y Z to no avail):

            ; config.g
            ; Configuration file for Duet 3 (firmware version 3)
            ; executed by the firmware on start-up
            
            ; Revision date 2021.12.09
            ; Duet3 6HC on RRF 3.4 Beta5
            ; Running DuetPi
            
            ; firmare V3.3RC2 as of 13/05/2021
            ; support for 15 axes has been specified !
            ; https://forum.duet3d.com/topic/20088/cnc-mode-need-12-16-axes-how-to/2?_=1607778151592
            
            ;Axis letters abcdefghijkl may be used in addition to XYZUVWABCD. 
            ;Because GCode is normally case insensitive, these must be prefixed with a single quote character in GCode commands. 
            ;For example, M584 'A1.2 would assign axis 'a' to driver 1.2;
            
            ; General preferences
            G91                                ; send relative coordinates...
            M550 P"Duet3"                    ; set printer name
            
            ; Main 6HC Board, CAN Addr #0
            
            M569 P0.0 S1                                        	; physical drive 0.0 goes forwards, 
            M569 P0.1 S1                                            ; physical drive 0.1 goes forwards, 
            M569 P0.2 S1                                            ; physical drive 0.2 goes forwards, 
            M569 P0.3 S1                                            ; physical drive 0.3 goes forwards, 
            M569 P0.4 S1                                            ; physical drive 0.4 goes forwards, 
            M569 P0.5 S1                                            ; physical drive 0.5 goes forwards, 
            
            ; 1st 3HC Board, CAN Addr #1
            M569 P1.0 S1                                            ; physical drive 1.0 goes forwards, 
            M569 P1.1 S1                                            ; physical drive 1.1 goes forwards, 
            M569 P1.2 S1                                            ; physical drive 1.2 goes forwards, 
            
            ; 2nd 3HC Board, CAN Addr #2
            M569 P2.0 S1                                           ; physical drive 2.0 goes forwards, 
            M569 P2.1 S1                                           ; physical drive 2.1 goes forwards, 
            M569 P2.2 S1                                           ; physical drive 2.2 goes forwards, 
            
            ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            ; M584: Set drive mapping
            ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M584_Set_drive_mapping
                                                   
            ; all axes are LINEAR
            									   
            ; Main 6HC Board CAN #0
            
            M584 X0.0
            M584 Y0.1
            M584 Z0.2
            
            M18 X Y Z
            
            M584 U0.0
            M584 V0.1
            M584 W0.2
            
            M584 'A0.3 R0
            M584 'B0.4 R0 
            M584 'C0.5 R0
            
            M584 'D1.0 R0
            M584 'H1.1 R0
            M584 'I1.2 R0
            
            M584 'J2.0
            M584 'K2.1
            M584 'L2.2
            
            ; M92: Set axis steps per unit
            ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M92_Set_axis_steps_per_unit
            
            M92 U320.0 V320.0 W320.0 
            M92 A320.0 B320.0 C320.0
            M92 D320.0 'H320.0 'I320.0
            M92 'J320.0 'K320.0 'L320.0
            
            ; M203: Set maximum feedrate mm/minute
            ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M203_Set_maximum_feedrate
            
            M203 U4000 V4000 W4000
            M203 A4000 B4000 C4000
            M203 D4000 'H4000 'I4000
            M203 'J4000 'K4000 'L4000
            
            ;M201: Set max acceleration mm/s^2
            ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M201_Set_max_acceleration
            
            M201 U24 V24 W24
            M201 A24 B24 C24
            M201 D24 'H24 'I24
            M201 'J24 'K24 'L24
            
            ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            ;M906: Set motor currents
            ;https://duet3d.dozuki.com/Wiki/Gcode#Section_M906_Set_motor_currents
            
            M906 U4000 V4000 W4000 I30	                   ; set motor currents (mA) and motor idle factor in per cent 
            M906 A4000 B4000 C4000 I30	                   ; set motor currents (mA) and motor idle factor in per cent 
            M906 D4000 'H4000 'I4000 I30	                   ; set motor currents (mA) and motor idle factor in per cent 
            M906 'J4000 'K4000 'L4000 I30	                   ; set motor currents (mA) and motor idle factor in per cent 
            
            ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            ; M208: Set axis max travel
            ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M208_Set_axis_max_travel
            
            M208 U-5 V-5 W-5 A-5 B-5 C-5 D-5 'H-5 'I-5 'J-5 'K-5 'L-5 S1
            M208 U2350 V2350 W2350 A2350 B2350 C2350 D2350 'H3000 'I2350 'J2350 'K2350 'L2350 S0
            
            ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            ; Endstops
            ; M574: Set endstop configuration
            
            ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M574_RepRapFirmware_Num_3
            
            ; 6HC Board 0
            M574 U1 S1 P"^0.io0.in"
            M574 V1 S1 P"^0.io1.in"
            M574 W1 S1 P"^0.io2.in"
            
            M574 A1 S1 P"^0.io3.in"
            M574 B1 S1 P"^0.io4.in"
            M574 C1 S1 P"^0.io5.in"
            
            ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            T0                                                      ; select first tool
            M564 S0 H0 ; ignore end stops for development
            
            ; [Duet 3 MB6HC] The maximum number of axes supported on Duet 3 MB6HC is increased to 15. 
            ; Axis letters abcdefghijkl may be used in addition to XYZUVWABCD. 
            ; Because GCode is normally case insensitive, these must be prefixed with a single quote character in GCode commands. 
            ; For example, M584 'A1.2 would assign axis 'a' to driver 1.2, and G1 'A10 would move the 'a' axis to the 10mm or 10 degree position (or by 10mm or 10 degrees if in relative mode).
            
            
            chrishammundefined dc42undefined 2 Replies Last reply Reply Quote 0
            • chrishammundefined
              chrishamm administrators @theolodian
              last edited by chrishamm

              @theolodian TBH I've never tried more than 9 axes in SBC mode and I've just figured out that various codes would fail with lower-case axis letters. I'm going to fix this in 3.4-b7.

              Duet software engineer

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

                @theolodian axes X, Y and Z are created by default and will be assigned to drivers 0.0, 0.1 and 0.2 by default. You can use M584 to reassign them to different drivers if you like.

                Other axes can be created in any order you like. Letter E does not specify an axis, it specifies an extruder. Letter F is not valid as an axis letter.

                I just ran the following in standalone mode:

                M584 A0.3
                M584 B0.4
                M584 C0.5
                M584 U1.0
                M584 V1.1
                M584 W1.2
                M584 D2.0
                M584 'j2.1
                M584 'k2.2
                

                M584 now reports:

                Driver assignments: X0.0 Y0.1 Z0.2 (r)(c)A0.3 (r)(c)B0.4 (r)(c)C0.5 U1.0 V1.1 W1.2 (r)(c)D2.0 j2.1 k2.2, 12 axes visible
                

                So the assignment appears to have worked exactly as it should. Does this work for you? There is a possibility that SBC mode might behave differently.

                PS - in future, please post your config lines as text not as images, so that I can copy and paste them.

                EDIT: I see that the reply from @chrishamm crossed with mine.

                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 1
                • theolodianundefined
                  theolodian
                  last edited by

                  Thanks kindly both! Any target date for Beta 7? Cheers 👍

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

                    @theolodian it should be within the next few days.

                    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

                    theolodianundefined 1 Reply Last reply Reply Quote 1
                    • theolodianundefined
                      theolodian @dc42
                      last edited by

                      @dc42 Thanks a ton, tried 3.4b7. Says expansion board stepper drivers don't exist?

                      This config.g:

                      ; General preferences
                      G4 S5								; wait for expansion boards to boot up
                      G91                                ; send relative coordinates...
                      M550 P"Duet3"                    ; set printer name
                      
                      ; Main 6HC Board, CAN Addr #0
                      
                      M569 P0.0 S1                                        	; physical drive 0.0 goes forwards, 
                      M569 P0.1 S1                                            ; physical drive 0.1 goes forwards, 
                      M569 P0.2 S1                                            ; physical drive 0.2 goes forwards, 
                      M569 P0.3 S1                                            ; physical drive 0.3 goes forwards, 
                      M569 P0.4 S1                                            ; physical drive 0.4 goes forwards, 
                      M569 P0.5 S1                                            ; physical drive 0.5 goes forwards, 
                      
                      ; 1st 3HC Board, CAN Addr #1
                      M569 P1.0 S1                                            ; physical drive 1.0 goes forwards, 
                      M569 P1.1 S1                                            ; physical drive 1.1 goes forwards, 
                      M569 P1.2 S1                                            ; physical drive 1.2 goes forwards, 
                      
                      ; 2nd 3HC Board, CAN Addr #2
                      M569 P2.0 S1                                           ; physical drive 2.0 goes forwards, 
                      M569 P2.1 S1                                           ; physical drive 2.1 goes forwards, 
                      M569 P2.2 S1                                           ; physical drive 2.2 goes forwards, 
                      
                      ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                      ; M584: Set drive mapping
                      ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M584_Set_drive_mapping
                                                             
                      ; all axes are LINEAR
                      									   
                      ; Main 6HC Board CAN #0
                      
                      M584 U0.3
                      M584 V0.4
                      M584 W0.5
                      
                      M584 'a0.0 ;R0
                      M584 'b0.1 ;R0 
                      M584 'c0.2 ;R0
                      
                      M584 'd1.0
                      M584 'e1.1
                      M584 'f1.2
                      
                      M584 'j2.0
                      M584 'k2.1
                      M584 'l2.2
                      
                      ; M92: Set axis steps per unit
                      ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M92_Set_axis_steps_per_unit
                      
                      M92 U320.0 V320.0 W320.0 
                      M92 'A320.0 'B320.0 'C320.0
                      M92 'D320.0 'E320.0 'F320.0
                      M92 'J320.0 'K320.0 'L320.0
                      
                      

                      Gives this in the console (M122s first with errors at the bottom):

                      12/17/2021, 8:08:51 PM	m122 B2
                      Diagnostics for board 2:
                      Duet EXP3HC firmware version 3.4.0beta7 (2021-12-16 12:24:41)
                      Bootloader ID: not available
                      Never used RAM 158848, free system stack 4400 words
                      Tasks: Move(notifyWait,0.0%,160) HEAT(notifyWait,0.0%,95) CanAsync(notifyWait,0.0%,69) CanRecv(notifyWait,0.0%,82) CanClock(notifyWait,0.0%,71) TMC(notifyWait,7.4%,99) MAIN(running,91.2%,388) IDLE(ready,0.0%,39) AIN(delaying,1.3%,263), total 100.0%
                      Last reset 00:09:30 ago, cause: power up
                      Last software reset at 2021-10-24 23:03, reason: HardFault bfarValid precise, available RAM 158896, slot 1
                      Software reset code 0x0060 HFSR 0x40000000 CFSR 0x00008200 ICSR 0x00000003 BFAR 0xae4aaef5 SP 0x2002ffc0 Task MAIN Freestk 46361 ok
                      Stack: 00000000 20003870 ae4aaeb5 00000bd5 04000000 ffffffed 000204e2 61000089 00000000 00f00000 e03fffe0 ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
                      Driver 0: pos 0, 320.0 steps/mm,standstill, SG min n/a, mspos 8, reads 17641, writes 0 timeouts 0, steps req 0 done 0
                      Driver 1: pos 0, 320.0 steps/mm,standstill, SG min n/a, mspos 8, reads 17642, writes 0 timeouts 0, steps req 0 done 0
                      Driver 2: pos 0, 320.0 steps/mm,standstill, SG min n/a, mspos 8, reads 17642, writes 0 timeouts 0, steps req 0 done 0
                      Moves scheduled 0, completed 0, in progress 0, hiccups 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0
                      Peak sync jitter -2/11, peak Rx sync delay 179, resyncs 0/1, no step interrupt scheduled
                      VIN voltage: min 24.2, current 24.3, max 24.3
                      V12 voltage: min 12.1, current 12.1, max 12.1
                      MCU temperature: min 28.8C, current 30.1C, max 30.1C
                      Last sensors broadcast 0x00000000 found 0 165 ticks ago, 0 ordering errs, loop time 0
                      CAN messages queued 2528, send timeouts 0, received 1568, lost 0, free buffers 37, min 37, error reg 0
                      dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0
                      12/17/2021, 8:08:31 PM	m122 B1
                      Diagnostics for board 1:
                      Duet EXP3HC firmware version 3.4.0beta7 (2021-12-16 12:24:41)
                      Bootloader ID: SAME5x bootloader version 2.3 (2021-01-26b1)
                      Never used RAM 158848, free system stack 4400 words
                      Tasks: Move(notifyWait,0.0%,160) HEAT(notifyWait,0.0%,108) CanAsync(notifyWait,0.0%,69) CanRecv(notifyWait,0.0%,82) CanClock(notifyWait,0.0%,71) TMC(notifyWait,7.4%,99) MAIN(running,91.2%,416) IDLE(ready,0.0%,39) AIN(delaying,1.3%,263), total 100.0%
                      Last reset 00:09:11 ago, cause: power up
                      Last software reset at 2021-11-23 12:29, reason: HardFault, available RAM 158816, slot 0
                      Software reset code 0x0060 HFSR 0x40000000 CFSR 0x00000001 ICSR 0x00489803 BFAR 0xe000ed38 SP 0x20003360 Task MAIN Freestk 519 ok
                      Stack: 00000000 00000000 20001060 00000000 00000000 000265f3 ffe1d614 61000000 4344ec4f fffc0000 ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
                      Driver 0: pos 0, 320.0 steps/mm,standstill, SG min n/a, mspos 8, reads 16746, writes 0 timeouts 0, steps req 0 done 0
                      Driver 1: pos 0, 80.0 steps/mm,standstill, SG min n/a, mspos 8, reads 16746, writes 0 timeouts 0, steps req 0 done 0
                      Driver 2: pos 0, 80.0 steps/mm,standstill, SG min n/a, mspos 8, reads 16745, writes 0 timeouts 0, steps req 0 done 0
                      Moves scheduled 0, completed 0, in progress 0, hiccups 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0
                      Peak sync jitter -10/3, peak Rx sync delay 177, resyncs 0/1, no step interrupt scheduled
                      VIN voltage: min 24.3, current 24.3, max 24.3
                      V12 voltage: min 12.2, current 12.2, max 12.2
                      MCU temperature: min 30.4C, current 31.4C, max 31.7C
                      Last sensors broadcast 0x00000000 found 0 96 ticks ago, 0 ordering errs, loop time 0
                      CAN messages queued 2529, send timeouts 0, received 1567, lost 0, free buffers 37, min 37, error reg 0
                      dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0
                      12/17/2021, 8:07:45 PM	Error: M584: Driver 2.1 does not exist
                      12/17/2021, 8:07:45 PM	Error: M584: Driver 2.2 does not exist
                      12/17/2021, 8:07:45 PM	Error: M584: Driver 1.0 does not exist
                      12/17/2021, 8:07:45 PM	Error: M584: Driver 1.1 does not exist
                      12/17/2021, 8:07:45 PM	Error: M584: Driver 2.0 does not exist
                      12/17/2021, 8:07:45 PM	Error: M584: Driver 1.2 does not exist
                      
                      theolodianundefined 1 Reply Last reply Reply Quote 0
                      • Phaedruxundefined Phaedrux marked this topic as a question
                      • Phaedruxundefined Phaedrux moved this topic from General Discussion
                      • theolodianundefined
                        theolodian @theolodian
                        last edited by theolodian

                        Bump for visibility.

                        Also, maybe related to this? Firmware installation issue?

                        https://forum.duet3d.com/topic/26435/toolboard-1-1-driver-not-present

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

                          @theolodian have you powered the system down and up again since upgrading the firmware to 3.4.0beta7?

                          If you send M409 K"boards" what response do you get?

                          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

                          theolodianundefined 1 Reply Last reply Reply Quote 0
                          • theolodianundefined
                            theolodian @dc42
                            last edited by

                            @dc42 Yes, I've tried several sequences of booting it up. I replied in the other thread. Thanks!

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

                              @theolodian thanks, the issue isn't the lowercase axis letters, it's that the main board hasn't received or hasn't processed the announcement from the 3HC. I'll close this thread.

                              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 locked this topic
                              • dc42undefined dc42 marked this topic as a regular topic
                              • First post
                                Last post
                              Unless otherwise noted, all forum content is licensed under CC-BY-SA