There are a number of Arduino based DIY controllers that are documented well enough that an electronics hobbyist should have no trouble building and programming one. If you're not familiar with the platform and it's programming, it may be best to find one of those and follow the instructions.
There are many partial designs or theoretical designs designs out there. There are no comprehensive designs that are layman friendly. You refer to electronics hobbyists as being able to build these DIY controllers but it seems that those trying to build these controllers are not electronics hobbyists, but rather, those that want a controller and think its as simple as a drive to rat shack and following a youtube video. This is not the reality.
Personally, I don't think it's worth playing with analog drivers, there are a number of reasons that PWM is a better choice. For starters, the Arduino has PWM outputs, drivers can be hooked up directly with no need for any D to A conversion. Second, most analog drivers don't "turn on" until somewhere above 10% power, OTOH, some PWM drivers come on at just 1%, this makes for a much smoother sunrise/sunset.
Valid points.
A simple float switch is a digital device, it is either on or off and can directly trigger an input on an Arduino. Likewise, the relay board posted above, or an SSR can take a digital signal from an Arduino to turn an item on or off.
This will allow simple switching of eight mechanical relays but when I refer to a controller, I am referring to one that is extensible by having the relays on a bus that can address/rename the relays and address more than eight relays.
A float switch and a relay is all it takes to build an ATO. There are also temperature sensors that can be connected directly to an Arduino that can be used with another relay or SSR to control a heater, chiller or fans.
True.
A wavemaker requires nothing but a couple relays.
This is only true for on/off but when people use the term controller and pump control they are usually referring to variable speed pumps that are controlled via 0-10vDC and not simple on/off. Not to mention that mechanical relays are loud and burn out so you will need solid state relays for items that are switched often, like pumps. Where is a solid state relay board that is directly compatible with the Arduino that does not blow the budget?
You'll need a simple circuit to hook up a pH probe but it's not a big deal.
pH probes circuits have very low values that cannot be read by the arduino directly. They must be amplified before the MC can use the values from the circuit. This is not as simple as you are making it out to be.
Plenty of people have built their own Arduino based controllers and many have shared their info, it's there if you look for it. I'm sure some of them are EE's, but there are also plenty who are just hobbyist that took the time to figure it out. I've picked out a design, read through the material and ordered the parts. There's nothing in the write up that looks even remotely difficult.
I am the last person to discourage anyone from trying to do something if they feel they can accomplish it but there is also the reality that you cannot do, in 30 minutes with the help of youtube, what took others years of training to be able to do.
In conclusion, it is absolutely feasible to go to rat shack and get an arduino starter kit, wire up a few float switches and momentary contact switches, insert a plug-n-play mechanical relay board, buy a few meanwell PWM LED drivers, write a few sketches and have yourself a simple controller.
It is quite another thing to have meaningful probe values, solid state relays on an addressable/extensible bus, and 0-10vDC analog output. This does not even begin to address the topics of user interface, logging, graphing, reporting, alerts, remote access, settings backup, etc.
I think if people are going to discuss a DIY controller, they should understand what exactly that means as compared to commercially available controllers.