first commit
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
// LoRa simple server with encrypted communications
|
||||
// In order for this to compile you MUST uncomment the #define RH_ENABLE_ENCRYPTION_MODULE line
|
||||
// at the bottom of RadioHead.h, AND you MUST have installed the Crypto directory from arduinolibs:
|
||||
// http://rweather.github.io/arduinolibs/index.html
|
||||
// Philippe.Rochat'at'gmail.com
|
||||
// 06.07.2017
|
||||
|
||||
#include <RH_RF95.h>
|
||||
#include <RHEncryptedDriver.h>
|
||||
#include <Speck.h>
|
||||
|
||||
RH_RF95 rf95; // Instanciate a LoRa driver
|
||||
Speck myCipher; // Instanciate a Speck block ciphering
|
||||
RHEncryptedDriver myDriver(rf95, myCipher); // Instantiate the driver with those two
|
||||
|
||||
float frequency = 868.0; // Change the frequency here.
|
||||
unsigned char encryptkey[16]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}; // The very secret key
|
||||
|
||||
void setup() {
|
||||
Serial.begin(9600);
|
||||
while (!Serial) ; // Wait for serial port to be available
|
||||
Serial.println("LoRa Simple_Encrypted Server");
|
||||
if (!rf95.init())
|
||||
Serial.println("LoRa init failed");
|
||||
// Setup ISM frequency
|
||||
rf95.setFrequency(frequency);
|
||||
// Setup Power,dBm
|
||||
rf95.setTxPower(13);
|
||||
myCipher.setKey(encryptkey, 16);
|
||||
delay(4000);
|
||||
Serial.println("Setup completed");
|
||||
}
|
||||
|
||||
void loop() {
|
||||
if (myDriver.available()) {
|
||||
// Should be a message for us now
|
||||
uint8_t buf[myDriver.maxMessageLength()];
|
||||
uint8_t len = sizeof(buf);
|
||||
if (myDriver.recv(buf, &len)) {
|
||||
Serial.print("Received: ");
|
||||
Serial.println((char *)&buf);
|
||||
}
|
||||
else
|
||||
{
|
||||
Serial.println("recv failed");
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user