The purpose of the two GUIs is present the status of the River System elements in a graphical form. Regardless of how this is done, it will be necessary to convey the information from the Master Pi to the GUI Pi in a reliable manner (and vice-versa in the case of the Staff GUI).
This information will typically be:
- For the Visitor GUI:
- Readings of Sensors.
- State of Valves.
- State of Pumps, etc
- and for the Staff GUI.
- All of the above, plus;
- Control signals to start and stop the system and pumps and valves, etc
My first thought is that the Master Pi should host a database (MySQL or similar) which contains a record for each of the above conditions. The Master Pi would maintain this and the GUI Pi would read each record in turn before displaying the relevant reading or state on the display. In the case of the controls, the software on the GUI Pi would have permission to write to the database and the Master Pi would then carry out the action required.
Does anyone have any thoughts on this? Whatever we do it will need to be fully defined in the requirements, so the students who take this on will be able to read from and write to a 'black box' and won't need to know any low-level stuff like sockets or remote direct memory access.