Le Raspberry PI me sert de "Cerveau" qui permet de contrôler des microcontrolleur AVR (attiny,Arduino) depuis des ondes radio 433.92 Mhz (cf les ondes utilisées par les garages / portails)
Sur le Raspberry PI est exécuté un script qui toutes les 5 secondes, vérifie si j'ai des nouveaux messages sur GMAIL et puis active un programme qui va envoyer un signal au Microcontrolleur AVR qui va lui dire "Allume/Éteint" la broche 1 (le code sur l'attiny85 va lire les codes envoyés depuis le Raspberry PI est détecté ainsi quel broche doit être éteint ou allumer)
Le prototype est alimenté à l'aide d'un câble USB qui a été sectionné pour récupérer le 5V et la terre.
Pour la library arduino pour donner des ordres à du Arduino/attiny85 depuis un Rpi
https://github.com/maditnerd/433wirelessPI
Le script BASH pour vérifier les mails sur gmail:
- Code: Tout sélectionner
#!/bin/bash
gmail_login=username
gmail_password=password
while true
do
nbmail=$(curl -su $gmail_login:$gmail_password --silent "https://mail.google.com/mail/feed/atom" |grep "<fullcount>"|grep -o '[0-9]\+')
if [ $nbmail -eq 0 ]
then
./ardwl_cs 1 0
else
./ardwl_cs 1 1
fi
sleep 5
done
Le code pour l'attiny
- Code: Tout sélectionner
#include <Piwi.h>
// Attiny85
// Led notification
// Created By Sarrailh Remi
// Public Domain
// Plug LED on pin 1
// Plug 433Mhz Receiver on 0
// Declare which PIN receive DATA
Piwi piwi(0);
void setup()
{
// Output on Led
pinMode(1,OUTPUT);
//LED TEST at initialization
digitalWrite(1, HIGH);
delay(1000);
digitalWrite(1, LOW);
}
void loop()
{
// Listen for Rpi
piwi.listen();
}