Stufin
Home Quick Cart Profile

RFM69 FSK Transceiver Module

Buy Now on Stufin

Operating Frequency

315 MHz, 433 MHz, 868 MHz, or 915 MHz, depending on the specific module variant

Modulation

FSK (Frequency Shift Keying)

Data Rate

Up to 300 kbps

Sensitivity

-120 dBm (receiving) and +20 dBm (transmitting)

Output Power

Up to +20 dBm

Range

Up to 100 meters (line of sight) or 1 km (with external antenna)

Low Power Consumption

16 mA (receiving) and 130 mA (transmitting)

Supply Voltage

1.8V to 3.6V

Microcontroller Interface

SPI (Serial Peripheral Interface) or 2-wire serial interface

Operating Temperature

-20C to +70C

Dimension

16 mm x 16 mm x 4 mm (module size)

Additional Features

Built-in Voltage RegulatorAllows for a wide range of supply voltages
Automatic Gain Control (AGC)Ensures optimal receiver performance
Digital RSSI (Received Signal Strength Indicator)Provides signal strength information
WOR (Wake-on-Radio)Allows the module to wake up from sleep mode upon receiving a signal
AES-128 EncryptionProvides secure data transmission (optional)

Package and Pinout

The RFM69 FSK Transceiver Module comes in a compact 16-pin SMD package. The pinout is as follows

| Pin | Function |

| --- | --- |

| 1 | VCC |

| 2 | GND |

| 3 | SI (Serial Input) |

| 4 | SO (Serial Output) |

| 5 | SCK (Clock) |

| 6 | CS (Chip Select) |

| 7 | RST (Reset) |

| 8 | IRQ (Interrupt) |

| 9 | ANT (Antenna) |

| 10 | GND |

| 11 | VCC |

| 12 | NC (Not Connected) |

| 13 | NC (Not Connected) |

| 14 | NC (Not Connected) |

| 15 | NC (Not Connected) |

| 16 | GND |

Applications

The RFM69 FSK Transceiver Module is suitable for various wireless communication applications, including

IoT (Internet of Things) devices

Wireless sensor networks

Remote control systems

Home automation systems

Industrial automation systems

Conclusion

The RFM69 FSK Transceiver Module is a versatile and high-performance wireless communication module, ideal for a wide range of applications. Its low power consumption, high sensitivity, and robust feature set make it an attractive option for designers and engineers looking to implement wireless communication in their projects.

Pin Configuration

  • RFM69 FSK Transceiver Module Pinout Explanation
  • The RFM69 FSK Transceiver Module is a popular IoT component used for wireless communication. It has a total of 16 pins, which are divided into three categories: Power Supply, Digital Interface, and RF Antenna. Here's a detailed explanation of each pin, along with connection guidelines:
  • Power Supply Pins (4)
  • 1. VCC (Pin 1): This pin supplies power to the module. Connect it to a 3.3V or 5V power source, depending on the specific module's rating. Make sure to use a voltage regulator if your power source is higher than the recommended voltage.
  • 2. GND (Pin 2): This pin is the ground connection for the module. Connect it to the ground of your circuit or power source.
  • 3. VREG_IN (Pin 15): This pin is the input for the internal voltage regulator. You can connect an external power source to this pin, but it's not necessary if you're using the VCC pin.
  • 4. VREG_OUT (Pin 16): This pin is the output of the internal voltage regulator, which provides a stable 1.8V power supply for the module's internal circuitry. You can use this pin to power other components in your circuit, but be mindful of the current draw.
  • Digital Interface Pins (8)
  • 1. SDN (Pin 3): This pin is used to shut down the module. Connect it to GND to enable the module, or leave it floating to shut it down.
  • 2. DIO0 (Pin 4): This pin is a digital input/output pin used for various functions, such as irq, busy, or packet sent indicators.
  • 3. DIO1 (Pin 5): Similar to DIO0, this pin is used for digital input/output functions.
  • 4. DIO2 (Pin 6): This pin is another digital input/output pin with similar functions.
  • 5. DIO3 (Pin 7): This pin is a digital input/output pin used for functions like irq, busy, or packet sent indicators.
  • 6. DIO4 (Pin 8): This pin is used for digital input/output functions.
  • 7. DIO5 (Pin 9): This pin is another digital input/output pin with similar functions.
  • 8. RST (Pin 14): This pin is used to reset the module. Connect it to GND to reset the module.
  • RF Antenna Pins (4)
  • 1. ANT (Pin 10): This pin is the RF antenna connection. Connect a suitable antenna to this pin to ensure optimal wireless communication.
  • 2. ANT_GND (Pin 11): This pin is the ground connection for the RF antenna.
  • 3. RX (Pin 12): This pin is the RF receiver input.
  • 4. TX (Pin 13): This pin is the RF transmitter output.
  • When connecting the pins, make sure to:
  • Use a suitable breadboard or PCB for your circuit.
  • Connect the power supply pins (VCC and GND) to a stable power source.
  • Connect the digital interface pins (SDN, DIO0-DIO5, and RST) to your microcontroller or other components according to your application's requirements.
  • Connect the RF antenna pins (ANT and ANT_GND) to a suitable antenna.
  • Ensure proper decoupling and filtering of the power supply lines and digital signals.
  • Remember to consult the datasheet for specific pinout diagrams and connection recommendations, as they may vary depending on the module's manufacturer and revision.

