// Only supports SX1276/SX1278 #include #include "LoRaBoards.h" void setup() { setupBoards(); // When the power is turned on, a delay is required. delay(1500); Serial.println("LoRa Receiver"); #ifdef RADIO_TCXO_ENABLE pinMode(RADIO_TCXO_ENABLE, OUTPUT); digitalWrite(RADIO_TCXO_ENABLE, HIGH); #endif LoRa.setPins(RADIO_CS_PIN, RADIO_RST_PIN, RADIO_DIO0_PIN); if (!LoRa.begin(LORA_FREQ_CONFIG)) { Serial.println("Starting LoRa failed!"); while (1); } } void loop() { // try to parse packet int packetSize = LoRa.parsePacket(); if (packetSize) { // received a packet Serial.print("Received packet '"); String recv = ""; // read packet while (LoRa.available()) { recv += (char)LoRa.read(); } Serial.println(recv); // print RSSI of packet Serial.print("' with RSSI "); Serial.println(LoRa.packetRssi()); if (u8g2) { u8g2->clearBuffer(); char buf[256]; u8g2->drawStr(0, 12, "Received OK!"); u8g2->drawStr(0, 26, recv.c_str()); snprintf(buf, sizeof(buf), "RSSI:%i", LoRa.packetRssi()); u8g2->drawStr(0, 40, buf); snprintf(buf, sizeof(buf), "SNR:%.1f", LoRa.packetSnr()); u8g2->drawStr(0, 56, buf); u8g2->sendBuffer(); } } }