glolab.gif (9603 bytes)      





ORDER PAGE                                     FOR KITS AND COMPONENTS




Pyroelectric Infrared Sensor

Fresnel lens

FIFO memory


Make your own PC boards

How encoders and decoders work

How Encoders and Decoders work

 The radio frequency spectrum is filled with noise and other signals, especially those frequencies where unlicensed transmitter operation under FCC part 15 rules is allowed. When using a wireless remote control system it is desirable to have a way of filtering out or ignoring those unwanted signals to prevent false data from being received.           

One way to accomplish this is to use microprocessors at the transmitter and receiver that are programmed with error detection and correction algorithms something like those used in modems. A much simpler way is to use an encoder IC at the transmitter and a decoder IC at the receiver. These ICs automatically generate and decode multiple serial codes that must match before data is accepted as valid.

In the early days of  "radio control", before these coding ICs were available, radio controlled garage doors sometimes opened themselves when they received transmissions from a plane passing overhead or a two-way radio operating in the area. Encoding and decoding is now used in most wireless control systems to prevent this type of interference and to provide security.

Coding ICs are made by Motorola and Holtek. Jameco has some Motorola and Holtek devices. Digi-key has the complete line of Holtek. We will use the Holtek HT-680 encoder and HT-694 decoder as an example of how these devices work. They cost less than $3.00 each.

ht-680.gif (6741 bytes)

Both the HT-680 and HT-694 are available in 18 pin DIP packages and in surface mount packages. In addition to encoding and decoding functions, these devices have four data channels.

The HT-680 encoder has 8 tri-state address pins 10 through 17 that can be left open, connected to +V or connected to ground. This gives thousands of possible addresses that you can program. If you don't want to select any address you can just leave all 8 pins open. A good compromise is to install a 4 position DIP switch at address pins 10, 11, 12 and 13 and ground one side of each switch. This gives 16 binary address selections by either leaving the address pins open or connecting them to ground. Pins 14 - 17 can be left open. In addition to providing security the reason for using addresses is so you can have several transmitters and receivers close together and control which transmitter sends to which receiver.

Upon being triggered by applying an up level to the transmit enable (TE) pin 6 for a few milliseconds, the encoder automatically generates and serially sends three groups (packets) of pulses containing address and data information from data out pin 5 to a transmit circuit or module. Each group repeats the same address and data information. If TE is held at an up level, transmission of the three groups will continue to repeat as long as it is held up.

The rate at which these pulses are generated is controlled by an on-chip oscillator. The frequency of the oscillator is controlled by a resistor connected to pins 7 and 8. A 390K resistor sets the frequency at 100 KHz which is recommended by Holtek. A 120K resistor will set the frequency to 250 KHz which will give faster data transfer rate if required. It takes about 90 milliseconds to send the three groups of automatically encoded pulses at an oscillator frequency of 100 KHz and about 54 milliseconds at 250 KHz. Since each group in a sequence of three groups repeats the same data, the maximum number of times that you can change the input data to the encoder from zero to one or from one to zero is about 18 times per second at an oscillator frequency of 250 KHz (1000 ms / 54 ms). After initiating a transmit sequence input data should be kept valid for the duration of the three group sequence. Obviously this is not a high data rate system but it is more than adequate for most wireless control applications.

ht-694.gif (7836 bytes)

The HT-694 decoder oscillator resistor connected to pins 7 and 8 must be of the same value as that in the transmitter so the oscillator frequencies are synchronized. The decoder must have its address pins configured the same as the address pins in a transmitter to receive data from that transmitter.  When the decoder receives serial data into input pin 6 from a receiver circuit or module, it compares the three groups of address and data pulses. If at least two of the three groups are the same, the data is considered valid and is transferred to output pins 1 through 4. The data that appears at these pins is exactly the same as the data applied to the transmitter data pins 1 through 4. All pins can be down, all up or any combination. You can use these outputs to drive individual circuits or devices, or since there are four pins you can send four bits of information in binary format to represent a decimal count of 0 to 15.

The HT694 has momentary data outputs. Data remains on the output pins only as long as data is being received. If you need latched data, you can use a HT-684L which has the same pin connections and provides latched data outputs that retain the last data sent until new valid data is received. When any valid data is detected in either a HT694 or HT684L, a momentary valid transmit (VT) pin 5 goes up only as long as valid data is being received.

These devices do not provide error correction. They just accept valid data and reject corrupted data. This means that a control signal that is corrupted will not be received and must be sent again.

There are many other types of Holtek devices providing up to 8 data outputs, negative transmit enable and transmit enabled by data input. Holtek devices are used in our Wireless Control kit and are recommended for use with our Wireless Modules. You can download Holtek data sheets in PDF format from Holtek.





FastCounter by LinkExchange

Copyright 1999
Glolab Corporation
Updated January, 1999