433 MHz RF module with Arduino Tutorial 1
- Virtual Wire (at ICStation)
- RadioHead - which supercedes VirtualWire
- RC-Switch for communication with remote controls
- Ninjablocks 433 Utilities
I will mention at this point however, that I did NOT use any libraries in this particular tutorial. That's right. I will show how easy it is to transmit data from one arduino to another using these RF modules WITHOUT libraries.
Also if you are looking for an easy way to record the signals and play them back without a computer - then jump to this tutorial.
Video

Project 1- RF Blink
Here are the parts that you will need to carry out this project:
Parts Required
- 2 x Arduino UNO or compatible boards
- Breadboard
- Wires
- RF Module (433 Mhz) - Transmitter and Receiver pair or the 315 Mhz version
The Transmitter and Receiver Fritzing Sketch
The Transmitter
| The transmitter has 3 pins, | |
| Notice the pin called "ATAD". It took me a while to figure out what ATAD stood for, when I suddenly realised that this was just a word reversed. It should be DATA (not ATAD). Nevertheless, this is the pin responsible for transmitting the signal. We will make the Arduino's onboard LED illuminate when the transmitter pin is HIGH, and go off when LOW as described in the following table. And this is the Arduino Sketch to carry out the data transmission. |
Arduino sketch - Transmitter
1 | /* |
The Receiver
If all goes to plan, the onboard LED on this Arduino should light up (and go off) at the same time as the onboard LED on the transmitting Arduino. There is a chance that the receiver may pick up stray signals from other transmitting devices using that specific frequency. So you may need to play around with the threshold value to eliminate the "noise". But don't make it too big, or you will eliminate the signal in this experiment. You will also notice a small delay between the two Arduinos. |
Arduino sketch - Receiver
1 | /* |
When a HIGH signal is transmitted to the other Arduino. It will produce an AnalogRead = 0.
When a LOW signal is transmitted, it will produce an AnalogRead = 400.
This may vary depending on on your module, and voltage used.
The signals received can be viewed using the Serial Monitor, and can be copied into a spreadsheet to create a chart like this:

Tutorial 2
In tutorial 2, we will receive and display a signal from a Mercator RF Remote Controller for Fan/Light.Tutorial 3
In tutorial 3 - we use the signal acquired from tutorial 2, and transmit the signal to the fan/light to turn the light on and off.Tutorial 4
In tutorial 4 - we use the information gathered in the first 3 tutorials and do away with the need for a computer. We will listen for a signal, store the signal, and then play it back by pressing a button. Similar to a universal remote ! No libraries, no sound cards, no computer. Just record signal and play it back. Awesome !! 
Visit my ArduinoBasics Google + page.
Follow me on Twitter by looking for ScottC @ArduinoBasics.
Have a look at my videos on my YouTube channel.

However, if you do not have a google profile...
Feel free to share this page with your friends in any way you see fit.











