Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <LoRaLib.h>
- SX1278 lora = new LoRa;
- int state;
- String str;
- String dataIn;
- int8_t indexOfA, indexOfB, indexOfC, indexOfD;
- String data1, data2, data3, data4;
- void setup() {
- Serial.begin(9600);
- SetupLoRa();
- }
- void loop() {
- state = lora.receive(str);
- if (state == ERR_NONE) {
- Serial.print(F("Data: "));
- Serial.println(str);
- dataIn = str;
- parseData();
- ShowRxData();
- resetData();
- }
- }//End Of Loop
- void SetupLoRa() {
- Serial.print(F("Initializing ... "));
- state = lora.begin();
- if (state == ERR_NONE) {
- Serial.println(F("success!"));
- } else {
- Serial.print(F("failed, code "));
- Serial.println(state);
- while (true);
- }
- }
- void parseData() {
- indexOfA = dataIn.indexOf("A");
- indexOfB = dataIn.indexOf("B");
- indexOfC = dataIn.indexOf("C");
- indexOfD = dataIn.indexOf("D");
- data1 = dataIn.substring(0, indexOfA);
- data2 = dataIn.substring(indexOfA + 1, indexOfB);
- data3 = dataIn.substring(indexOfB + 1, indexOfC);
- data4 = dataIn.substring(indexOfC + 1, indexOfD);
- }
- void ShowRxData() {
- Serial.println("HR : " + data1);
- Serial.println("Temp: " + data2);
- Serial.println("Lat : " + data3);
- Serial.println("Lng : " + data4);
- }
- void resetData() {
- dataIn = "";
- }
- /*
- // print RSSI (Received Signal Strength Indicator)
- // of the last received packet
- Serial.print(F("RSSI:\t\t\t"));
- Serial.print(lora.getRSSI());
- Serial.println(F(" dBm"));
- // print SNR (Signal-to-Noise Ratio)
- // of the last received packet
- Serial.print(F("SNR:\t\t\t"));
- Serial.print(lora.getSNR());
- Serial.println(F(" dB"));
- // print frequency error
- // of the last received packet
- Serial.print(F("Frequency error:\t"));
- Serial.print(lora.getFrequencyError());
- Serial.println(F(" Hz"));
- } else if (state == ERR_RX_TIMEOUT) {
- // timeout occurred while waiting for a packet
- Serial.println(F("timeout!"));
- } else if (state == ERR_CRC_MISMATCH) {
- // packet was received, but is malformed
- Serial.println(F("CRC error!"));
- }
- */
Advertisement
Add Comment
Please, Sign In to add comment