Stufin
Home Quick Cart Profile

Grove - Long Range Radio 868MHz RFM95 LoRa Module

Buy Now on Stufin

Dimensions

25 x 20.5 mm (1 x 0.81 in)

Weight

5g (0.18 oz)

Interface

4-pin Grove connector

Power supply

3.3V to 5.5V

Antenna

External antenna connector (U.FL connector)

Applications

The Grove - Long Range Radio 868MHz RFM95 LoRa Module is suitable for a wide range of IoT applications, including

Wireless sensor networks

IoT devices

M2M (Machine-to-Machine) communication

Remote monitoring and control systems

Smart home automation

Industrial automation

Conclusion

The Grove - Long Range Radio 868MHz RFM95 LoRa Module is a versatile and reliable wireless communication module that is suitable for a wide range of IoT applications. Its long-range communication capabilities, low power consumption, and high sensitivity make it an ideal choice for applications that require reliable wireless communication over long distances.

Pin Configuration

  • Grove - Long Range Radio 868MHz RFM95 LoRa Module Pinout and Connection Guide
  • The Grove - Long Range Radio 868MHz RFM95 LoRa Module is a wireless communication module that operates on the LoRa protocol, designed for long-range and low-power applications. This module is equipped with 10 pins, which are explained below:
  • Pinout:
  • 1. GND (Ground):
  • Function: Provides a common ground connection for the module.
  • Connection: Connect to the ground pin of your microcontroller or power source.
  • 2. VCC (Power Supply):
  • Function: Supplies power to the module.
  • Connection: Connect to a 3.3V or 5V power source, depending on your system's requirements. Ensure the voltage supply meets the module's operating range (3.3V to 5.5V).
  • 3. DIO0 (Digital Input/Output 0):
  • Function: Used for communication with the microcontroller. Can be configured as an interrupt output or a digital output.
  • Connection: Typically connected to a digital input pin on your microcontroller (e.g., Arduino's digital pin 2).
  • 4. DIO1 (Digital Input/Output 1):
  • Function: Used for communication with the microcontroller. Can be configured as an interrupt output or a digital output.
  • Connection: Typically connected to a digital input pin on your microcontroller (e.g., Arduino's digital pin 3).
  • 5. DIO2 (Digital Input/Output 2):
  • Function: Used for communication with the microcontroller. Can be configured as an interrupt output or a digital output.
  • Connection: Typically connected to a digital input pin on your microcontroller (e.g., Arduino's digital pin 4).
  • 6. DIO3 (Digital Input/Output 3):
  • Function: Used for communication with the microcontroller. Can be configured as an interrupt output or a digital output.
  • Connection: Typically connected to a digital input pin on your microcontroller (e.g., Arduino's digital pin 5).
  • 7. NSS (Network Sync Signal):
  • Function: Used for SPI communication. Acts as the chip select signal for the RFM95 module.
  • Connection: Typically connected to a digital output pin on your microcontroller (e.g., Arduino's digital pin 10).
  • 8. SCK (Serial Clock):
  • Function: Used for SPI communication. Provides the clock signal for data transfer.
  • Connection: Typically connected to a digital output pin on your microcontroller (e.g., Arduino's digital pin 13).
  • 9. MOSI (Master Out Slave In):
  • Function: Used for SPI communication. Transmits data from the microcontroller to the RFM95 module.
  • Connection: Typically connected to a digital output pin on your microcontroller (e.g., Arduino's digital pin 11).
  • 10. MISO (Master In Slave Out):
  • Function: Used for SPI communication. Receives data from the RFM95 module and sends it to the microcontroller.
  • Connection: Typically connected to a digital input pin on your microcontroller (e.g., Arduino's digital pin 12).
  • Connection Structure:
  • When connecting the Grove - Long Range Radio 868MHz RFM95 LoRa Module to your microcontroller, ensure that you follow the connection structure below:
  • GND -> Ground pin on the microcontroller or power source
  • VCC -> Power supply pin on the microcontroller or power source
  • DIO0 -> Digital input pin on the microcontroller (e.g., Arduino's digital pin 2)
  • DIO1 -> Digital input pin on the microcontroller (e.g., Arduino's digital pin 3)
  • DIO2 -> Digital input pin on the microcontroller (e.g., Arduino's digital pin 4)
  • DIO3 -> Digital input pin on the microcontroller (e.g., Arduino's digital pin 5)
  • NSS -> Digital output pin on the microcontroller (e.g., Arduino's digital pin 10)
  • SCK -> Digital output pin on the microcontroller (e.g., Arduino's digital pin 13)
  • MOSI -> Digital output pin on the microcontroller (e.g., Arduino's digital pin 11)
  • MISO -> Digital input pin on the microcontroller (e.g., Arduino's digital pin 12)
  • Note:
  • Ensure that you use a logic level converter if your microcontroller operates at a voltage other than 3.3V or 5V.
  • The RFM95 module requires a 3.3V or 5V power supply. Do not connect it to a power source with a voltage outside the operating range.
  • When using the module with Arduino, ensure that you use the correct libraries and configure the SPI pins correctly.
  • By following this pinout and connection guide, you can successfully integrate the Grove - Long Range Radio 868MHz RFM95 LoRa Module into your IoT projects.

Code Examples

Grove - Long Range Radio 868MHz RFM95 LoRa Module Documentation
Overview
The Grove - Long Range Radio 868MHz RFM95 LoRa Module is a wireless communication module based on the RFM95 chip, which operates on the 868MHz frequency band and supports LoRa (Long Range) modulation. This module provides a long-range, low-power, and low-data-rate wireless communication solution for IoT applications.
Pinout
The module has a 10-pin interface, with the following pinout:
| Pin | Function |
| --- | --- |
| 1 | GND |
| 2 | VCC (3.3V) |
| 3 | RST (Reset) |
| 4 | NSS (Chip Select) |
| 5 | SCK (Clock) |
| 6 | MOSI (TX) |
| 7 | MISO (RX) |
| 8 | IRQ (Interrupt) |
| 9 | DIO0 (Data Out 0) |
| 10 | DIO1 (Data Out 1) |
Programming
The Grove - Long Range Radio 868MHz RFM95 LoRa Module can be programmed using various microcontrollers, such as Arduino boards. The following examples demonstrate how to use this module in different contexts:
### Example 1: Basic LoRa Communication using Arduino
In this example, we will use two Arduino boards, one as the transmitter and the other as the receiver, to demonstrate basic LoRa communication.
Transmitter Code
```cpp
#include <RH_RF95.h>
#define RFM95_CS 10
#define RFM95_RST 9
#define RFM95_INT 2
RH_RF95 rf95(RFM95_CS, RFM95_RST, RFM95_INT);
void setup() {
  Serial.begin(9600);
  while (!rf95.init()) {
    Serial.println("LoRa radio init failed");
    delay(1000);
  }
  Serial.println("LoRa radio init OK");
}
void loop() {
  char data[] = "Hello, LoRa!";
  rf95.send((uint8_t )data, strlen(data));
  rf95.waitPacketSent();
  delay(1000);
}
```
Receiver Code
```cpp
#include <RH_RF95.h>
#define RFM95_CS 10
#define RFM95_RST 9
#define RFM95_INT 2
RH_RF95 rf95(RFM95_CS, RFM95_RST, RFM95_INT);
void setup() {
  Serial.begin(9600);
  while (!rf95.init()) {
    Serial.println("LoRa radio init failed");
    delay(1000);
  }
  Serial.println("LoRa radio init OK");
}
void loop() {
  if (rf95.waitAvailableTimeout(1000)) {
    uint8_t buf[RH_RF95_MAX_MESSAGE_LEN];
    uint8_t len = sizeof(buf);
    if (rf95.recv(buf, &len)) {
      Serial.print("Received: ");
      Serial.println((char )buf);
    }
  }
}
```
### Example 2: LoRaWAN Communication using MicroPython
In this example, we will use a MicroPython board, such as the Pycom LoPy, to connect to a LoRaWAN network.
Code
```python
import machine
import lora
lora.init(mode=lora.LORA_MODE_NODE, freq=lora.LORA_FREQ_868)
while True:
    payload = "Hello, LoRaWAN!"
    lora.send(payload)
    print("Packet sent")
    machine.sleep(10000)  # Send every 10 seconds
```
Note: The above examples are basic demonstrations of the module's capabilities. For a more comprehensive and robust implementation, consider using libraries and frameworks specifically designed for LoRa and LoRaWAN communication.
Resources
RFM95 Datasheet: [https://www.hoperf.com/rf_modules/rfm95.html](https://www.hoperf.com/rf_modules/rfm95.html)
 LoRaWAN Specification: [https://www.lora-alliance.org/wp-content/uploads/2020/02/lorawan_specification_v1.1.pdf](https://www.lora-alliance.org/wp-content/uploads/2020/02/lorawan_specification_v1.1.pdf)
 Grove - Long Range Radio 868MHz RFM95 LoRa Module Documentation: [https://wiki.seeedstudio.com/Grove-Long_Range_Radio_868MHz_RFM95_LoRa_Module/](https://wiki.seeedstudio.com/Grove-Long_Range_Radio_868MHz_RFM95_LoRa_Module/)