Heltec_WiFi_Lora_32, Lora-pakketjes verzenden

Software vragen voor ESP chip familie
Berichten: 8
Geregistreerd: 25 Okt 2017, 16:39

Heltec_WiFi_Lora_32, Lora-pakketjes verzenden

Berichtdoor henkdruiven » 02 Nov 2017, 11:32

Heltec_WiFi_Lora_32

Hieronder een eenvoudig werkend script voor het verzenden van Lora-pakketjes.

Waar staat Lora voor

Code: Alles selecteren
/*
 * Eenvoudig script voor het verzenden van Lora-pakketjes
 * Wat is Lora: https://www.eurofiber.nl/wat-lora-eigenlijk/
 */

#include <SPI.h>
#include <LoRa.h>
#include <U8x8lib.h> // OLED

//OLED pins to ESP32 GPIOs via this connecthin:
//OLED_SDA — GPIO4
//OLED_SCL — GPIO15
//OLED_RST — GPIO16

// WIFI_LoRa_32 ports

// GPIO5 — SX1278’s SCK
// GPIO19 — SX1278’s MISO
// GPIO27 — SX1278’s MOSI
// GPIO18 — SX1278’s CS
// GPIO14 — SX1278’s RESET
// GPIO26 — SX1278’s IRQ(Interrupt Request)

#define SS 18
#define RST 14
#define DI0 26
#define BAND 433E6 //915E6

// Het OLED-schermpje
U8X8_SSD1306_128X64_NONAME_SW_I2C u8x8( /* clock=*/ 15, /* data=*/ 4, /* reset=*/ 16);

int counter = 0;

void setup( )
{

  u8x8.begin( );
  u8x8.setFont( u8x8_font_chroma48medium8_r);

  pinMode( 25, OUTPUT); //Send success, LED will bright 1 second
 
  Serial.begin( 115200);
 
  SPI.begin( 5, 19, 27, 18);
  LoRa.setPins( SS, RST, DI0);
  Serial.println( "LoRa Sender");
  u8x8.drawString( 0, 1, "LoRa Sender");
  if (!LoRa.begin(BAND))
  {
    Serial.println( "Starting LoRa failed!");
    u8x8.drawString( 0, 1, "Starting LoRa failed!");
    esp_deep_sleep_start(); // Doe niets meer
    while( 1);
  }
  Serial.println( "LoRa Initial OK!");
  u8x8.drawString( 0, 3, "LoRa Initial OK!");
}

void loop( )
{
  Serial.print( "Sending packet: ");
  Serial.println( counter);
  u8x8.drawString( 0, 5, "Sending packet: ");
  String strCounter= String( counter);
  char charCounter[ 20];
  strCounter.toCharArray( charCounter, 20);
  u8x8.drawString( 2, 7, charCounter);
 
  // send packet
  LoRa.beginPacket( );
  LoRa.print( "Hello..");
  LoRa.print( counter);
  LoRa.endPacket( );
 
  counter++;
  digitalWrite( 25, HIGH); // turn the LED on (HIGH is the voltage level)
  delay( 1000); // wait for a second
  digitalWrite( 25, LOW); // turn the LED off by making the voltage LOW
  delay( 1000); // wait for a second
 
  delay(3000);
}


Advertisement

Terug naar ESP Software

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 1 gast