/** * Utilisation de RadioHead ASK pour transmettre des tableau d'octets chiffré * via AES128, à destination de rtl_433. * * http://www.airspayce.com/mikem/arduino/RadioHead/classRH__ASK.html#details * https://rweather.github.io/arduinolibs/classAES128.html */ // import des libs RadioHead pour l'émission radio #include #ifdef RH_HAVE_HARDWARE_SPI #include // Not actually used but needed to compile #endif //import des libs crypto #include #include // initialisation du driver du module 433Mhz sur la pin D12 (defaut) RH_ASK driver; //TX to pin D12 // RH_ASK driver(2000, 4, 5, 0); // ESP8266 or ESP32: do not use pin 11 or 2 // RH_ASK driver(2000, 3, 4, 0); // ATTiny, RX on D3 (pin 2 on attiny85) TX on D4 (pin 3 on attiny85), AES128 cipher; // Instantiate an AES128 block ciphering unsigned char encryptkey[16] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,}; void setup() { #ifdef RH_HAVE_SERIAL Serial.begin(9600); // Debugging only #endif if (!driver.init()) #ifdef RH_HAVE_SERIAL Serial.println("init failed"); #else ; #endif // configuration de la clé de chiffrement cipher.setKey(encryptkey, sizeof(encryptkey)); // message à émettre uint8_t data[] = "Bumblebee"; //Chiffrement du message uint8_t buff[cipher.blockSize()]; cipher.encryptBlock(buff,data); //Émission du message driver.send(buff, cipher.blockSize()); // On envoie le message driver.waitPacketSent(); } void loop() { // ne fait rien // l'emission du message est dans le setup() }