I am repairing my system from some lightening damage and see there is a line labeled “PR” that connects to ground at the OSPI but doesn’t appear to connect to anything else in the expansion modules but passes from input to output connector. Am I missing something? What’s the purpose of this line?
PR stands for “Pull Up”. It’s used on OpenSprinkler 2.x as a way to detect how many expanders are daisy chained with the main controller. For OSPi it isn’t used because of the lack of analog reading ability of RPi (although OSPi has a ADC chip, it’s never utilized by the firmware). So on OSPi the “PR” line is tied to ground.
On the expander the PR line is actually connected to a 4.7k resistor and the other side of the resistor is connected to ground. The idea is that the main controller (OpenSprinkler 2.x) pulls the PR line up through a 10K resistor, and each expander pulls PR down to ground by a 4.7K resistor. So by checking the voltage on the PR line using an analog pin, the main controller can detect how many expanders are connected: since each additional expander adds another 4.7K resistor in parallel, it changes the voltage divided by this resistor network.