Generic Wireless Receiver

This is a DIY project for an RS232/RS485 Generic Wireless Receiver for all X-10 RF protocols and several security and other protocols. It can be constructed on our general purpose GP-DIY-PCB printed circuit board. It can be configured as RS232/RS485 or RS232 only. It supports protocols with SOF (Start Of Frame) pulses ranging from 2.0 to 9mS, pulse width or space width modulation, and 14 to 48 data bits. Users can configure it to limit the number of protocols it will report. The receivers are available with a center frequency ranging from 300-500MHz. The center frequency is tunable over a wide range (about 50MHz). Using the receiver with an eggbeater antenna that incorporates a wideband preamp (~20dB gain) will give typical range in excess of 200 feet. If used with roZettatm in RS232 mode, the receiver can be powered from roZettatm over the serial cable.

The protocols of interest are illustrated in simplified form below. All use Amplitude Shift Keying (ASK) and mark the start of the data frame (SOF) with a pulse/space pair that are of longer duration (2-9mS) than the pulse/space pairs used in the data section (0.5-1.6mS). For the data, there are two variations. One uses constant pulse width and varies the space width to denote a 0-bit versus a 1-bit while the other uses constant space width and varies the pulse width to denote a 0-bit versus a 1-bit. In both cases, it is the time between rising edges that determines whether a bit is a 0 or 1. The various protocols use different numbers of data bits (from 14 to 44 in those of interest). All of the protocols of interest mark the end of the data frame (EOF) with a short pulse (followed by a lengthy silence in all but one protocol).

This makes it fairly easy to devise an algorithm and program a PIC to handle all of these similar protocols. These include various security system sensors, motion detectors, garage door sensors and all of X-10's RF devices (standard for lights and appliances, security devices, CR14 camera remote, and Digimax 210 RF thermostat). The PIC measures the modulation depth (pulse amplitude minus space amplitude) at the input to the dataslicer (analog output on the 8-pin receivers). This is an excellent proxy for RSSI (Received Signal Strength Indicator) and can be used for tuning the receiver to the particular frequency of interest.

For our purposes we just need to decode the pulse/space sequences to a binary representation which is output as a hexadecimal string. There is no way to independently ascertain the original meaning of the code within whatever system generated it. Even our definitions of logic 0 and logic 1 are somewhat arbitrary (although NEC uses the same scheme). However, all we need is a reproducible result - we can assign our own meaning as long as a specific event always results in a specific output.

Copyright: No part may be reproduced except as authorized by written permission. This restriction extends to reproduction in all media.