The SCF is structured in a modular way, as can be seen in Figure on the next page. It contains everything necessary for a completely automated sleep communication as described in chapter 3: a device which can record sleep data, a device to generate stimuli, a device to record physiological or other parameters of the body suited for body signaling; a software module to detect dreams or at least REM sleep using the sleep recording device, a software module which can control the stimulus generating device and can code information into the stimulus using a coding scheme, a software module which can detect and decode body signals; a software module enabling user interaction and connecting the other software modules, possibly a data visualization software module, and possibly an action output software module which can be used to control arbitrary other software or hardware using sleep communication. These modules are described in more detail below.
A main priority when designing the SCF was laid on exchangeable and extendable modules. For example, it should be possible to use a different device for recording of sleep data with having to make only minor connectivity changes in the dream detection software modules, all other modules should not be affected by this. Similarly, e.g. the software for detecting and decoding body signals should be easily interchangeable, allowing to try out and to compare different implementations or algorithms easily. Lastly, due to its modularity, it is also possible to use the SCF in a semi-automated way: for example, if a stimulus is used which cannot be controlled by a computer, the stimulus generation module can be filled out by human action.