A charge controller, or charge regulator is basically a voltage and/or current regulator to keep batteries from overcharging. It regulates the voltage and current coming from the solar panels going to the battery. Most “12 volt” panels put out about 16 to 20 volts, so if there is no regulation the batteries will be damaged from overcharging. Most batteries need around 14 to 14.5 volts to get fully charged.
Charge controls come in 3 general types (with some overlap):
Simple 1 or 2 stage controls which rely on relays or shunt transistors to control the voltage in one or two steps. These essentially just short or disconnect the solar panel when a certain voltage is reached. For all practical purposes these are dinosaurs, but you still see a few on old systems – and some of the super cheap ones for sale on the internet. Their only real claim to fame is their reliability – they have so few components, there is not much to break.