In this era of Bluetooth, WiFi and IoT we are somewhere forgetting the old Radio frequency modulations used to transmit data wireless. Here I'm presenting a very simple wireless data link between a computer/laptop and an Arduino uno which can display the data sent from the computer terminal wirelessly on a 16x2 LCD.
This project can be used as a wireless message display board, the display can easily be changed to a dot matrix display or a larger LCD like 20x4. You can send text data over the wireless link which uses the ISM band frequency of 433MHz which is free and unlicensed.
This project can also used with multiple displays. A single transmitter sending data on a frequency of 433MHz and multiple receviers with LCDs can be used to display the same message on all the LCDs. It can be used to digital advertising purpose or for displaying other notices/messages.
Step 1: Parts Required
This part count for this project is very less and can be assembled within 2 hours.
1) Arduino Uno/Nano - 2 (one for the transmitter and one for receiver)
Note: I have used one Arduino UNO and one Arduino Nano due to non availability of two same Arduinos. Also, it doesn't matter what Arduino you use for Tx or Rx. Both work fine.
2) RF 433 MHz ASK Tx/Rx module - 1
Note: Please read about ASK in next step in order to understand how this module works. Also, this band is free and unlicensed all over the world.
3) 16x2 LCD -1
4)Breadboard and connecting wires/jumpers for making the connections and a USB cable for Arduino to Laptop interface.
And a good bench power supply for testing the project like the one I'm using E36312A triple output bench supply from Keysight Technologies.
Note: The bench power supply is used only for the testing of the project in the lab. The project can be powered using a battery to make it portable.
Step 2: Understanding the Wireless Transmission and ASK Modulation
Firstly let's talk about wireless transmission.
This is the era of wireless communication/technology. We can see the rise in number of devices that are using Bluetooth and WiFi these days. With the IoT revolution in the electronics industry as well as the ever increasing devices that needed the internet connectivity we had to shift to IPv6 from IPv4.
With these technological advances we are forgetting about some simpler and older radio frequency devices and schemes. More and more people are publishing sophisticated projects which use IoT, Lora-WAN and stuff even when it is not required in that project. A small project doesn't need such powerful wireless technology. It is a waste of resources.
Now let's learn a bit about our RF Tx/Rx pair.
The Tx/Rx pair that is used in this project uses a frequency of 433MHz which falls in the ISM band. ISM stands for Industrial, Scientific and Medical. This band of frequency is free to use and is unlicensed.
The Tx/Rx pair employs ASK modulation scheme for transmitting and receiving data. ASK stands for Amplitude shift keying which is one of the digital modulation techniques others being Frequency shift keying (FSK) and Phase shift keying (PSK).
Let's learn more about ASK. As I have mentioned earlier that ASK is a digital modulation technique, means it can be used to transmit digital data wirelessly over a carrier of 433 MHz. The carrier is a sine wave of 433MHz which is switched on or off depending upon the digital bit that is to be transmitted. In this way by switching the carrier on and off one can transmit 0 or 1 respectively.
For example, If I want to send 1010, I will first switch on the carrier, this carrier will be received on the receiver and it will interpret that a bit 1 has been transmitted. Similarly, if I now switch off the carrier, the receiver will not receive the signal and it will interpret that a 0 has been transmitted. See the picture for understanding the concept clearly.
Let's move on to the circuit diagram and connections.
Step 3: Circuit and Connections
Here's a brief about connection diagram.
First Arduino Uno is used as the transmitter. The data pin of 434 MHz Tx is connected to pin D12 of Arduino Uno.
The Tx module has 4 pins. Vcc goes to +5V,Gnd goes to Gnd, Ant is the antenna connect a small wire 10-12cm and data pin to pin 12 of Arduino.
The Rx module is connected to Arduino Nano. It also has 4 pins(some modules have 2 data and 3 gnd pins) Ignore them.
The data pin is connected to pin D11 of Nano. Vcc and Gnd are connected to +5V and gnd respectively.
Antenna is a long wire 10-12cm.
Vcc -> +5V
Gnd -> Gnd
Data -> Pin D12 of Uno
Ant- A long wire antenna
Vcc -> +5V
Gnd -> Gnd
Data -> Pin D11 of Nano
Ant- A long wire antenna
Step 4: Code
The code uses VirtualWire library for transmitting and receiver wireless data.
The file transmitter.ino contains the code for transmitter arduino
and receiver.ino contains the code for receiver arduino.
Here's the .zip library download and install it
Step 5: Testing the Project
After uploading the codes to both the Arduinos. Let the transmitter Arduino be connected to the Laptop.
Power up the receiver Arduino using a battery or external source of power.
Now, open serial monitor on your laptop by pressing Ctrl+Shift+M. Type a message string that you want to transmit.
End the string with a fullstop (.) and press enter. The string will be transmitted to the receiver and will be displayed on the LCD.
Here's a video which shows the project in action.