Can I use the SimpleFOC library to drive syncronized axes in closed-loop?

What exactly do you mean by 2x2? I hate Rust, so we could only collaborate on hardware, but I have a dream of a printer using the Ultimaker style crossed rail gantry with two linear motors driving each axis. Ideally inverted from the Peopoly Magneto X, so the permanent magnets are on the moving parts and coils on the stationary rails so the motor wires don’t have to move. This is one of the potential uses for my stepstick-compatible board, along with making ultra-lightweight spiral extruders.

I’m pretty sure I could make the linear motors, but I don’t know what to do about encoders. It seems stupid to use belts to turn rotary encoders, but I don’t know of any low-cost linear encoders aside from vernier calipers, which may not be precise enough even if you can figure out how to get the reading from them in digital format.