TTGO T Beam یک برد TTGO ساخت شرکت LilyGo می باشد . برد های TTGO در جهت توسعه اینترنت اشیاء و بر پایه SoC های ESP32 و ESP8266 می باشند . این برد ها در جهت کاربرد های عملی طراحی شده اند لذا جهت شروع کار با ESP32 ، گزینه مناسبی نیستند و ممکن است شما را با چالش هایی رو به رو کنند . برد TTGO T Beam یکی از پلتفرم های قوی این شرکت است . این برد ترکیبی از چندین ماژول مخابراتی و چیپ Power Management می باشد . این برد دارای یک جاباتری 18650 است که امکان استفاده از این برد به صورت پرتابل را فراهم می سازد . TTGO T Beam دارای هسته های LoRa و GPS است که می توانید از این ماژول در کاربرد های مختلف همچون ایستگاه های هواشناسی ، مزارع کشاورزی و … استفاده کنید . این برد به صورت کاملا فشرده طراحی شده است و فضای کمی را اشغال می کند . در این برد از یک آنتن 3D برای هسته ESP32 ، یک آنتن کوچک سرامیکی برای ماژول Ublox ونیز یک آنتن 5 سانتی متری برای LoRa استفاده شده است . با استفاد از این ماژول می توانید دیتا را به کیلومتر ها دورتر ارسال کنید .

مشخصات برد TTGO T Bem :

1- هسته ESP32 با فرکانس کاری 240MHz

2- پشتیبانی از WiFi و بلوتوث

3- دارای ماژول Ublox NEO 6M

4- دارای آنتن سرامیکی کوچک GPS ، آنتن 3D برای WiFi و بلوتوث و همچنین یک آنتن ISM باند برای LoRa

5- دارای ماژول TTGO LoRa با فرکانس 430MHz تا 470MHz

6- دارای جاباتری 18650

 

پین های برد TTGO T Beam :

 

راه اندازی برد TTGO T Beam :

با توجه به پشتیبانی آردوینو IDE ، به راحتی می توانید این برد را در محیط آردوینو پروگرام کنید . کد های زیر جهت تست عملکرد برد می باشد . این برنامه از دو قسمت فرستنده و گیرنده تشکیل شده است :

کد های فرستند :

#include <SPI.h>
#include <LoRa.h>
#include <Wire.h>  
#include "SSD1306.h" 


