For the ultimate in flexibility, you can use a computer-controlled X10 controller or transceiver. Unlike computerized controllers like CM11 AU, these devices have no on-board logic; they simply allow a computer to issue and in some cases - receive X10 codes over the power line.
Although send-only devices are slightly cheaper, but the increased versatility of a transceiver unit such as a TM13 is worth the extra. A transceiver will allow the computer to respond to signals generated by key-presses, and to monitor the status of the appliance modules. These units interface to the computer in a variety of ways.
User friendly Windows compatible software is provided with the interface which includes graphical representations of switches, modules etc. to provide point-and-click control of modules, and easy setting of scheduled events and macros.
Events may be scheduled to occur at a particular time every day, on chosen days only, between chosen dates etc. You can also program the interface to turn lights on at dawn and off at dusk just by choosing your location from a worldwide list.
A command from a controller(such as a mini controller) normally operates a device directly, e.g. pressing A1 ON switches on the module with code A1. The computer interface, however, can be programmed to intercept a command, and respond to it by generating a whole group of commands called a macro. For example, pressing A1 ON on a controller might turn on stair lights and bedroom lights, then after 20 minutes dim the bedroom lights to 50% and turn off the stair lights, and finally turn off all lights 30 minutes later
Anyone planning to use X10 devices should be aware of a few issues.
Most embedded lighting controllers cannot be used with fluorescent lights. By `embedded' we mean devices that replace standard lightswitches or lampholders. The problem is that these devices do not have a neutral connection. The power supply to operate the electronics is derived by allowing a small current to `leak' through the light filament when it is turned off.
This current is not sufficient to light the bulb, but is sufficient to operate the controller. However, fluorescent lamps do not allow this leakage to take place; they have a very high electrical resistance in the `off' state. For similar reasons, very low power incandescent bulbs may not work either. 40 watts is the practical minimum. With bulbs rated lowed than this, the bulb may glow even when technically switched off, and not respond to the controller.
It is possible to obtain an X10-compatible lightswitch that do support fluorescent lamps, but a neutral is required. If your lighting system is a standard loop-in arrangement (most are) then you won't have access to a neutral. In theory, a neutral could be taken from elsewhere (e.g, a power ring), but this causes problems with isolation.
Another possibility is to mount an appliance controller module in the ceiling cavity near the light to be controlled, and get its neutral supply from the ceiling rose. The existing lightswitch wiring can then be modified at the ceiling rose so that the lightswitch pulses the control input of the X10 devices.