Good/Bad – Um? Depends what your looking for. I’d prefer simple sync and complex sync.
The master ppl file setup.
Each pump’s code is a separate file – that’s great programming technique. Makes it easy to test each ppl file separately.

Multiple pump file sets
Syncing
Simple syncing is done by you pressing the run all button.
If you can create 3? pump ppl files that deliver the right out comes from time 0 for each individual pump – t0 is when you click run all. That’s the simplest way of doing it all or looking at it all. It means your need are simple.
Now within each pump program – you can use timing loops. For for other kinds of sync – complex sync – wait till some outcome from pump 0 then tell pump 1 to start – that needs ttl cables and signals. It’s the only way to go.
You cant command one pump from another pump via the RS232 network connection. This does happen in a reciprocating pump set up – one pump becomes the controller in that network – but it’s not possible for us to write ppl for that environment.
TTL Cable
You will need ttl cables – that’s great for 2 pumps – but if you have 3 or more pumps – then you need a scheme such as … pump 0 ->ttl->pump 1-> ttl->pump2 but you’ll need custom made ttl cables for this.
It’s possible for pump 4 to be the input to pump 1 – and you can make a pump circle configuration. I’ve done that – challenging but when it works. yes!
You can also trigger more than one pump from a single pump and with some electronics you can trigger more than one pump from more than one pump.
I have done that sort of thing and it works brilliantly BUT you have to make your own cables for that – you cant buy that cabling. Hey and when it all works – you will smile and bathe in your triumph – you’ll see.