... and frankly i see no need for it, you would have to change stuff mechanically first then start a config for that setup.
No restart of the PC required for running different configs.
Indeed. That is the intention.
The old machines such as the Hommel require quite a lot of work to setup, because everything is mechanical, and drive axles for auto feed and such have to be reconfigured manually too. In my modernized version accessories such as for example a rotary table or an XY table get their own built in stepper motor(s), and you just plug it into the control box and load the fitting configuration. So you first reconfigure the hardware, and you load the (preconfigured) corresponding configuration. Goal is to have 4 to 8 different configurations. For example for:
- Vertical milling.
- Horizontal milling.
- Line Boring.
- 4th / possible 5th axis configuration.
Below a picture of the same Hommel machine, but configured as a lathe.
So you can start with a 3 axis machine, use it to make a rotary table, and then extend it to 4 or even full 5 axis, but also go back to 3 axis, because that allows for more rigidity and heavier machining. Andysmachines has made some excellent youtube tutorials on gear milling, and this has a lot of error prone manual machining, which also gets boring very quickly. And this begs for more automation. The goal is not to work with mechanical CAD that spits out a big G code file, but to write some python code that generates some G code for special applications. For example gear cutting with a disk mill, or with a profile mill. The number of teeth for the gear is then just a number in a for loop (and a radius change).
So the question still is: How do you load different configurations in LinuxCNC? Is this a command line option, do you have to fiddle with configuration files outside of LinuxCNC? Does a configuration change also reprogram the Mesa card without a hard reset?
My experience with LinuxCNC is very limited. I did some short tests with Machinekit some 10 years ago, and recently I tried it on 3 different PC's, but latency tests were atrocious, so I need better hardware. I'm also still in doubt to whether go with LinuxCNC or to stick with something simpler such as GRBL. Worst case scenario for multiple configurations, is to write a script that interprets G code, and then swaps axis and direction, and write it back to another file.