X10 Transmitter

After building X10 receivers in all kind of variations, I looked into the possibility of a X10 transmitter design. It took quite some time to figure out the right driver and to write the PIC code for transmitting X10 sequences. But after some time I finished my first 4 button X10 transmitter! The transmit only unit has 4 programmable buttons. Each button can be set to transmit On, Off, All lights on, All lights Off, All units Off to a programmable house and unit address. The design uses a 8 pin PIC (12F683). The transmit frequency is generated by the PWM module of the PIC. The internal oscillator is calibrated by means of the 50Hz power line frequency. In this way the transmit frequency is as close as possible to 120kHz.

Here is the schematic of the 4 button transmitter and the finished unit.

After being able to receive and transmit X10 sequences I decided to build an X10 power line modem. The unit had to be CM11A compatible and should have a USB interface. I used a 18F2455 for this design (PIC code written in C). The unit only supports receiving and transmitting X10 code. I did not build in the clock, macro possibilities etc. After some bug fixes and hardware improvements, the unit performed much better than the original CM11A (which probably is not surprising).