MKS Gen L + TMC2208s?

I am printing out the finals parts of my machine as I type this, and am just waiting on some final hardware (belts and pulleys) to arrive by Monday. Before I really get down and dirty with the building, I just wanted to double check that my plan for the electronics is going to work out well. My Ender3 runs an MKS Gen L v1.2 with TMC 2208s (standalone, not UART) on the XYZ and A4988 on the two extruders (for better LIN-ADV compatibility). Because I do a lot of mods on my printer, I like to keep spare parts around, so I have an MKS Gen L v2.0 with 5 x TMC2208s available to use on my MPCNC. Any reason this is not a good choice? I probably will not be running them in UART mode (unless there is a real good reason too for this machine) just due to the fact that I didn’t have good luck getting it working on my Ender3. I believe the TMC2208s are rated at 1.2A RMS, 2.0A Peak current-wise. It seems like a lot of builds use the DRV8825s, due to slightly higher current ratings, but I would rather avoid these as as they don’t necessarily play well with 3D printers, and I am trying to keep the electronics compatible between the two machines so they can function as “in-use-spares” for each other if needed. That said, if A4988s would be better on the CNC, I can pick up a 5 pack of those for under $10 but it seems that really they wouldn’t be any better than the TMC2208s I already have. Thoughts?

Apart from the current which you already identified, it should work fine. DRV8825 has slightly higher current capability than A4988, which in turn is a bit better than TMC2208 as I understand it. Unlike a printer, the CNC machine more likely to run up against the current limit, so it does matter somewhat, but TMC2208 is workable. Just make sure to use good cooling and expect to have to adjust the current or feedrates a bit (which is generally necessary anyway for new machines).

The MKS Gen L 1.0 only has step/dir control, so UART requires a ton of extra wires and firmware modification. I believe the MKS Gen L 2.0 is designed to support UART but I haven’t used it myself.

Sounds good - I will go ahead and use what I have (the 2208s). Although, after some bench testing, it looks like one of my 2208s may be bad, so I will probably go ahead and pop an A4988 in for the Z (keeping matching sets of 2208s on the Xs an Ys) for now. Easy enough to swap out to DRV8825s later on. Cooling shouldn’t be an issue as I plan to make a custom case for the board and can get some good airflow across the sinks.

As for the Gen L V1.2 vs V2 on the boards, from what I understand the 2.0 does support UART with just a jumper, but if I play with that it will probably be in my Ender-3 (might swap the 1.4 out of it, into the MPCNC and put the 2 in the printer but not sure yet).