An irrigation controller is an essential tool for applying water efficiently and at the right time. Controllers have evolved from mechanical timers to complex computer-based systems that can accurately control water, energy, and chemicals in response to environmental changes. There are two main types of controllers: open loop systems that apply preset actions, and closed loop systems that use feedback from sensors to make decisions and apply them to the irrigation system.