Let Raspberry Pi’s communicate with each other per 433MHz wireless signals

25. January 2017
2603 Views
1 Comments

Maybe some of you thought about how to let some RaspberryPi’s communicate with each other wirelessly. For this purpose small 433MHz modules are ideal, which are already available for a few bucks.

Therefore in this tutorial I want to show how two (or more) RaspberryPi’s can “talk” with each other. But do not worry, if you have only one Raspberry Pi, you can do it also.

 

Hardware

  • 2 Raspberry Pi’s (at a pinch only one will do)
  • 433 MHz Transmitter-Receiver Set (US / UK), if both Pi’s should send and receive you need 2 sets
  • Female – Female jumper wires (US / UK)
  • Breadboard (US / UK)

 

Assembling

The set consists of a transmitter (square, 3 pins) and a receiver (4 pins). Both are very small and therefore also ideal for other purposes. The receiver module has two data pins in the middle, from which we only need one.

443mhz 433mhz
 

RaspberryPiTransmitterReceiver
 Pin 2 (5V) VCC VCC
 Pin 6 (GND) GND GND
 Pin 11 (GPIO17) – RPi Nr.1 ATAD —-
 Pin 13 (GPIO27) – RPi Nr.2 —- DATA (to the left of GND)

 

If you have only one Raspberry or you want that two Pi’s can send and receive, connect transmitter and receiver to the same Pi.

 

Preparation

Before we can test the actual software, we need a few libraries. Theses must be installed on all Pi’s that are communicating.
First of all wiringPi is required. If yave you already installed this previously, you can jump to the next installation (if the command gpio -v returns a result, it is installed).

First, we update the packages. This may take several minutes.

sudo apt-get install git-core
sudo apt-get update
sudo apt-get upgrade

Then we clone wiringPi (git must be installed) and install it.

git clone git://git.drogon.net/wiringPi && cd wiringPi &&./build

Now gpio readall should show the pin allocation.
We need a library that simply allows us to send our data via the transmitter and receive it through the receiver module.

git clone https://github.com/ninjablocks/433Utils.git

This library contains corresponding scripts for both Arduino and Raspberry Pi. Now we go to the folder containing the scripts for the Raspberry Pi and compile them.

cd 433Utils/RPi_utils
make all

 

Testing

Now it‘s time to test. To do this, we activate the receiver first. Make sure that you are in the folder 433Utils/RPi_utils.
sudo ./RFSniffer

As soon as a code is received, it will appear here.

Next, we want to send. For this we go to the other Raspberry and run the following command (if you have only one Pi, just open a second shell window, eg by using putty).

sudo ./codesend 1234

The sent number you can enter by yourself. E.g. by using ASCII numbers, a text can be send.

Have fun trying!

One Response

Leave a Comment

Your email address will not be published.

Subscribe to Raspberry Pi Tutorials and don't miss any new Tutorial!