MİLTEGYayınlarLoRa E32-433T30D Konfigürasyon ve Haberleşme Rehberi
Teknik Rapor7 dk

LoRa E32-433T30D Konfigürasyon ve Haberleşme Rehberi

Yazar: MİLTEG

LoRa E32-433T30D Konfigürasyon ve Haberleşme Rehberi

LoRa E32-433T30D Konfigürasyon ve Haberleşme Rehberi

1. LoRa Nedir?

LoRa (Long Range), düşük güç tüketimi ile çok uzak mesafeler arasında veri transferi yapmamıza olanak sağlayan bir radyo frekansı modülasyon tekniğidir. Özellikle model uydu sistemleri, yer istasyonu telemetri haberleşmesi, tarım otomasyonu ve IoT projelerinde "veri uzak mesafelere uçsun ama güç tüketimi optimize edilsin" dediğimiz noktalarda imdadımıza yetişir.

E32-433T30D modeli ise 433MHz bandında çalışan, 1 Watt (30dBm) çıkış gücüne sahip, kilometrelerce öteden veri aktarımı yapabilen oldukça yetenekli bir modüldür.

2. Konfigürasyon Nedir ve Neden Gereklidir?

Modülü kutusundan çıkardığınız gibi kullanabilirsiniz ancak kompleks projelerde bu standart ayarlar yeterli olmaz. Konfigürasyon; modülün adresi (Address), kanalı (Channel) ve iletim modu (Fixed/Transparent) gibi hayati parametrelerini sisteminize göre özelleştirme işlemidir.

Neden Gereklidir?

  • Adresleme: Sadece kendi alıcınızın veriyi almasını ve dış frekanslardan gelen parazit/verilerin engellenmesini sağlamak için.
  • Hız (Baud Rate & Air Data Rate): Hava veri hızını, uçuş veya projenizin mesafe/veri yoğunluğuna göre optimize etmek için.
  • Mod Belirleme: Veriyi frekanstaki herkese mi (Transparent Transmission) yoksa ağdaki belirli bir hedefe mi (Fixed Transmission) göndereceğinizi seçmek için.

3. Konfigürasyon İçin Gerekli Donanım ve Yazılımlar

Donanım

  • LoRa E32-433T30D Modülü
  • USB-TTL Dönüştürücü (CP2102 veya CH340 önerilir)
  • Jumper Kablolar (Dişi-Dişi / Erkek-Dişi)
  • Harici Güç Kaynağı: Önemli! 30D (1 Watt) modelleri anlık yüksek akım çeker. Sadece USB üzerinden beslemek, voltaj düşümlerine ve modülün kararsız çalışmasına veya kendini resetlemesine yol açabilir. 5V - 1A/2A verebilen bir kaynak kullanılması tavsiye edilir.

Yazılım

  • RF Setting Software: Modülün parametrelerini değiştirmek için kullanacağımız EBYTE'ın resmi arayüzü. (İndirme linki web sitemizde formatında mevcuttur).\

4. Nasıl Konfigüre Edebiliriz?

Modülü bilgisayara bağlayıp konfigürasyon yapabilmek için modülü "Sleep / Command" (Uyku/Komut) moduna almanız çok önemlidir.

Önemli Konfigürasyon Adımları ve Pin Durumları

LoRa modülünün çalışma modları M0 ve M1 pinlerinin lojik seviyeleri (High/Low) ile belirlenir. Ayar yapabilmek için M0 ve M1 pinlerinin her ikisine de güç verilmelidir (High - 3.3V).

Adım Adım Konfigürasyon:

  1. Modülü USB-TTL dönüştürücüye bağlayın (VCC -> 5V, GND -> GND, TX -> RX, RX -> TX).
  2. Modülün M0 ve M1 pinlerini 3.3V pinine bağlayarak konfigürasyon moduna alın.
  3. EBYTE RF Setting yazılımını açın.
  4. Aygıt Yöneticisinden USB-TTL dönüştürücünüzün doğru COM portunu seçip "Open Port" deyin.
  5. "Read Params" butonuna basarak modülün fabrika ayarlarını okuyun.
  6. Gerekli değişiklikleri yapın. Hedefe özel paket göndereceğimiz için menüden iletim tipini "Fixed Transmission" olarak seçin.

