Axes Definition Requirements

At present I have my Jackpot setup for my XYY laser engraver build, with X using the X stepper port, Y1 using the Y port, and Y2 using the A port.

Is it possible to set it up where Y2 uses the Z port, and have a dedicated rotary axis A using the A port?

So it would be an XYYA machine.

Thanks!

The way I understand it, you can configure it however you want. The XYZABC are just labels on the board for standardized builds. If you look on the underside of the board (also visible on the top if you pull the tmc drivers out), you will see each driver slot (XYZABC) has an address, step, direction and disable pin (AB&C also have a cs pin because they share the same addr).

i.e. Port address 0 (labeled as X):

addr: 0
step: i2so.2
dir: i2so.1
dsbl: i2s0.0

Just match those pin designations with the addr:, step_pin:, direction_pin:, disable_pin: and cs_pin: (for AB&C) under the “motor#: > tmc2209:” sections of the config.yaml and it should be good to go.

2 Likes

So currently, your “Y2” is plugged into the A port, and the config looks like this:

y:
...
     motor0:
     ...
     motor1:
     ...
        tmc_2209:
             ...
             addr: 3
             cs_pin: i2so.14
             step_pin: I2SO.13
             direction_pin: I2SO.12
             disable_pin: I2SO.15
             ...

So, change it to:

y:
...
     motor0:
     ...
     motor1:
     ...
        tmc_2209:
             ...
             addr: 2
             cs_pin: NO_PIN
             step_pin: I2SO.10
             direction_pin: I2SO.9
             disable_pin: I2SO.8
             ...

then plug the Y2 motor into port Z.

(double check my port numbers with your jackpot)

EDIT: I should note that if you have a section (z:) in your config, you will need to remove it, or change all those values to NO_PIN because if you have duplicate pin designations in your config, the board won’t accept it and will boot to a default config.

1 Like

Thanks!

1 Like

Hints when editing your config:

  1. Whenever possible, do it via the WebUI > FluidNC > Setttings > Config Items and then save your changes by sending the command $CD=config.yaml (there might also be a macro named “SAVE” that does the same)

  2. Always keep a backup of your last, known to be working, config.yaml.

  3. When rebooting after uploading a new yaml with changes, go to the WebUI > FluidNC > Setttings > Config Items and make sure the name matches the name in your config.yaml. If it doesn’t, there is an error in your config.

Years of coding as a EE taught be to always have multiple backups of my files :slight_smile:

I’m using VS Code on my Mac to edit the .yaml files, and so far that’s working out.

Cheers!

Everything works fine after changing to an XYYA configuration file, thanks again!

1 Like