If I can hook in external foot switches, ideally id like to do that and save the money.
This is where the old saying about being “penny wise and pound foolish” comes into play.
The Fractal FC units are not just switches, they are more like remote terminals for a computer, whereas what you propose would be like a remote keyboard only at best or a bank of switches at worst.
The FC plus Fractal’s layout manager make it easy to create flexible switching that integrates with your presets automatically and they can’t be appreciated until you have worked with them for a while. On the FM3 adding a FC6 opens up use of the OMG9 layout which is very powerful. The FC6 changes from displaying banks of presets, to the scenes in a preset, to the individual effect blocks and their state, to per-preset overrides, all based on the three switches on the FM3. It’s very easy but powerful.
If you don’t want to spend the money I’d recommend you look into the Morningstar or similar MIDI controllers. They don’t integrate as well, and throw more programming into your lap, but they can query the Fractal and get some information about its current state.
I’d recommend reading
the Foot Controllers manuals along with
the Wiki to get an idea what you are potentially losing going down the path you are proposing. I’m an ex-programmer from assembly language on up, did my own electronics for years, and there’s nothing I could have done to create a system like Fractal has put together. It’s that good.
MIDI controllers have improved their integration because the companies have written code that queries the Fractal units. That helps when setting them up but not if Fractal adds new MIDI functionality or new capabilities for their foot controllers. Then you have to wait for the companies to catch up. It’s all about how much work you want to do and whether you want to have Fractal be responsible for fixing problems or do you want to shoulder that burden? Either way it’s a great example of how flexible Fractal’s design and systems are, you get to pick your level of pain.