Code Examples

RFM69 FSK Transceiver Module Documentation
Overview
The RFM69 FSK Transceiver Module is a low-cost, low-power, and high-performance radio frequency (RF) transceiver module that operates in the 433 MHz or 868 MHz frequency band. It is designed for wireless communication applications, including IoT, smart home, and industrial automation.
Features
Frequency Band: 433 MHz or 868 MHz
 Modulation: FSK (Frequency Shift Keying)
 Data Rate: Up to 300 kbps
 Range: Up to 100 meters (line of sight)
 Power Consumption: Low power consumption (<100 mA)
 Operating Voltage: 1.8-3.6 V
 Communication Protocol: SPI (Serial Peripheral Interface)
Pinout
The RFM69 FSK Transceiver Module has the following pins:
VCC: Power supply (1.8-3.6 V)
 GND: Ground
 SCK: Serial clock input
 MOSI: Master out slave in (data input)
 MISO: Master in slave out (data output)
 CS: Chip select
 IRQ: Interrupt request
 RST: Reset
Code Examples
### Example 1: Basic Transceiver Operation (Arduino)
In this example, we will demonstrate how to use the RFM69 FSK Transceiver Module to transmit and receive data between two Arduino boards.
Transmitter Code (Arduino)
```c
#include <RFM69.h>
#define RFM69_CS 10  // Chip select pin
#define RFM69_IRQ 2  // Interrupt request pin
RFM69 radio(RFM69_CS, RFM69_IRQ);
void setup() {
  radio.initialize(433, 1, 0);  // Initialize the radio at 433 MHz, node ID 1, and network ID 0
}
void loop() {
  char message[] = "Hello, world!";
  radio.send(message, strlen(message));  // Send the message
  delay(1000);
}
```
Receiver Code (Arduino)
```c
#include <RFM69.h>
#define RFM69_CS 10  // Chip select pin
#define RFM69_IRQ 2  // Interrupt request pin
RFM69 radio(RFM69_CS, RFM69_IRQ);
void setup() {
  radio.initialize(433, 2, 0);  // Initialize the radio at 433 MHz, node ID 2, and network ID 0
}
void loop() {
  if (radio.receiveDone()) {
    char message[64];
    radio.read(message, radio.DATALEN);  // Read the received message
    Serial.println(message);
  }
}
```
### Example 2: Wireless Sensor Network (Raspberry Pi Python)
In this example, we will demonstrate how to use the RFM69 FSK Transceiver Module to create a wireless sensor network using Raspberry Pi and Python.
Transmitter Code (Raspberry Pi Python)
```python
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
# Set up the RFM69 pins
RFM69_CS = 17
RFM69_IRQ = 23
GPIO.setup(RFM69_CS, GPIO.OUT)
GPIO.setup(RFM69_IRQ, GPIO.IN, pull_up_down=GPIO.PUD_UP)
# Initialize the RFM69
def init_rfm69():
    GPIO.output(RFM69_CS, GPIO.HIGH)
    time.sleep(0.01)
    GPIO.output(RFM69_CS, GPIO.LOW)
    time.sleep(0.01)
# Send a message
def send_message(message):
    GPIO.output(RFM69_CS, GPIO.LOW)
    for byte in message:
        GPIO.output(RFM69_CS, GPIO.HIGH)
        time.sleep(0.001)
        GPIO.output(RFM69_CS, GPIO.LOW)
        time.sleep(0.001)
# Get sensor data and send it
while True:
    sensor_data = get_sensor_data()  # Replace with your sensor reading code
    send_message(sensor_data)
    time.sleep(1)
```
Receiver Code (Raspberry Pi Python)
```python
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
# Set up the RFM69 pins
RFM69_CS = 17
RFM69_IRQ = 23
GPIO.setup(RFM69_CS, GPIO.OUT)
GPIO.setup(RFM69_IRQ, GPIO.IN, pull_up_down=GPIO.PUD_UP)
# Initialize the RFM69
def init_rfm69():
    GPIO.output(RFM69_CS, GPIO.HIGH)
    time.sleep(0.01)
    GPIO.output(RFM69_CS, GPIO.LOW)
    time.sleep(0.01)
# Receive a message
def receive_message():
    message = []
    while True:
        if GPIO.input(RFM69_IRQ) == GPIO.LOW:
            break
    while True:
        byte = 0
        for i in range(8):
            GPIO.output(RFM69_CS, GPIO.LOW)
            if GPIO.input(RFM69_IRQ) == GPIO.HIGH:
                byte |= 1 << i
            GPIO.output(RFM69_CS, GPIO.HIGH)
            time.sleep(0.001)
        message.append(byte)
        if len(message) >= 64:
            break
    return message
while True:
    message = receive_message()
    print("Received message:", message)
    time.sleep(1)
```
These examples demonstrate the basic operation of the RFM69 FSK Transceiver Module in different contexts. You can modify and extend these examples to suit your specific wireless communication needs.