Off the grid Chatter: Arduino Walkie-Talkie making communication great again, One beep at a time

 Let’s face it, modern conventional communication methods through phones can be a real buzzkill. Imagine ourselves stranded in the middle of nowhere or just trying to drain your wallet on pricey walkie talkies, there’s got be a better way. Today we will be diving into the world of Arduino wizardry, where we will harness the power of 433MHz transceivers to revolutionize communication. 

Say goodbye to SIM cards and data plans that bleed your bank account dry. This system is completely offline. Why do you need the internet when you can just freely communicate. 

There are a lot of off-the-shelf solutions available, but what’s the fu in that? With Arduino, the world is your pearl. With minimal coding experience and a bit of magic, you can become a great Arduino coder. At its core, this Arduino walkie-talkie seems simple but oh! The possibilities are never-ending.  


How we worked: 

Our first thought about making this module was to make stand alone walkie-talkies using circuitry but that was too complicated to design, so to tackle that we started searching for alternatives to the central processing units and stumbled upon the treasure chest of microcontrollers. We went back and forth on which microcontroller to use, mostly between Arduino and Raspberry pi. Ultimately, Arduino came out on top mostly due to price comparison with a regular walkie talkie. A pair of a stand-alone walkie-talkie [1] is around 5000/- INR at minimum and one Raspberry pi [2] microcontroller itself is around 8000/- INR on Amazon. Arduino [3] on the other hand is just 600/- INR at best. Now that the CPU is decided, the only this left is to gather components and assemble them to make some magic. 




Components: 

Arduino Uno x 2 

433 MHz Transmitter x 1[4] 

Receiver x 1 

(20x4) LCD Display x 1[5] 

I2C module[6] 

Jumper wires 

Arduino case(optional) 


Set Up Hardware: 

Connect 433 MHz transmitter and receiver to the Arduino on the appropriate ports. Keep in mind that the I2C display will be connected to the receiving end Arduino.  

Write and dump Arduino Code: 

Next stop is software, you’ll need to write the code that controls the transmission and reception of messages between two Arduinos. As of now we will only be transmitting one predefined message from one Arduino to another. 


Transmitter: 

#include <RH_ASK.h> 

// Include dependant SPI Library  

#include <SPI.h>  

// Create Amplitude Shift Keying Object 

RH_ASK rf_driver; 

void setup() 

     // Initialize ASK Object 

     rf_driver.init(); 

void loop() 

     const char *msg = "Welcome to Tech Trends  "; 

     rf_driver.send((uint8_t *)msg, strlen(msg)); 

     rf_driver.waitPacketSent(); 

     delay(1000); 


Receiver: 

#include <RH_ASK.h> 

// Include dependant SPI Library  

#include <SPI.h>  

// Create Amplitude Shift Keying Object 

RH_ASK rf_driver; 

void setup() 

    // Initialize ASK Object 

    rf_driver.init(); 

    // Setup Serial Monitor 

    Serial.begin(9600); 

void loop() 

    // Set buffer to size of expected message 

    uint8_t buf[24]; 

    uint8_t buflen = sizeof(buf); 

    // Check if received packet is correct size 

    if (rf_driver.recv(buf, &buflen)) 

    { 

      // Message received with valid checksum 

      Serial.print("Message Received: "); 

      Serial.println((char*)buf);          

    } 


Testing and Debugging: 

This is the most crucial part in the project as it takes a lot of time to debug the whole system as extra components added to the project like I2C make hardware connections easy but complicates the software aspect of the project. 

Hooray! We have done it! Enjoy seamless and off-the-grid communication. Modify the code as per your need as right now it can only send one message which is predefined in the code itself. You can add user input on both sides and just like I said earlier limitless possibilities. 


Citations: 

[1]Sekuai Walkie Talkie CTCSS/DCS Handheld Amateur Radio Tranceiver Walkie Talkie Two Way Radio Long Range Black 2 Pack : Amazon.in: Toys & Games 

[2]Raspberry Pi 4 8GB RAM | All New Raspberry Pi Desktop Computer : Amazon.in: Computers & Accessories 

[3]RoboCraze UNO R3 SMD Board compatible with Arduino | Development Board with USB cable : Amazon.in: Fashion 

[4]Robodo W25 433Mhz RF Transmitter and Receiver Link Kit for Arduino : Amazon.in: Industrial & Scientific 

[5]Easy Electronics 20x4 LCD Display With Blue Backlight : Amazon.in: Computers & Accessories 

[6] Robotbanao IIC/I2C Serial Interface Adapter Module For 16x2 (1602) Character Alphanumeric LCD Display - Pack Of 1 : Amazon.in: Computers & Accessories 


 

References: 

 Using Inexpensive 433 MHz RF Modules with Arduino - YouTube 

Comments