This project has been design around HT12E and HT12D encoder / decoder chips from Holtek. With jumper selectable address on the receiver. The HT12E Encoder ICs are series of CMOS LSIs for Remote Control system applications. They are capable of Encoding 12 bit of information which consists of 8. By using the paired HT12E encoder and HT12D decoder we can easily transmit and receive 12 bits of parallel data serially. HT12E simply converts 12 bit.

Author: Kalkree Micage
Country: Brazil
Language: English (Spanish)
Genre: Travel
Published (Last): 28 September 2013
Pages: 27
PDF File Size: 8.31 Mb
ePub File Size: 18.96 Mb
ISBN: 722-7-85357-581-1
Downloads: 15005
Price: Free* [*Free Regsitration Required]
Uploader: Mikaktilar

I wondered whether these processors were still available – they are!

I began to think about how I could use this technology with the current range of micro-controllers such as the Arduino and the Raspberry Pi, together with other hf12d uses. I also thought it would be a great opportunity to fully investigate the operation of the two processors to help me better understand how I might use these in the future.


The encoder HT12E is htt12d of encoding information comprising 12 bits in total; 8 address bits and 4 data bits. The output from the encoder can be used in various ways; for example to feed a Radio Frequency or infrared transmitteror it could be directly connected to a decoding processor.

ht12d & ht12e

The outputs from the HT12D decoder can be used to switch connected logic circuitry or other attached devices via suitable interfaces. HT12E Encoder circuit The basic circuit arrangements for the encoder: Using the Raspberry Pi to control. I haven’t drawn any circuits for this as the interfacing is straight forward as both the Raspberry Pi and the HT12E operate at 3. The GPIO pin acting as the trigger function needs connecting via an inverter circuit.

I have included a simple Python3 ht12s below, ht12 prompts the user to enter a number between 0 and 15, and using Binary Coded Decimal, sets the AD8 – AD11 pins to convey the user entered number correctly. I have experimented further with this, connecting LEDs to the HT12D decoder data pins to ensure the transmitted and received data is presented correctly. I have referenced this before in an earlier blog and the direct link is: It could be said that this is a very convoluted way to use this technology but it was really useful to experiment and prove that it was possible.


The transmission of the data stream can be over an RF link or direct connection using 2-core cable. With the possibilities of using multiple decoders HT12D all ‘listening’ on their ht21e configured addresses it is possible for the Raspberry Pi or Arduino to control both the address values and control the use of the data pins.

It would be possible to control literally hundreds of external devices this way. Number 99 entered quits the script.

ElectronicAdventures: Data Encoder/Decoder HT12E/HT12D

ClearAll set A ports to ”. Trigger send trigger pulse. Posted by Nigel Cleaver at Pabitha Pabi 25 June at Newer Post Older Hg12d Home.