X10 Lighting and appliance modules are cheap on Ebay, I wanted to control them with my HMI (ScadaBR) so I put a X10 and Modbus library together in an Arduino to turn on and off the modules.
CM17A
The Arduino can control the X10 Firecracker CM17A using a library found on the Arduino website. http://playground.arduino.cc/X10/CM17A
The library comes with a cool demo sketch that will loop through and turn on and off an X10 module.
Modbus
I merged the CM17A code with my favorite Arduino modbus library so that I could simply write to coils in the Arduino to command X10 modules. https://code.google.com/p/arduino-modbus-slave/
It was then a snap to set up ScadaBR to command the modules on and off with any device with a web browser such as my windows phone.
VIdeo
Links
X10 library
http://playground.arduino.cc/X10/CM17A
Modbus Library
https://code.google.com/p/arduino-modbus-slave/
ScadaBR
Direct download for the modbus library with regular modbus and X10Modbus sketches as well as the X10 Firecracker library. Download and install both libraries.
Relevant Blog Posts
Arduino Modbus PLC/RTU
https://electronhacks.com/2014/04/arduino-modbus-plc-rtu/
Home Automation HMI with Mango M2M
https://electronhacks.com/2014/04/afordable-arduino-modbus-plc-or-rtu/