Fork me on GitHub

Project Notes

#064 RFSwitchASK

Simple data communications using ASK protocol over 433Mhz RF transmitter and receiver set.

Here’s a quick video of the circuit in action:

RFSwitchASK demo

Notes

This is a continuation of the RFSwitch project which demonstrated simple RF analog communication with a pair of inexpensive 433 MHz modules.

This project adds microcontrollers at both ends and runs a digital transission over the RF link using an Amplitude Shift Keying (ASK) protocol.

Here I’m using the ASK implementation provided by the RadioHead library.

One thing that became immediately clear is that the ASK protocol has done an excellent job of dealing with the noise that was so much in evidence with the analog RFSwitch project.

I’ve only been transmitting at short distances however (5m max), but I’ve yet to even need to attach an antenna to the RF modules.

Sender

The sender is an Arduino Nano (no particular reason why, except it was handy). It periodically sends an on or off signal, with an LED to indicate what it has sent.

The data sent is actually the bytes representing the actual words “on” or “off”, just to play with some different data types on the wire. The default maximum message length implemented by the ASK library is 60 bytes.

Receiver

The receiver is an Arduino Uno (again, no particular reason why, except it was handy).

It polls for data, and when it receives a valid packet, it decodes it as a string and checks for the on/off state. It then sets its LED in accordance. So when sender/receiver are running, their respective LEDs should flash pretty much in unison (with a slight delay at the receiving end)

Construction

The Breadboard

The Schematic

The Build

Credits and References

About LEAP#64 RadioASKArduino
Project Source on GitHub Return to the LEAP Catalog

This page is a web-friendly rendering of my project notes shared in the LEAP GitHub repository.

LEAP is my personal collection of electronics projects, usually involving an Arduino or other microprocessor in one way or another. Some are full-blown projects, while many are trivial breadboard experiments, intended to learn and explore something interesting (IMHO!).

The projects are usually inspired by things found wild on the net, or ideas from the sources such as:

Feel free to borrow liberally, and if you spot any issues do let me know. See the individual projects for credits where due. There are even now a few projects contributed by others - send your own over in a pull request if you would also like to add to this collection.