#include <SPI.h>
#include <LoRa.h>
#include <Wire.h>
#include <SD.h>
File myFile;
const int pinBuzzer = 7;
const int pinLED = 8;
void setup()
{
pinMode(pinBuzzer, OUTPUT);
pinMode(pinLED, OUTPUT);
Serial.begin(9600);
if (!SD.begin(4)) { //tergantung di pin chipselect yang digunakan
Serial.println("Gagal baca microSD!");
return;
}
Serial.println("Sukses baca kartu microSD!");
while (!Serial);
Serial.println("TX");
if (!LoRa.begin(433E6)) {
Serial.println("GAGAL");
while (1);
}
}
void loop() {
int packetSize = LoRa.parsePacket();
if (packetSize)
{
Serial.println("Paket Diterima: ");
while (LoRa.available()) {
String LoRaData = LoRa.readString();
Serial.println(LoRaData);
digitalWrite(pinBuzzer, HIGH);
digitalWrite(pinLED, HIGH);
delay(200);
digitalWrite(pinBuzzer, LOW);
digitalWrite(pinLED, LOW);
delay(200);
digitalWrite(pinBuzzer, HIGH);
digitalWrite(pinLED, HIGH);
delay(200);
digitalWrite(pinBuzzer, LOW);
digitalWrite(pinLED, LOW);
delay(1000);
delay(1000);
myFile = SD.open("coba.txt", FILE_WRITE); //menulis File coba.txt
// jika file sudah berhasil dibuka maka tulis data dimulai
if (myFile) {
Serial.println("mencoba nulis data di file coba.txt");
myFile.println(LoRaData);
// tutup file
myFile.close();
Serial.println("SELESAI!");
} else {
// jika gagal print error
Serial.println("GAGAL TULIS coba.txt");
}
}
}
}