I also build some X10 sensor units. These units use the 18F2455 for general X10 tasks, and a second PIC 16F819 for controlling the sensors. Communication between the two processors is done by means of the SPI bus. For transmitting the data on the power line, I used the extended X10 protocol. I have build 2 variations: one to measure temperature and light intensity, and one to measure pressure, humidity and temperature.
Temperature and light sensor
The temperature is measured by a LM135 and the light intensity is measured by a Siliconex NSL-06S53. The sensor values are converted to digital by the internal AD converter of the 16F819 PIC. The unit can be put in program mode, after which the house address, unit address and command codes can be set by sending X10 commands. It is also possible to calibrate the temperature sensor by sending a calibration value in programming mode. Temperature and light values can be requested from the unit by sending extended X10 commands. The unit autonomously transmits temperature whenever the temperature changes. Here you can find the specification of the TL01.
Pressure and humidity sensor