This site has low cost products specifically designed to be controlled by the serial interface on the Raspberry Pi, Arduino, Linux, Windows or ByPic development systems. All the Python software is open source, please download and modify as required. All have either Serial or I2C interface
User Interfaces RGB Graphical
There is also a simple example for each device to get you started.
There is also a PCB Kit available that makes interfacing any of the above Chips much easier, these too can be sideways stacked, see below or see here for full details.
As a bonus they can also be controlled by any machine that can produce a serial output and this includes Linux and Windows machines. The great advantage is that only two port pins are required.
All devices are stackable - they all share a common plug, socket arrangement so many can be stacked together
Example of relay and two Stepper motor boards.
(Note the +V line on the relay maximum is 5V but on the motor is 40V so that particular line may need to be bent out of the way to separate the relay from the motor boards)
Designed for automatic detection - A simple scan reveals what devices are on the bus, the device itself will publish enough information so that the host can take the appropriate action, for example a relay will need treating differently from an ADC
Here two devices are on the bus and the LCD display IC has been selected