#define SCK     5    // GPIO5  -- SX1278's SCK
#define MISO    19   // GPIO19 -- SX1278's MISnO
#define MOSI    27   // GPIO27 -- SX1278's MOSI
#define SS      18   // GPIO18 -- SX1278's CS
#define RST     14   // GPIO14 -- SX1278's RESET
#define DI0     26   // GPIO26 -- SX1278's IRQ(Interrupt Request)
#define BAND  868E6
#define logo_width 128
#define logo_height 64
static char logo_bits[] = {
  0x60 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00,
 0x18 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00,
 0x06 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00,
 0x01 , 0x80 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00,
 0x00 , 0x60 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x06,
 0x00 , 0x18 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x18,
 0x00 , 0x06 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x60,
 0x00 , 0x01 , 0x80 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x01 , 0x80,
 0x00 , 0x00 , 0x60 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x06 , 0x00,
 0x00 , 0x00 , 0x18 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x38 , 0x00,
 0x00 , 0x00 , 0x1E , 0x00 , 0x00 , 0x06 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0xC0 , 0x00,
 0x00 , 0x00 , 0x3D , 0x80 , 0x00 , 0x0E , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x03 , 0x00 , 0x00,
 0x00 , 0x00 , 0x38 , 0x60 , 0x00 , 0x1E , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x0C , 0x00 , 0x00,
 0x00 , 0x00 , 0x78 , 0x18 , 0x00 , 0x1E , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x30 , 0x00 , 0x00,
 0x00 , 0x00 , 0xF8 , 0x06 , 0x00 , 0x3E , 0x00 , 0x00 , 0x00 , 0x00 , 0x3C , 0x00 , 0x01 , 0xC0 , 0x00 , 0x00,
 0x00 , 0x01 , 0xF8 , 0x01 , 0x80 , 0x7E , 0x00 , 0x00 , 0x00 , 0x00 , 0xFF , 0x00 , 0x06 , 0x00 , 0x00 , 0x00,
 0x00 , 0x03 , 0xF8 , 0x00 , 0x61 , 0xFC , 0x00 , 0x00 , 0x00 , 0x01 , 0xFF , 0x00 , 0x18 , 0x00 , 0x00 , 0x00,
 0x00 , 0x0F , 0xF0 , 0x00 , 0x1B , 0xFC , 0x00 , 0x00 , 0x00 , 0x03 , 0xBF , 0x00 , 0x60 , 0x00 , 0x00 , 0x00,
 0x00 , 0x3F , 0xFA , 0xA8 , 0x0F , 0xFE , 0xAA , 0x00 , 0x0F , 0xFF , 0xBF , 0x01 , 0x83 , 0xFE , 0x00 , 0x00,
 0x01 , 0xFF , 0xFF , 0xF8 , 0x7F , 0xFF , 0xFE , 0x00 , 0x7F , 0xFF , 0x3F , 0x06 , 0x0F , 0xFF , 0x80 , 0x00,
 0x01 , 0xFF , 0xFF , 0xF8 , 0x7F , 0xFF , 0xFE , 0x01 , 0xFC , 0x3F , 0x9C , 0x38 , 0x7F , 0x0F , 0xE0 , 0x00,
 0x00 , 0x0F , 0xF0 , 0x00 , 0x03 , 0xFC , 0x00 , 0x03 , 0xF8 , 0x1F , 0xC0 , 0xC0 , 0xFE , 0x07 , 0xF0 , 0x00,
 0x00 , 0x1F , 0xF0 , 0x00 , 0x07 , 0xFE , 0x00 , 0x07 , 0xF0 , 0x1F , 0xE3 , 0x01 , 0xFC , 0x03 , 0xF8 , 0x00,
 0x00 , 0x1F , 0xF0 , 0x00 , 0x07 , 0xF9 , 0x80 , 0x0F , 0xF0 , 0x1F , 0xEC , 0x03 , 0xF8 , 0x03 , 0xFC , 0x00,
 0x00 , 0x1F , 0xF0 , 0x00 , 0x07 , 0xF8 , 0x60 , 0x0F , 0xE0 , 0x1F , 0xF0 , 0x07 , 0xF8 , 0x03 , 0xFC , 0x00,
 0x00 , 0x1F , 0xE0 , 0x00 , 0x07 , 0xF8 , 0x18 , 0x0F , 0xE0 , 0x0F , 0xE0 , 0x0F , 0xF8 , 0x03 , 0xFE , 0x00,
 0x00 , 0x1F , 0xE0 , 0x00 , 0x07 , 0xF8 , 0x06 , 0x0F , 0xE0 , 0x1F , 0xE0 , 0x0F , 0xF0 , 0x03 , 0xFE , 0x00,
 0x00 , 0x1F , 0xE0 , 0x00 , 0x0F , 0xF8 , 0x01 , 0x8F , 0xE0 , 0x1F , 0xE0 , 0x1F , 0xF0 , 0x03 , 0xFE , 0x00,
 0x00 , 0x1F , 0xE0 , 0x00 , 0x0F , 0xF8 , 0x00 , 0x6F , 0xE0 , 0x7F , 0xC0 , 0x1F , 0xF0 , 0x03 , 0xFE , 0x00,
 0x00 , 0x3F , 0xE0 , 0x00 , 0x0F , 0xF0 , 0x00 , 0x0F , 0xE1 , 0x9F , 0xC0 , 0x3F , 0xF0 , 0x03 , 0xFE , 0x00,
 0x00 , 0x3F , 0xE0 , 0x00 , 0x0F , 0xF0 , 0x00 , 0x0F , 0xEE , 0x3F , 0x80 , 0x3F , 0xE0 , 0x03 , 0xFF , 0x00,
 0x00 , 0x3F , 0xC0 , 0x00 , 0x0F , 0xF0 , 0x00 , 0x0F , 0xF0 , 0x7F , 0x80 , 0x3F , 0xE0 , 0x03 , 0xFE , 0x00,
 0x00 , 0x3F , 0xC0 , 0x00 , 0x0F , 0xF0 , 0x00 , 0x07 , 0xF0 , 0x7F , 0x00 , 0x3F , 0xE0 , 0x03 , 0xFE , 0x00,
 0x00 , 0x3F , 0xC0 , 0x00 , 0x1F , 0xF0 , 0x00 , 0x03 , 0xFF , 0xFC , 0x00 , 0x3F , 0xE0 , 0x07 , 0xFE , 0x00,
 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00,
 0x00 , 0x7F , 0xC0 , 0x00 , 0x1F , 0xE0 , 0x00 , 0x6E , 0x01 , 0x80 , 0x00 , 0x3F , 0xE0 , 0x07 , 0xFC , 0x00,
 0x00 , 0x7F , 0x80 , 0x60 , 0x1F , 0xE0 , 0x39 , 0xAE , 0x00 , 0x60 , 0x00 , 0x3F , 0xE0 , 0x07 , 0xFC , 0x00,
 0x00 , 0x7F , 0x80 , 0xE0 , 0x1F , 0xE0 , 0x3E , 0x6F , 0x80 , 0x18 , 0x00 , 0x3F , 0xE0 , 0x0F , 0xF8 , 0x00,
 0x00 , 0x7F , 0x80 , 0xE0 , 0x1F , 0xE0 , 0x38 , 0x6F , 0xFF , 0xF6 , 0x00 , 0x1F , 0xE0 , 0x0F , 0xF0 , 0x00,
 0x00 , 0x7F , 0x80 , 0xC0 , 0x1F , 0xE0 , 0x70 , 0x6F , 0xFF , 0xFF , 0x80 , 0x1F , 0xE0 , 0x0F , 0xF0 , 0x00,
 0x00 , 0x7F , 0x81 , 0xC0 , 0x1F , 0xE3 , 0xF0 , 0x2F , 0xFF , 0xFF , 0xE0 , 0x1F , 0xE0 , 0x1F , 0xE0 , 0x00,
 0x00 , 0x7F , 0x81 , 0xC0 , 0x1F , 0xEC , 0xE0 , 0x2F , 0xFF , 0xFF , 0xD8 , 0x0F , 0xF0 , 0x1F , 0xC0 , 0x00,
 0x00 , 0x7F , 0xC7 , 0x80 , 0x1F , 0xF1 , 0xE0 , 0x0F , 0xFF , 0xFF , 0xE6 , 0x07 , 0xF0 , 0x3F , 0x80 , 0x00,
 0x00 , 0x3F , 0xFF , 0x00 , 0x0F , 0xFF , 0xC0 , 0x0F , 0xFF , 0xFF , 0xE1 , 0x83 , 0xF8 , 0xFE , 0x00 , 0x00,
 0x00 , 0x0F , 0xFC , 0x00 , 0x07 , 0xFF , 0x00 , 0xEF , 0xFF , 0xFF , 0xE0 , 0x60 , 0xFF , 0xF8 , 0x00 , 0x00,
 0x00 , 0x00 , 0x00 , 0x00 , 0x1C , 0x00 , 0x01 , 0xEC , 0x00 , 0x7F , 0xE0 , 0x18 , 0x00 , 0x00 , 0x00 , 0x00,
 0x00 , 0x00 , 0x00 , 0x00 , 0x60 , 0x00 , 0x03 , 0xE8 , 0x00 , 0x1F , 0xC0 , 0x06 , 0x00 , 0x00 , 0x00 , 0x00,
 0x00 , 0x00 , 0x00 , 0x01 , 0x80 , 0x00 , 0x03 , 0xE8 , 0x00 , 0x1F , 0xC0 , 0x01 , 0x80 , 0x00 , 0x00 , 0x00,
 0x00 , 0x00 , 0x00 , 0x06 , 0x00 , 0x00 , 0x03 , 0xE8 , 0x00 , 0x1F , 0x80 , 0x00 , 0x60 , 0x00 , 0x00 , 0x00,
 0x00 , 0x00 , 0x00 , 0x18 , 0x00 , 0x00 , 0x01 , 0xE8 , 0x00 , 0x3F , 0x00 , 0x00 , 0x18 , 0x00 , 0x00 , 0x00,
 0x00 , 0x00 , 0x00 , 0x60 , 0x00 , 0x00 , 0x01 , 0xEC , 0x00 , 0x7E , 0x00 , 0x00 , 0x06 , 0x00 , 0x00 , 0x00,
 0x00 , 0x00 , 0x03 , 0x80 , 0x00 , 0x00 , 0x00 , 0xEE , 0x01 , 0xFC , 0x00 , 0x00 , 0x01 , 0x80 , 0x00 , 0x00,
 0x00 , 0x00 , 0x0C , 0x00 , 0x00 , 0x00 , 0x00 , 0x6F , 0xFF , 0xF0 , 0x00 , 0x00 , 0x00 , 0x60 , 0x00 , 0x00,
 0x00 , 0x00 , 0x30 , 0x00 , 0x00 , 0x00 , 0x00 , 0x0F , 0xFF , 0xC0 , 0x00 , 0x00 , 0x00 , 0x18 , 0x00 , 0x00,
 0x00 , 0x00 , 0xC0 , 0x00 , 0x00 , 0x00 , 0x00 , 0x01 , 0x50 , 0x00 , 0x00 , 0x00 , 0x00 , 0x06 , 0x00 , 0x00,
 0x00 , 0x03 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x01 , 0x80 , 0x00,
 0x00 , 0x1C , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x60 , 0x00,
 0x00 , 0x60 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x18 , 0x00,
 0x01 , 0x80 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x06 , 0x00,
 0x06 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x01 , 0x80,
 0x18 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x60,
 0x20 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x18,
 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x06,
 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00
};
unsigned int counter = 0;

