The PL series of solar controllers are exceptionally versatile. They give the user unparalleled capability to adjust the function of the controller and to monitor the performance of the energy system. To cater for both non technical and technical users, the PL has four preset programs which can be used without needing to understand the details of its operation. For those with a good understanding of power regulation, there is another program, which allows all the settings to be adjusted if required. Once the program has been selected, it is possible to disable any further adjustment. This prevents unauthorised adjustment of settings. Although the PL is primarily a device to control the charging of batteries from solar electric (photovoltaic) panels, it can also be used with other energy sources such as wind, microhydro and fuel driven generators. The PL can support a variety of regulation methods. It supports slow speed switching and fixed frequency pulse width modulation (PWM) control in series and diversion modes. There is provision for a temperature sensor to be attached. There is an input for measuring external voltages. A communications interface is provided for accessories including remote shunt adapters (PLS2), an RS232 adapter to communicate with a computer/modem (PLI), and a PLA unit which provides additional alarm outputs and syncronisation of multiple regulators, as well as an RS232 output. The PLI and PLA allows remote monitoring and adjustment. Custom settings can be stored on a computer and uploaded into the PL controller. Data from the PL can be downloaded into the computer and displayed easily. Low battery voltage load disconnection is provided, as are an alarm, facility to control the charging of a second battery bank, control for a back up generator and an event controller which can be used to control lights, pumping, waste energy use and other timer functions. A temperature sensor can be added to correct the regulation voltages for battery temperature. The PL controller can have external current shunts attached and control larger systems through external switch blocks or relays.