I have similar needs.
I irrigate my yard from a pond.
At the pond, I have a pump, pump relay, and sprinkler controller. That controller handles a manifold with several valves. The controller turns on the pump when any zone is on.
I have two more controllers located in my garage. Two contrllers are used just to get the number of zones I need. These controllers can’t communicate with the pump relay at the pond.
what I’ve been doing is setting up a “dummy zone” in the pond controller that doesn’t control a valve. This just turns the pump on/off at know start times so the valves driven by the garage controllers have pond water for their zones.
But, this doesn’t work very well. It’s hard to program and error prone. It’s easy for the pump to be on or off when it shouldn’t be. Improving the situation is my main motivation for trying Opensprinkler.
What I need is the ability for any of several master stations to control the pump relay that is connected to one master. I’d like programming to be as simple as if I had only one master with many zones rather than having to individually program each master.
From what I’ve read, I don’t see an immediate solution to my problem since masters can’t communicate with each other. What I want is a way for a controller to act like a zone expansion board.
I’m prepared to add/modify the source code for my needs, but I don’t want to “re-invent the wheel”.
I’d try to use the ethernet over power line adapter and maybe TCP sockets to communicate commands from a single master controller to multiple “slave” controllers. “Slave” in this sense means they looks like a zone expansion board as far as the one master controller software knows. But, there’s ethernet over power line communication between them instead of the physical connection used by the expansion boards.
Is anything like this in progress already? Is there a work around besides using schedules for each master and attempt to keep the pump control synchronized with the controller that isn’t physically connected to it?