Found 381 Articles for Hardware

Interface Arduino with LoRa module

Yash Sanghvi
Updated on 30-Jul-2021 16:20:53

2K+ Views

In this article we will see how to interface Arduino with the LoRa module E32. LoRa stands for Long Range. It uses license-free sub-GHz RF bands for operation. These bands are different in different countries. In India, the permissible band is 865-867 MHz. LoRa is very ideal for IoT applications thanks to its long range and low power consumption. However, the achievable data rates are limited (0.3 to 27 kbits/second). Longer the range, lower the data rate.The E32 module that we will use looks like the one below. Depending on the frequency the module variant changes. For example, the one ... Read More

Interface Zigbee with Arduino

Yash Sanghvi
Updated on 30-Jul-2021 16:17:46

11K+ Views

Zigbee is a wireless communication protocol targeted for battery powered devices (it has both low power and low cost). It generally operates in the 2.4GHz range (although there are geographic variations), and supports data ranges from 20 to 250 kbits/s.The transmission distance though, is small compared to the likes of LoRa. It is 10 to 100 m, whereas LoRa can transmit over a few kilometers. Another thing to note is that Zigbee communication doesn’t work very well if there is no line of sight between transmitter and receiver.Even minor obstacles have been observed to significantly degrade the communication. Keep these ... Read More

Send SMS using a GSM module connected to Arduino

Yash Sanghvi
Updated on 30-Jul-2021 16:14:39

11K+ Views

In this article, we will see how to interface Arduino with a GSM Module, and send SMS using the module. You will need the following −Arduino boardA GSM Module (SIM800C, SIM900A, are popular examples, but you can have any other module as well)A GSM (2G) SIM Card, or a 4G SIM Card with 2G fallback option (Jio SIM Cards won’t work for this project)GSM AntennaYou could also get a GSM Module development board, like the one below (the SIM Card Holder is on the other side of the board) −A GSM Module interacts with a microcontroller via UART (see the ... Read More

Queue in FreeRTOS in Arduino

Yash Sanghvi
Updated on 30-Jul-2021 16:09:29

2K+ Views

Queue is a data structure that helps exchange data between different tasks or between tasks and interrupts. It holds a finite number of items (defined at the time of initialization) and operates in the FIFO mode.We will walk through an example that comes in with the FreeRTOS library, to understand queues.You can find the example in − File → Examples → FreeRTOS → StructQueue.In this code, two tasks read analog values from different analog pins, and pass these values in a queue. Another task reads the values from the queue and prints them onto the Serial Monitor. There is a ... Read More

How to Use isGraph() in Arduino?

Yash Sanghvi
Updated on 30-Jul-2021 12:53:49

304 Views

The isGraph() function is very similar to the isPrintable() function in Arduino. The only difference is that isGraph() returns true only if the character being printed has some content.So, blank space gets excluded by isGraph() but included by isPrintable(). All normal characters, numbers, special characters, which have some content will return true when passed through isGraph().SyntaxThe syntax is −isGraph(myChar)Where myChar is the character being checked. A quick question. Will the tab and new line characters return true with isGraph().ExampleValidate your answer with a simple code like below −void setup() {    // put your setup code here, to run once: ... Read More

shiftIn() and shiftOut() in Arduino

Yash Sanghvi
Updated on 30-Jul-2021 12:52:28

2K+ Views

shiftIn() and shiftOut() commands in Arduino are, very loosely speaking, software implementations of SPI. Of course, SPI is much faster, but SPI can work only on some specific pins of Arduino. shiftIn() and shiftOut() can use any two GPIOs of Arduino (not some specific pins like SPI).Both shiftIn() and shiftOut() require two digital pins, one dataPin and one clockPin.The dataPin will shift in or shift out a byte (8 bits) of data, 1 bit at a time. The clockPin synchronizes the data transfer. It is generally kept low, and for each bit transfer, it goes HIGH and then back to ... Read More

pulseIn() and pulseInLong() in Arduino

Yash Sanghvi
Updated on 30-Jul-2021 12:50:29

3K+ Views

If there is an incoming pulse on a pin, and you need to measure the duration of the pulse then the pulseIn() function comes in handy.SyntaxThe syntax is −pulseIn(pin, value)Where pin is the number of the pin on which you wish to measure the pulse. The value is the level of the pulse. It can be HIGH or LOW.For example, if you set the value to HIGH, it means that as soon as the voltage on the pin goes from LOW to HIGH, the measurement of the time will start. It will stop when the voltage on the pin goes ... Read More

How to Perform Basic Linear Algebra on Arduino?

Yash Sanghvi
Updated on 26-Jul-2021 11:51:54

2K+ Views

The BasicLinearAlgebra library helps represent matrices and perform matrix math on Arduino. To install it, search for 'BasicLinearAlgebra' in the Library Manager.Once installed, go to: File → Examples → BasicLinearAlgebra → HowToUseAs the name suggests, this example shows how to use this library. While the comments in this example do much of the explanation, here are a few pointers that help illustrate the use of this library −You need to include the library and define the BLA namespace before getting started, as all the functions are wrapped up inside the BLA namespace.#include using namespace BLA;A matrix is defined using ... Read More

Complex numbers operations in Arduino

Yash Sanghvi
Updated on 26-Jul-2021 11:50:26

940 Views

The Complex library by RobTillart helps perform complex number math in Arduino. In order to install this library, you can search for 'Complex' in library manager. The library can be found on GitHub. (Pay attention to the Readme. The library doesn't compile for Due and Teensy 3.5. A solution is provided there).Once installed, go to: File → Examples → Complex and open the complex.ino example.This example covers all the operations that you can perform with complex numbers. While the example is too large to reproduce here, here are a few points to note −Complex numbers are defined as Complex var(real, ... Read More

Serial Filtering Library in Arduino

Yash Sanghvi
Updated on 26-Jul-2021 11:44:30

1K+ Views

The Serial filtering library in Arduino helps you to apply some low pass filters and the median filter on any incoming data, to give you the filtered output. The GitHub repo of this library can be found here, and it is pretty detailed.In order to install the library, download the source code from GitHub, and place the 'Filter' folder in the libraries folder of Arduino (on Windows, the path is typically: C:/Users//Documents/Arduino/libraries)Once that is done, in the Arduino IDE, open File→Examples→Filter and pick an example of your choice (firFilter for example)As you can see, the code is quite straightforward.#include ... Read More

Advertisements