Dan in CA
You are right that only one program can control the GPIO pins. However I think your menu program might work just fine using the Interval Program’s new plugin architecture. This is only available with the latest rev of the program.
I assume you are familiar with the information about Interval program on the wiki:
The way it would work is to place your program into the plugins sub-directory under OSPi. You would import the GPIO_pins module into your menu program. This would provide shared access to the GPIO setup that the main program uses. You would also need to remove or comment out any GOIO set-up already in your program. When the main program starts it would load your program as a plugin and you would be able to use it to control the valves.
I am still in the process of writing documentation for the new plugin system. I would like to help you get your menu system working as a plugin because it will help me see what information would be useful for the documentation.
If you wouldn’t mind being a test case for the plugin system, here are some things to check:
1. Have the latest rev of the Interval program installed.
2. You should be using the alternative method for automatically starting the Interval program from a script in /etc/init.d (1.6.3 in the wiki instructions). That allows you to easily stop and start the program. It is necessary to stop the program and start it manually from the OSPi directory to test a plugin.
Let me know if you would like further information.