CNC Mode, need 12(16) Axes. How to ?

  • Hi,

    I wish to drive 12 (16) steppers as individual axes using Duet 3 products: 6HC & 2(4) off 3HC. Also support for 12(16) endstops.
    CNC mode configuration.
    I understand that at present the current stable firmare can drive 10 axes: XYZ UVW ABCD

    I have read in other threads that it is possible to rebuild the firmware from the GitHub repository, assuming the correct Eclipse IDE, environment and C compilers are installed.

    My question is how difficult would it to add the additional axes. I do not need to use any "industry standard" G-Code naming convention for the axes.

    The G-Code i need to execute moves 3 parallel rails, and there are 3 movable pods on each rail. Hence 12 total steppers/axes that ideally are independently controlled.
    Sample G-Code snippet:

    ;move 4 rails labelled RA, RB RC & RD to coords. Rail feed rate RF, Pod feed rate PF
    G06 RA 0 RB 150 RC 600 RD 1150 RF 1300 PF 300

    ; move the 4 pods on each rail: Rail A: A1, A2, A3, A4
    ; move the 4 pods on each rail: Rail B: B1, B2, B3, B4
    ; move the 4 pods on each rail: Rail 😄 C1, C2, C3, C4
    ; move the 4 pods on each rail: Rail 😧 D1, D2, D3, D4

    I would prefer independent control of each pod, even if they end up at same linear co-ordinate i.e not map multiple steppers to one axis (virtual paralleling)

    G06 A1 0 A2 500 A3 1000 A4 2880
    G06 B1 0 B2 500 B3 1000 B4 1500
    G06 C1 0 C2 500 C3 1000 C4 2880
    G06 D1 0 D2 500 D3 1000 D4 1500

    1. Relatively Easy
    2. Involved
    3. Very complex
    4. Impossible, forget it.

    I expect some work would be needed on the DWC web visualisation also.

    I do have experience in embedded code development, C, Eclipse IDE etc.
    But would this be beyond the ability of say a 2nd year Undergraduate Intern 3 month project ?

    Can someone please point me to the source code module filenames that are involved with maximum number of axes.

    I have looked in these threads so far:

    I'd appreciate your comments, especially if it's impossible.


  • administrators

    Extension to >10 axes is planned for firmware 3.3, possibly it may make it into 3.2. I haven't finalised what the extra axes will be called in GCode, but it may be 'A, 'B and so on (which RRF will convert to a, b, c...).

  • Many thanks for your reply David !

    I will inform my customer he will have to wait for the update, but it's coming.
    I will assist him with firmware upgrade and implementation.

    (And now for the inevitable question all software developers hate....)
    Do you have estimated timescale for release of 3.2 & 3.3 ?

  • administrators

    We are aiming to release 3.2 stable in January, in time for the first production run on the Duet 3 Mini.

  • Excellent news David !

    Many thanks.

  • @dc42 Hi David

    Are you the designer of the software for controlling any given number of axis. I have an urgent need for at least 12 axis. Is this something that my company can develop or do we just have to wait?

Log in to reply