E70 433NW30S
Yepyeni bir modül, tam istediğiniz özellikler ve uygun fiyat. E70 LoRa modülleri ile 200 noktaya kadar aynı anda veri transferi yapabileceksiniz ve bekleme, tarama usülüne gerek kalmadan veri kayıpsız veri transferi yapabileceksiniz.
Parametre ayarlarını da vermek oldukça kolay bu modül de. AT komutları ile istediğiniz parametre ayarını herhangi bir usb dönüştürücüye ihtiyaç duymadan yapabileceksiniz.

İndirme Dosyaları
Satın Alma
Örnek Kodlar:
Merkez modül kodları (esp32 ve 3in1 ESP PCB için)
#include <HardwareSerial.h>
#define M0 32 // 3in1 PCB mizde pin 7
#define M1 33 // 3in1 PCB mizde pin 6
#define RX 27 // Lora nın 3. pini RX in ESP32 de hangi pine bağlı olduğu
#define TX 35 // Lora nın 4. pini TX in ESP32 de hangi pine bağlı olduğu
HardwareSerial fixajSerial(1);
unsigned long kanalBekleme_sure = 0;
int kanalBekleme_bekleme = 3000;
bool ayarMod = false;
byte e = 0;
struct Signal {
char type[30];
byte temp[4];
} mesaj;
void setup() {
Serial.begin(115200);
fixajSerial.begin(115200, SERIAL_8N1, TX, RX);
pinMode(M0, OUTPUT);
pinMode(M1, OUTPUT);
digitalWrite(M0, 0); // coordinator mode m0=0, m1=0 | normal mode m0=1, m1=0
digitalWrite(M1, 0);
pinMode(14, OUTPUT);
Serial.println("Fixaj.com baslat...");
delay(2000);
ayarMod = false;
//ayarDegis(); //ayarDegis ve mevcutAyarlar metodunu aynı anda çağırmayınız.
mevcutAyarlar();
}
void loop() {
if (ayarMod) {
if (Serial.available()) {
fixajSerial.write(Serial.read());
}
if (fixajSerial.available()) {
Serial.write(fixajSerial.read());
}
} else {
if (millis() > kanalBekleme_sure + kanalBekleme_bekleme) {
kanalBekleme_sure = millis();
e++;
strcpy(mesaj.type, "Sanliurfa Merkez");
*(int *)(mesaj.temp) = e;
gonder(&mesaj);
}
while (fixajSerial.available()) {
receive(&mesaj);
Serial.print("type: ");
Serial.println(mesaj.type);
Serial.print("değer: ");
Serial.println(*(int *)(mesaj.temp));
/*
Serial.print("RSSI: ");
char rssi[1];
fixajSerial.readBytes(rssi, 1);
Serial.println(rssi[0], DEC);
*/
}
}
}
void gonder(Signal *mdata) {
fixajSerial.write((uint8_t *)mdata, sizeof(Signal));
}
bool receive(Signal *mdata) {
return (fixajSerial.readBytes((uint8_t *)mdata, sizeof(Signal)) == sizeof(Signal));
}
/*
ayarDegis fonksiyonu parametre ayarlarını nasıl değiştireceğinizi
gösterir. Örnek olarak bazı ayarlar yapılmıştır.
*/
void ayarDegis() {
if (ayarMod) {
fixajSerial.print("++");
delay(100);
fixajSerial.print("+++"); // Ayarlar ekranına giriş
delay(100);
fixajSerial.println("AT+WMCFG=0"); // 0 coordinatör, 1 Node, 4 default
delay(100);
fixajSerial.println("AT+PIDCFG=1453"); //ağ şifresi
delay(100);
fixajSerial.println("AT+CNCFG=5"); //the channels are only 0,1,2,3,4,5,6 and 128.
delay(100);
fixajSerial.println("AT+TFOCFG=0"); // 0 boardcast gibi, 1 data+long adres, 3 data+ RSSI
delay(100);
fixajSerial.println("AT+TFICFG=0"); //0 input broadcast, 1 short adres + data, 2 long adres + data
delay(100);
fixajSerial.println("AT+RSTART");
}
}
/*
mevcutAyarlar fonksiyonu E70 modülünün üstünde kayıtlı olan mevcut ayarlarını
ekrana yazdırır.
*/
void mevcutAyarlar() {
if (ayarMod) {
fixajSerial.print("++");
delay(100);
fixajSerial.print("+++"); // Ayarlar ekranına giriş
delay(100);
fixajSerial.println("AT+CNCFG=?"); //hangi frekanas
delay(100);
fixajSerial.println("AT+WMCFG=?"); //MODE 0-COOR 1- NORMAL
delay(100);
fixajSerial.println("AT+PWCFG=?"); //GÜÇ
delay(100);
fixajSerial.println("AT+TFOCFG=?"); //OUTPUT FORMAT
delay(100);
fixajSerial.println("AT+TFICFG=?"); //INPUT FORMAT
delay(100);
fixajSerial.println("AT+TMCFG=?"); //LONG RAGE OR GFSK
delay(100);
fixajSerial.println("AT+PIDCFG=?"); //NET İD
delay(100);
fixajSerial.println("AT+DMCFG=?");
delay(100);
fixajSerial.println("AT+RSCFG=?"); //OTO RESET SÜRESİ
delay(100);
fixajSerial.println("AT+UBCFG=?"); //BAUD RATE 7- 115200
delay(100);
fixajSerial.println("AT+UPCFG=?"); //ODD OR EVEN PARİTY
delay(100);
fixajSerial.println("AT+IOCFG=?"); //PUSH PULL OR OPEN DRAİN
delay(100);
fixajSerial.println("AT+VER"); //VERSİYON
delay(100);
fixajSerial.println("AT+TLCFG=?"); //CONCURRENCY
delay(100);
fixajSerial.println("AT+DMCFG=?");
delay(100);
fixajSerial.println("AT+EXIT");
delay(2);
}
}
Node modül kodları (ESP32 ve 3in1 ESP PCB için)
#include <HardwareSerial.h>
#define M0 32 // 3in1 PCB mizde pin 7
#define M1 33 // 3in1 PCB mizde pin 6
#define RX 27 // Lora nın 3. pini RX in ESP32 de hangi pine bağlı olduğu
#define TX 35 // Lora nın 4. pini TX in ESP32 de hangi pine bağlı olduğu
HardwareSerial fixajSerial(1);
unsigned long kanalBekleme_sure = 0;
int kanalBekleme_bekleme = 3000;
bool ayarMod = false;
byte e = 0;
struct Signal {
char type[30];
byte temp[4];
} mesaj;
void setup() {
Serial.begin(115200);
fixajSerial.begin(115200, SERIAL_8N1, TX, RX);
pinMode(M0, OUTPUT);
pinMode(M1, OUTPUT);
digitalWrite(M0, 1); // coordinator mode m0=0, m1=0 | normal mode m0=1, m1=0
digitalWrite(M1, 0);
pinMode(14, OUTPUT);
Serial.println("Fixaj.com baslat...");
delay(2000);
ayarMod = false; //normal kullanımda ayarMod false yapın
//ayarDegis(); //ayarDegis ve mevcutAyarlar metodunu aynı anda çağırmayınız.
mevcutAyarlar();
}
void loop() {
if (ayarMod) {
if (Serial.available()) {
fixajSerial.write(Serial.read());
}
if (fixajSerial.available()) {
Serial.write(fixajSerial.read());
}
} else {
if (millis() > kanalBekleme_sure + kanalBekleme_bekleme) {
kanalBekleme_sure = millis();
e++;
strcpy(mesaj.type, "Hatay Maras Adiyaman Node1");
*(int *)(mesaj.temp) = e;
gonder(&mesaj);
}
while (fixajSerial.available()) {
receive(&mesaj);
Serial.print("type: ");
Serial.println(mesaj.type);
Serial.print("değer: ");
Serial.println(*(int *)(mesaj.temp));
/*
Serial.print("RSSI: ");
char rssi[1];
fixajSerial.readBytes(rssi, 1);
Serial.println(rssi[0], DEC);
*/
}
}
}
void gonder(Signal *mdata) {
fixajSerial.write((uint8_t *)mdata, sizeof(Signal));
}
bool receive(Signal *mdata) {
return (fixajSerial.readBytes((uint8_t *)mdata, sizeof(Signal)) == sizeof(Signal));
}
/*
ayarDegis fonksiyonu parametre ayarlarını nasıl değiştireceğinizi
gösterir. Örnek olarak bazı ayarlar yapılmıştır.
*/
void ayarDegis() {
if (ayarMod) {
fixajSerial.print("++");
delay(100);
fixajSerial.print("+++"); // Ayarlar ekranına giriş
delay(100);
fixajSerial.println("AT+WMCFG=1"); // 0 coordinatör, 1 Node, 4 default
delay(100);
fixajSerial.println("AT+PIDCFG=1453"); //ağ şifresi
delay(100);
fixajSerial.println("AT+CNCFG=5"); //the channels are only 0,1,2,3,4,5,6 and 128.
delay(100);
fixajSerial.println("AT+TFOCFG=0"); // 0 boardcast gibi, 1 data+long adres, 3 data+ RSSI
delay(100);
fixajSerial.println("AT+TFICFG=0"); //0 input broadcast, 1 short adres + data, 2 long adres + data
delay(100);
fixajSerial.println("AT+RSTART");
}
}
/*
mevcutAyarlar fonksiyonu E70 modülünün üstünde kayıtlı olan mevcut ayarlarını
ekrana yazdırır.
*/
void mevcutAyarlar() {
if (ayarMod) {
fixajSerial.print("++");
delay(100);
fixajSerial.print("+++"); // Ayarlar ekranına giriş
delay(100);
fixajSerial.println("AT+CNCFG=?"); //hangi frekanas
delay(100);
fixajSerial.println("AT+WMCFG=?"); //MODE 0-COOR 1- NORMAL
delay(100);
fixajSerial.println("AT+PWCFG=?"); //GÜÇ
delay(100);
fixajSerial.println("AT+TFOCFG=?"); //OUTPUT FORMAT
delay(100);
fixajSerial.println("AT+TFICFG=?"); //INPUT FORMAT
delay(100);
fixajSerial.println("AT+TMCFG=?"); //LONG RAGE OR GFSK
delay(100);
fixajSerial.println("AT+PIDCFG=?"); //NET İD
delay(100);
fixajSerial.println("AT+DMCFG=?");
delay(100);
fixajSerial.println("AT+RSCFG=?"); //OTO RESET SÜRESİ
delay(100);
fixajSerial.println("AT+UBCFG=?"); //BAUD RATE 7- 115200
delay(100);
fixajSerial.println("AT+UPCFG=?"); //ODD OR EVEN PARİTY
delay(100);
fixajSerial.println("AT+IOCFG=?"); //PUSH PULL OR OPEN DRAİN
delay(100);
fixajSerial.println("AT+VER"); //VERSİYON
delay(100);
fixajSerial.println("AT+TLCFG=?"); //CONCURRENCY
delay(100);
fixajSerial.println("AT+DMCFG=?");
delay(100);
fixajSerial.println("AT+EXIT");
delay(2);
}
}