The gecko controls are the DIY base-line standard, as I see it. However, a computer power-supply might not have enough voltage to keep the driver part of the G540 happy. I believe the specs I saw, said 18-50v.
Translation: Without a load, the 12v supply will turn the motors, but will not operate safely under load.
12v, even regulated to a constant 12v, will result in about 9v at the motor with high amps, under load. Using a higher voltage, say 24v, will show as 18v at the motor, which will result an an amperage value that the controller can handle.
I hate that controllers say things like, 18v-50v, and then they say things like 1.0a-3.5a. That says nothing to anyone without a degree in electronics, and implies that we have oscilliscopes or $800.00 multi-meters on hand.
They always leave-out the wattage limitations, which is the most important, and often least mentioned specification of many devices. Instead, they give useless charts, which show specific, "perfect world values". Values that NEVER occur in production while using these devices.
Roughly... You can/will wrongly assume that the device has these values...
18v @ 3.5a = 63w (Wrong, 3.5 amps is the maximum total, at any voltage.)
50v @ 1.0a = 50w
However, it can handle 50v @ 1.0a = 50w (x2 outputs only). So this tells you that the maximum rating of the device is actually 100w. (Now why didn't they just say that!)
In any event, this driver would work, just not as expected with a 12v source. (You can modify a PSU to produce 24v, at half the amperage. Eg, a 300w PSU will produce 25.0a @ 12.0v, but it will only produce 12.5a @ 24.0v = 300w.)
The "stops", "limits", and "homes" go to the LPT/PP portion of the controller/driver combo. If you don't have a combo board, they will simply go to the controller break-out board. These are the INPUT connections to your computer. As opposed to the OUTPUT connections which go to your drivers. (You only have a limited number of inputs and outputs, so the more motors you are controlling, the less dedicated inputs you can have. Homes usually require dedicated inputs, but it is possible to use one home for all axis'. Stops usually are a last-resort, like an emergency stop, and are usually bundled as one input for all axis'. Limits, since they tell the axis motor to reverse, or pause, need separate inputs. Home usually checks one input at a time, and knows which axis it is testing. Limits are unaware which axis needs limiting, and thus, need to know which one just reached a limit. Stops don't care which axis, as they simply tell the whole machine to turn-off due to having gone out of range. Any switch out of range usually requires human intervention. Limits allow computer correction and can act as HOME switches too.)
In any event, sensors and switches are all optional. None are required for operation. However, for better, faster, safer, accurate operation, some switches and sensors are needed.
Remember, you can always add another LPT/PP port for adding more sensors. You just have to add another break-out board and set the connections to being all as inputs. Now, making the software work with two ports is another story.