İşlemi tamamlamak için "Write Params" butonuna basarak ayarları modüle yazdırın.

5. Test ve Sonuç (ESP32 ile Haberleşme)

Konfigürasyon tamamlandıysa, şimdi iki adet ESP32 kullanarak "Fixed Transmission" (Belirli Adrese Gönderim) testi yapalım. Bu senaryoda verici modül, sadece belirlediğimiz adres ve kanaldaki alıcı modüle özel paket gönderecektir.

ESP32 ve LoRa E32 Devre Şeması (Alıcı ve Verici İçin Aynı)

Bağlantı Özeti:

  • LoRa VCC ->Harici 5V Güç Kaynağı
  • LoRa GND -> Ortak GND (ESP32 ve Güç Kaynağı)
  • LoRa TX-> ESP32 RX2 (GPIO 16)
  • LoRa RX -> ESP32 TX2 (GPIO 17)
  • LoRa M0 & M1 -> GND (Normal haberleşme modu için)

Not: ESP32'nin donanımsal seri portu olan Serial2 kullanılmıştır.

Verici Kodu (Transmitter)

Vericimiz her saniye sayacı bir artırarak Address: 0x00 0x04 (Address: 4), Channel: 0x17 (Kanal: 23) olan alıcıya bir telemetri paketi gönderir.

C++

#include <Arduino.h>

#define RXD2 16 // ESP32 RX2
#define TXD2 17 // ESP32 TX2

int counter = 0;

void setup() {
  Serial.begin(115200); // Bilgisayar ile haberleşme
  Serial2.begin(9600, SERIAL_8N1, RXD2, TXD2); // LoRa ile haberleşme (Baud rate konfigürasyonla aynı olmalı)
  
  Serial.println("Verici (Transmitter) Baslatildi...");
}

void loop() {
  // Fixed Transmission Paket Yapısı: [ADDH] [ADDL] [CHAN] [DATA...]
  byte targetAddressHigh = 0x00; // Hedef Adres High Byte
  byte targetAddressLow = 0x04;  // Hedef Adres Low Byte (Adres: 4)
  byte targetChannel = 0x17;     // Hedef Kanal (23)

  String message = "Paket No: " + String(counter);

  // Paketi oluştur ve LoRa'ya yaz
  Serial2.write(targetAddressHigh);
  Serial2.write(targetAddressLow);
  Serial2.write(targetChannel);
  Serial2.print(message);

  Serial.println("Gonderilen: " + message);
  
  counter++;
  delay(1000); // 1 saniyede bir gönder
}

Alıcı Kodu (Receiver)

Alıcı modül (Kendi adresi 4, kanalı 23 olarak konfigüre edilmiş olmalıdır), sadece kendisine gelen paketleri yakalar ve Serial Monitor üzerinde görüntüler.

C++

#include <Arduino.h>

#define RXD2 16 // ESP32 RX2
#define TXD2 17 // ESP32 TX2

void setup() {
  Serial.begin(115200);
  Serial2.begin(9600, SERIAL_8N1, RXD2, TXD2);
  
  Serial.println("Alici (Receiver) Baslatildi. Veri bekleniyor...");
}

void loop() {
  // LoRa modülünden gelen veri var mı kontrol et
  if (Serial2.available()) {
    String incomingData = Serial2.readString(); // Gelen veriyi oku
    
    Serial.print("Alinan Veri: ");
    Serial.println(incomingData);
  }
}

6. Kapanış

Bu rehberde LoRa dünyasına hızlı bir giriş yaparak E32 modülümüzü nasıl özelleştireceğimizi ve ESP32 ile nasıl ilk verimizi uçuracağımızı öğrendik. Unutmayın, doğru konfigürasyon projenizin menzilini ve kararlılığını doğrudan etkiler.