LoRa (“long-range”) is an excellent wireless communication solution without networking capabilities. It’s a reliable, energy-efficient, encryption-secured, low-cost wireless connectivity technology. And as its name suggests, it offers an extremely long range. LoRa operates at the physical layer of an OSI model and is implemented at the chip level — excluding the network management protocol. This…
Understanding LoRa architecture: nodes, gateways, and servers
To understand all about nodes, gateways, and servers, first, we must understand what a LoRaWAN or LoRa network is. LoRaWAN (long-range wide area network) LoRaWAN is a low-power, wide-area network (LPWAN) protocol designed to enable long-range communication between LoRa-based devices and the internet. LoRaWAN builds on the underlying LoRa technology, adding network and application layer…
Revolutionizing RF: LoRa applications and advantages
In the world of wireless communication, LoRa (long-range) technology has been gaining popularity due to its long-range capabilities, low power consumption, and cost-effectiveness. There can be serval applications deployed because of the features like low cost and long range where only one temperature sensor is used to monitor the temperature of a city; with the…
How to build a LoRa gateway using Raspberry Pi
As its name suggests, long-range wide-area network or LoRaWAN technology is widely used for long-range, low-power communication in Internet-of-things (IoT) applications. In this article, we’ll guide you through the process of connecting an SX130x 868M LoRaWAN Gateway Module to a Raspberry Pi 4 using hardware attached on top (HAT). This setup creates a LoRaWAN gateway,…
How LoRa enables long-range communication
LoRa (Long Range) is a type of wireless communication technology designed to send information over long distances with low power consumption. It uses a special technique called chirp spread spectrum (CSS) modulation, which operates by continuously changing the frequency of a transmitted signal over time. This varying frequency generates a waveform (resembling the sound of…
How communication works between two LoRa end-node devices
Communication between two LoRa end-node devices can happen seamlessly. Both end-node devices include the LoRa E5 Mini Board, which switches quickly between sending and receiving messages — making two-way communication possible. In this setup, communication begins with one device sending a message and waiting for confirmation. Upon receipt, the receiving device sends a reply confirming…
RPi Python Programming 21: The SIM900A AT commands
In the previous tutorial, we covered how to interface a SIM900A GSM-GPRS modem with Raspberry Pi, Arduino, and desktop computers. SIM900A can communicate data with the controlling device over the universal asynchronous receiver/transmitter (UART), I2C, or SPI protocol. The modem is a piece of mobile equipment with an IMEI number that’s capable of all cellular…
RPi Python Programming 22: Calls & SMS using a SIM900A GSM-GPRS modem
In the previous tutorial, we covered the AT commands that are supported by a SIM900 GSM-GPRS modem. We’ve already discussed how to interface a SIM900A GSM-GPRS modem with Raspberry Pi, Arduino, as well as other microcontrollers and desktop computers. Now, it’s time to use this modem to make and receive calls, and send and receive…
RPi Python Programming 23: Interfacing a NEO-6MV2 GPS module with Raspberry Pi
In the previous tutorial, we learned how to interface a SIM900 GSM-GPRS modem with Raspberry Pi (RPi) and a desktop computer. We employed serial UART communication to “talk” with the SIM900 modem. By using bidirectional data communication with the modem via a standard UART interface, we were able to make/receive calls and send/receive SMS messages on RPi and…
RPi Python Programming 24: I2C explained
In the previous tutorial, we covered how to interface a NEO-6M GPS module with Raspberry Pi (RPi). The module communicates with RPi over the universal asynchronous receiver/transmitter or UART protocol. The UART is the most common point-to-point data communication protocol. But, it’s not the only serial communication protocol. In embedded electronics, I2C and SPI protocols are…
RPi Python Programming 25 – Synchronous serial communication in Raspberry Pi using I2C protocol
In the previous tutorial, we discussed the basics of the I2C protocol. In most of the embedded devices, either UART otherwise I2C is used for console messages. In this tutorial, we will discuss serial communication in Raspberry Pi using the I2C protocol. I2C in Raspberry Pi For serial communication over the I2C protocol, the Broadcom…
RPi Python Programming 26 – Interfacing ADXL345 accelerometer sensor with Raspberry Pi
In the previous tutorial, we discussed synchronous serial communication in Raspberry Pi using I2C protocol. In this tutorial, we will use the I2C interface of Raspberry Pi to communicate with a digital sensor. The digital sensor that we will talk with is the ADXL345 accelerometer. ADXL345 is a small, ultra-low power, 3-axis accelerometer sensor that…
Introduction to batteries and their types
What is a Battery? A battery is an electrochemical device that can store energy in the form of chemical energy. It translates to electric energy when the battery is connected in a circuit due to the flow of electrons because of the specific placement of chemicals. It was invented by Alessandro Volta, whereas Gaston Plante…
Non-invasive current sensor with Arduino
The idea of noninvasive current measurement is not new. Commercial devices are available which can measure current without any physical contact. However, the topic was not popular among the DIY community because of the complexity and nonexistence of the compact non-invasive sensors, which could be studied at low power. Luckily, we have small and reliable…
Arduino home security system using Sim900 Gsm module, Pir motion detector and magnetic door contact switch
In this tutorial i am going to make an arduino home security system. One can install this diy arduino security system project on his home main door. The diy arduino security system checks two things. First it checks if some one approached the door? Second it checks if door is opened by the person? When the…
Controlling IoT Devices through Emails over IMAP Protocol – IOT Part 48
In the previous tutorial, it was mentioned that IMAP protocol is a standard email protocol which is used to store email messages and retrieve them. It was also mentioned that IMAP protocol can be used in IoT applications where commands can be passed to IoT devices by emails. This can be really helpful in certain situations like when security might be the main concern. Also, emails can be sent on any network without any special application or permissions. The IoT devices can receive emails as email clients where they can read emails and process information contained in them.
RPi Python Programming 06: Python basics
In the previous tutorial, we discussed the Python language, its applications, implementations (including CPython, Jython, IronPython, and PyPy), and IDEs. We also learned how to write Python scripts and modules, and how to run Python scripts through an integrated development environment (or IDLE) and a Bash shell. Before we jump to controlling hardware via Python…
RPi Python Programming 05: Introduction to Python
In the previous tutorial, we successfully set up a Raspberry Pi (RPi) Linux desktop. Now let’s learn Python. We could start with how to control the hardware by using Python scripts, but that would defeat the purpose of using Raspberry Pi and a Very-High-Level-Language (VHLL) — such as Python — to control electronics. Certainly, you can…
RPi Python programming 04: Setting up Raspberry Pi Linux computer
In the previous article, we discussed the role of an operating system. We explored how Linux, as an open-source operating system, can be modified and used for mobile, desktop, server, cloud, mainframe, supercomputer, cluster, and embedded computing. Raspbian, the official OS for the Raspberry Pi (PRi), is based on Debian. This is a Linux distribution, which…
RPi Python Programming 03: Raspberry Pi as Linux System
In the previous article, we reviewed several Raspberry Pi models and considered which are most suitable depending on the application. Most of the time, you will be using RPi as a Linux computer. Raspbian, the official operating system for Raspberry Pi, is a variant of Debian OS (a Linux Distribution). Other operating systems are available, but…