SSD1306 display(0x3c, 21, 22);
String rssi = "RSSI --";
String packSize = "--";
String packet ;

 

void setup() {
  pinMode(16,OUTPUT);
  pinMode(2,OUTPUT);
  
  digitalWrite(16, LOW);    // set GPIO16 low to reset OLED
  delay(50); 
  digitalWrite(16, HIGH); // while OLED is running, must set GPIO16 in high
  
  Serial.begin(115200);
  while (!Serial);
  Serial.println();
  Serial.println("LoRa Sender Test");
  
  SPI.begin(SCK,MISO,MOSI,SS);
  LoRa.setPins(SS,RST,DI0);
  if (!LoRa.begin(868E6)) {
    Serial.println("Starting LoRa failed!");
    while (1);
  }
  //LoRa.onReceive(cbk);
//  LoRa.receive();
  Serial.println("init ok");
  display.init();
  display.flipScreenVertically();  
  display.setFont(ArialMT_Plain_10);
   
  delay(1500);
}

void loop() {
  display.clear();
  display.setTextAlignment(TEXT_ALIGN_LEFT);
  display.setFont(ArialMT_Plain_10);
  
  display.drawString(0, 0, "Sending packet: ");
  display.drawString(90, 0, String(counter));
  Serial.println(String(counter));
  display.display();

  // send packet
  LoRa.beginPacket();
  LoRa.print("hello ");
  LoRa.print(counter);
  LoRa.endPacket();

  counter++;
  digitalWrite(2, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(2, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}

کد های گیرنده :

#include <SPI.h>
#include <LoRa.h>
#include <Wire.h>  
#include "SSD1306.h" 


#define SCK     5    // GPIO5  -- SX1278's SCK
#define MISO    19   // GPIO19 -- SX1278's MISO
#define MOSI    27   // GPIO27 -- SX1278's MOSI
#define SS      18   // GPIO18 -- SX1278's CS
#define RST     14   // GPIO14 -- SX1278's RESET
#define DI0     26   // GPIO26 -- SX1278's IRQ(Interrupt Request)
#define BAND    868E6
#define logo_width 128
#define logo_height 53
static char logo_bits[] = {
   0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0xF0, 0x03, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0xC0, 0x07, 0xF0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x0F, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x1F, 0xF0, 0x1F, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0xE0, 0x1F, 0xF0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0xE0, 0x3F, 0xF8, 0x3F, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x1F, 0xF8, 0x3F, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0xE0, 0x1F, 0xF8, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0xF0, 0x1F, 0xF8, 0x1F, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1F, 0xFC, 0x1F, 
  0x80, 0xFF, 0x8F, 0x7F, 0xC0, 0xFF, 0x7F, 0xC0, 0xFF, 0x03, 0xC0, 0x3F, 
  0xF0, 0x1F, 0xFC, 0x1F, 0xE0, 0xFF, 0x87, 0x3F, 0xC0, 0xFF, 0x7F, 0xF0, 
  0xFF, 0x01, 0xF8, 0xFF, 0xF0, 0x0F, 0xFC, 0x1F, 0xE0, 0xFF, 0x87, 0x3F, 
  0xE0, 0xFF, 0x7F, 0xF8, 0xFF, 0x01, 0xFE, 0xFF, 0xF8, 0x0F, 0xFE, 0x0F, 
  0xF0, 0xFF, 0x87, 0x3F, 0xE0, 0xFF, 0x7F, 0xFC, 0xFF, 0x01, 0xFF, 0xFF, 
  0xF8, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xC7, 0x3F, 0xE0, 0xFF, 0x3F, 0xFC, 
  0xFF, 0x81, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xC3, 0x1F, 
  0xE0, 0xFF, 0x3F, 0xFC, 0xFF, 0xC0, 0xFF, 0x7F, 0xFC, 0xFF, 0xFF, 0x0F, 
  0xF8, 0xFF, 0xC3, 0x1F, 0xE0, 0xFF, 0x3F, 0xFC, 0xFF, 0xE0, 0xFF, 0x7F, 
  0xFC, 0xFF, 0xFF, 0x07, 0xF8, 0x03, 0xC0, 0x1F, 0x00, 0xFE, 0x01, 0xFE, 
  0x00, 0xF0, 0x3F, 0x70, 0xFC, 0xFF, 0xFF, 0x07, 0xF8, 0x03, 0xE0, 0x0F, 
  0x00, 0xFE, 0x00, 0xFE, 0x00, 0xF0, 0x1F, 0x60, 0xFC, 0xFF, 0xFF, 0x07, 
  0xF8, 0x03, 0xE0, 0x0F, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0xF0, 0x07, 0x20, 
  0xFE, 0xFF, 0xFF, 0x07, 0xFC, 0xFF, 0xE1, 0x0F, 0x00, 0xFF, 0x00, 0xFF, 
  0x7F, 0xF8, 0x07, 0x00, 0xFE, 0x83, 0xFF, 0x03, 0xFC, 0xFF, 0xF1, 0x0F, 
  0x00, 0x7F, 0x00, 0xFF, 0x7F, 0xF8, 0x03, 0x00, 0xFE, 0x83, 0xFF, 0x03, 
  0xFC, 0xFF, 0xF0, 0x07, 0x00, 0x7F, 0x00, 0xFF, 0x7F, 0xFC, 0x03, 0x00, 
  0xFE, 0x81, 0xFF, 0x03, 0xFC, 0xFF, 0xF0, 0x07, 0x00, 0x7F, 0x00, 0xFF, 
  0x3F, 0xFC, 0x03, 0x00, 0xFF, 0xC1, 0xFF, 0x01, 0xFE, 0xFF, 0xF0, 0x07, 
  0x80, 0x3F, 0x80, 0xFF, 0x3F, 0xFC, 0x03, 0x00, 0xFF, 0xC1, 0xFF, 0x01, 
  0xFE, 0xFF, 0xF8, 0x07, 0x80, 0x3F, 0x80, 0xFF, 0x3F, 0xFC, 0x03, 0x10, 
  0xFF, 0xC1, 0xFF, 0x01, 0xFE, 0x00, 0xF8, 0x03, 0x80, 0x3F, 0x80, 0x3F, 
  0x00, 0xFC, 0x03, 0x0C, 0xFF, 0xC0, 0xFF, 0x01, 0xFF, 0x00, 0xF8, 0x03, 
  0xC0, 0x3F, 0x80, 0x3F, 0x00, 0xFC, 0x07, 0x0E, 0xFF, 0xE0, 0xFF, 0x00, 
  0x7F, 0x00, 0xF8, 0x03, 0xC0, 0x1F, 0xC0, 0x3F, 0x00, 0xFC, 0xFF, 0x0F, 
  0xFF, 0xE0, 0xFF, 0x00, 0xFF, 0x7F, 0xFC, 0xFF, 0xC1, 0x1F, 0xC0, 0xFF, 
  0x1F, 0xFC, 0xFF, 0x0F, 0x7F, 0xE0, 0xFF, 0x00, 0xFF, 0x3F, 0xFC, 0xFF, 
  0xC1, 0x1F, 0xC0, 0xFF, 0x0F, 0xF8, 0xFF, 0x07, 0x7E, 0xE0, 0xFF, 0x80, 
  0xFF, 0x3F, 0xFC, 0xFF, 0xE0, 0x1F, 0xC0, 0xFF, 0x0F, 0xF8, 0xFF, 0x07, 
  0x7C, 0xF0, 0x7F, 0x80, 0xFF, 0x3F, 0xFE, 0xFF, 0xE0, 0x0F, 0xE0, 0xFF, 
  0x0F, 0xF0, 0xFF, 0x07, 0xF8, 0xF0, 0x7F, 0x80, 0xFF, 0x1F, 0xFE, 0xFF, 
  0xE0, 0x0F, 0xE0, 0xFF, 0x0F, 0xE0, 0xFF, 0x07, 0xE0, 0xF0, 0x7F, 0x80, 
  0xFF, 0x1F, 0xFE, 0xFF, 0xE0, 0x0F, 0xE0, 0xFF, 0x07, 0x80, 0xFF, 0x03, 
  0x00, 0xF0, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x3C, 0x00, 0x00, 0xF8, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x3F, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0xF8, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x1F, 0x00, 0x8F, 0xF7, 0xFF, 0x7C, 
  0xBC, 0xC7, 0xF3, 0xFF, 0xFC, 0xBC, 0x07, 0x00, 0x00, 0xFC, 0x1F, 0x00, 
  0x8F, 0x73, 0xFF, 0xFE, 0xBE, 0xC7, 0xFB, 0xFF, 0xFE, 0xBD, 0x03, 0x00, 
  0x00, 0xFC, 0x1F, 0x80, 0x8F, 0x73, 0xFF, 0xEF, 0xFE, 0xE7, 0xFB, 0x77, 
  0xEF, 0xFD, 0x03, 0x00, 0x00, 0xFC, 0x1F, 0x80, 0xDF, 0x7B, 0x9C, 0xE7, 
  0xFE, 0xF7, 0xE3, 0x71, 0xE7, 0xFD, 0x03, 0x00, 0x00, 0xFC, 0x0F, 0xC0, 
  0xDF, 0x79, 0x9E, 0xE3, 0xFE, 0xF3, 0xE3, 0x78, 0xE7, 0xFF, 0x03, 0x00, 
  0x00, 0xFC, 0x0F, 0xE0, 0xDF, 0x39, 0x8E, 0xF3, 0xFF, 0xFB, 0xE7, 0xF8, 
  0xE7, 0xFE, 0x01, 0x00, 0x00, 0xFC, 0x0F, 0xE0, 0xDF, 0x3F, 0x8E, 0x7F, 
  0xFF, 0xFF, 0xE7, 0x38, 0x7F, 0xEE, 0x01, 0x00, 0x00, 0xF8, 0x0F, 0x70, 
  0xDC, 0x1F, 0x0E, 0x3F, 0xFF, 0x9D, 0xF7, 0x38, 0x3F, 0xEF, 0x01, 0x00, 
  0x00, 0xF8, 0x0F, 0x00, 0x00, 0x03, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 
  0x08, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x0F, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x80, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,};
SSD1306 display(0x3c, 21, 22);
String rssi = "RSSI --";
String packSize = "--";
String packet ;


void loraData(){
  display.clear();
  display.setTextAlignment(TEXT_ALIGN_LEFT);
  display.setFont(ArialMT_Plain_10);
  display.drawString(0 , 15 , "Received "+ packSize + " bytes");
  display.drawStringMaxWidth(0 , 26 , 128, packet);
  display.drawString(0, 0, rssi); 
  display.display();
  Serial.println(rssi);
}

void cbk(int packetSize) {
  packet ="";
  packSize = String(packetSize,DEC);
  for (int i = 0; i < packetSize; i++) { packet += (char) LoRa.read(); }
  rssi = "RSSI " + String(LoRa.packetRssi(), DEC) ;
  loraData();
}

void setup() {
  pinMode(16,OUTPUT);
  digitalWrite(16, LOW);    // set GPIO16 low to reset OLED
  delay(50); 
  digitalWrite(16, HIGH); // while OLED is running, must set GPIO16 in high、
  
  Serial.begin(115200);
  while (!Serial);
  Serial.println();
  Serial.println("LoRa Receiver Callback");
  SPI.begin(SCK,MISO,MOSI,SS);
  LoRa.setPins(SS,RST,DI0);  
  if (!LoRa.begin(868E6)) {
    Serial.println("Starting LoRa failed!");
    while (1);
  }
  //LoRa.onReceive(cbk);
  LoRa.receive();
  Serial.println("init ok");
  display.init();
  display.flipScreenVertically();  
  display.setFont(ArialMT_Plain_10);
   
  delay(1500);
}

void loop() {
  int packetSize = LoRa.parsePacket();
  if (packetSize) { cbk(packetSize);  }
  delay(10);
}

کد های فوق را بر روی دو برد TTGO T Beam پروگرام کنید . پساز پروگرام کردن می توانید برد گیرنده را به کامپیوتر متصل کرده و وارد محیز Serial monitor آردوینو IDE شوید . همچنین یک باتری لیتیوم یونی 18650 را در جاباتری برد فرستنده قرار دهید .

 

Tags:
About Author: USER_4