

The RAK 4631 is a low-power, long-range LoRaWAN module designed for Internet of Things (IoT) applications. Manufactured by RAK under the WisBlock series, this module combines a compact design with advanced features such as integrated GPS and support for multiple communication protocols. It is ideal for applications requiring remote sensing, environmental monitoring, asset tracking, and other IoT solutions where low power consumption and long-range communication are critical.








| Parameter | Specification | 
|---|---|
| Microcontroller | Nordic nRF52840 (ARM Cortex-M4, 32-bit, 64 MHz) | 
| LoRaWAN Module | Semtech SX1262 | 
| Communication Protocols | LoRaWAN, BLE 5.0, NFC | 
| GPS | Integrated Quectel L76-L GPS module | 
| Operating Voltage | 3.3V | 
| Power Consumption | Ultra-low power (sleep mode: ~2 µA) | 
| Flash Memory | 1 MB | 
| RAM | 256 KB | 
| Frequency Bands | 868 MHz (EU), 915 MHz (US), 923 MHz (AS) | 
| Operating Temperature | -40°C to +85°C | 
| Dimensions | 35 mm x 25 mm | 
The RAK 4631 module has a total of 40 pins, with the most commonly used pins described below:
| Pin Number | Pin Name | Description | 
|---|---|---|
| 1 | VCC | Power supply input (3.3V) | 
| 2 | GND | Ground connection | 
| 3 | GPIO1 | General-purpose I/O pin | 
| 4 | GPIO2 | General-purpose I/O pin | 
| 5 | UART_TX | UART transmit pin | 
| 6 | UART_RX | UART receive pin | 
| 7 | I2C_SCL | I2C clock line | 
| 8 | I2C_SDA | I2C data line | 
| 9 | SPI_MOSI | SPI Master Out Slave In | 
| 10 | SPI_MISO | SPI Master In Slave Out | 
| 11 | SPI_SCK | SPI clock | 
| 12 | SPI_CS | SPI chip select | 
| 13 | RESET | Reset pin | 
| 14 | ANT | Antenna connection for LoRaWAN | 
| 15 | GPS_TX | GPS module transmit pin | 
| 16 | GPS_RX | GPS module receive pin | 
For a complete pinout, refer to the official RAK 4631 datasheet.
Below is an example of how to send a LoRaWAN message using the RAK 4631 with the Arduino IDE:
#include <LoRa.h> // Include the LoRa library
// Define LoRa pins
#define LORA_SCK 5   // SPI clock
#define LORA_MISO 19 // SPI MISO
#define LORA_MOSI 27 // SPI MOSI
#define LORA_CS 18   // SPI chip select
#define LORA_RST 14  // Reset pin
#define LORA_IRQ 26  // IRQ pin
void setup() {
  // Initialize serial communication
  Serial.begin(9600);
  while (!Serial);
  // Initialize LoRa module
  Serial.println("Initializing LoRa...");
  if (!LoRa.begin(915E6)) { // Set frequency to 915 MHz
    Serial.println("LoRa initialization failed!");
    while (1);
  }
  Serial.println("LoRa initialized successfully.");
}
void loop() {
  // Send a test message
  Serial.println("Sending message...");
  LoRa.beginPacket();
  LoRa.print("Hello, LoRa!");
  LoRa.endPacket();
  // Wait 5 seconds before sending the next message
  delay(5000);
}
Note: Replace the pin definitions with the actual pins used in your setup. Ensure the LoRa library is installed in your Arduino IDE.
No LoRaWAN Signal Detected:
Module Not Responding:
GPS Not Acquiring Signal:
High Power Consumption:
Q: Can the RAK 4631 be used with other microcontrollers?
A: Yes, the RAK 4631 can interface with other microcontrollers via UART, I2C, or SPI.
Q: Is the RAK 4631 compatible with LoRaWAN gateways?
A: Yes, it is fully compatible with standard LoRaWAN gateways.
Q: How do I update the firmware?
A: Use the RAK DFU tool or the Arduino IDE to upload the latest firmware.
Q: Can I use the RAK 4631 for BLE applications?
A: Yes, the module supports BLE 5.0 for short-range communication.
For additional support, refer to the official RAK documentation or community forums.