LoRa Communication between two Arduino using LoRa Module SX1278

LoRa Communication between two Arduino using LoRa Module SX1278

There are number of communication technologies available for interaction between IoT devices today, and the most popular ones are Wi-Fi and Bluetooth. But the problem with Wi-Fi and Bluetooth technology is high power consumption. They also have other limitations like limited range, limited access points etc. ESP8266 module is the most popular Wi-Fi module used in IoT devices, using which we have previously built lot of IoT projects.

Cellular networks also have the same problems of high power consumption and both LAN and Cellular network are quite expensive to cover a wide area. The IoT industries introduced lots of technologies, but none of them was ideal for IoT devices, as they needed to transmit information to long distance without using much power, until the LoRa technology was introduced. LoRa Technology can perform very-long range transmission with low power consumption.

In this article, we will learn about LoRa technology and Arduino Lora Communication. Here we will interface SX1278 Lora Module with Arduino and establish LoRa communication between two Arduino Uno boards.

Communication Between Two Arduino Using LoRa module SX1278

What is LoRa?

LoRa (Long Range) is a wireless technology that offers long-range, low power, and secure data transmission for M2M (Machine to Machine) and IoT applications. LoRa is a spread spectrum modulation technology that is derived from chirp spread spectrum (CSS) technology. LoRa can be used to connect sensors, gateways, machines, devices, etc. wirelessly.

LoRa was introduced by a company called Semtech. LoRa Technologies works in different frequency bands in different countries: In the USA it operates in the 915 MHz band, in Europe region, it operates in the 868 MHz band and in Asia region it operates in the 865 to 867 MHz, 920 to 923 MHz band.

Working of LoRa is more like a cellular communication. LoRa communication block diagram is shown below. The signal from one LoRa Node travels to another Node through a LoRa Gateway. Network server gets signal from LoRa Gateway and sends it to the end-user through Application server.

According to the official information, LoRa can achieve a distance of 715km when there is no obstacle between the Node and Gateway.

LoRa Communication Block Diagram

Components Required

  • 2×Arduino Uno
  • 2×LoRa SX1278 Module
  • DHT11 Sensor
  • LCD 16×2 Module
  • Jumper Wires

Circuit Diagram

Circuit diagrams for LoRa transmitting and receiving side are given below. In this project, we are going to send temperature and humidity values from one Arduino to another using LoRa SX1278 module. The DHT11 sensor is connected to transmitting side, Arduino. So this Arduino will get temperature and humidity values from DHT11 and then send it to another Arduino via LoRa SX1278 module. These humidity and temperature values will be printed on LCD connected to second Arduino.

We previously used DHT11 Temperature and Humidity Sensor with Arduino and Raspberry Pi to build Iot based weather stations.

Transmitting Side- Interfacing LoRa with Arduino UNO

On the transmitting side, we will use an Arduino UNO with LoRa module and DHT11 sensor. The interfacing of the Arduino UNO with LoRa and DHT11 is shown below:

Arduino LoRa Communication Transmitter Circuit Diagram

The LoRa module consists of 16 pins, out of these six pins are GPIO pins, and four are Ground pins. This LoRa module operates at 3.3V, and so the 3.3V pin on LoRa is connected to the 3.3v pin on the Arduino UNO board. Complete connections are given in below table. DHT11 sensor is connected to A0 pin of Arduino.

Источник: iotdesignpro.com