That UCSB board, on paper, looks to be a pretty good BoB for the extra ports on (at least) the UC300ETH. It's pricey, though, but looks to be built like the proverbial brick-outhouse. Probably a bit of an overkill for most machines (how many layers of optical isolation do you really need?) but if you're happy with the price. I'd be thinking that if I was ever to need more than the 12 outputs (bearing in mind you'll need 8-9 for a 4-axis) then I'd relegate the axis stepper signals to a cheaper BoB on the port 2/3 on the 300 and retain the highly flexible I/O of the UCSB for other purposes on the machine.