Raspberry Pi : réception télécom. 433 MHz avec RFSniffer + script Python

Avec notre RFSniffer modifié, nous savons désormais comment recevoir un code dans un fichier stocké dans /home/pi/recu.txt, un processus mis en tâche de fond.

Voyons maintenant comment, au moyen d’un simple script rx2.py, placé dans /home/pi, nous allons pouvoir lancer des actions en fonction du code reçu (pensez à recréer les identations nécessaires à Python, WordPress a la faculté de tout bousiller lors d’un copier/coller, désolé…).

Nous allons commencer par copier recu.txt dans un fichier temporaire, temp.txt. Ouvrons alors ce fichier, lisons son code et lançons alors les actions appropriées :

  • allumage du salon (un script .sh tout simple exécuté en arrière plan)
  • extinction du salon
  • activation du relai 0 du PiFace, sous forme de pression : j’appuie, je relâche, comme s’il s’agissait d’une pression sur une télécommande
  • activation du relai 1 du PiFace

Pensez à créer un fichier /home/pi/zero.txt contenant juste le chiffre 0 (zero) sans rien d’autre.

Lancez le script simplement :

python3 rx2.py

Si vous voulez le faire tourner en tache de fond, ajoutez simplement un # devant les lignes contenant print, de façon à ce qu’aucun affichage ne vienne vous déranger, puis lancez le :

python3 rx2.py &

 

Je suis conscient qu’il doit être possible de faire un script beaucoup plus « pro » : je ne suis pas programmeur, je l’assume pleinement, mais le script fonctionne, n’est-ce pas l’essentiel ?

Et puis Blogwifi reste ouvert pour la publication de vos améliorations, c’est le principe d’un travail sans licence commerciale, non ? 😉

A vos scripts, prêts, partez !!

raspidomo1

#!/usr/bin/python3
#
# Lecture du code de télécommande reçu par RFSniffer (version modifiée, en tâche de fond)
# le code reçu se trouve dans /home/pi/recu.txt
#
import os
#
# Boucle de detection sans fin
#
# var = 1
while True :
#
# on copie recu.txt dans temp.txt pour éviter de le lire alors que le processus RFSniffer l'utilise (plantage assuré)
#
os.system('sudo cp /home/pi/recu.txt /home/pi/temp.txt')
#
# Ouverture et lecture de temp.txt
#
f = open('/home/pi/temp.txt', encoding='utf-8')
g = int(f.read())
#
# détection du code
# puis remise à zero de recu.txt en copiant zero.txt à sa place
# (zero.txt contient un simple 0)
#

#
# activation relai 0 du PiFace : ON puis OFF
#
if g == 4195665:
print ("Relai 0")
os.system('sudo python /home/pi/output.py 0')
os.system('sudo cp /home/pi/zero.txt /home/pi/recu.txt')

#
# activation relai 1 du PiFace : ON puis OFF
#
if g == 4195668:
print ("Relai 1")
os.system('sudo python /home/pi/output.py 1')
os.system('sudo cp /home/pi/zero.txt /home/pi/recu.txt')

#
# télécommande du salon, lancement des scripts salon_on ou salon_off (envoi de trappes SNMP à un contrôleur 10 relais)
# à modifier selon les besoins, le code est indiqué dans g == xxxxxxxx: xxxxxxx = code de télécommande
#
elif g == 4198737:
print ("salon on")
os.system('sudo sh /home/pi/salon_on.sh &')
os.system('sudo cp /home/pi/zero.txt /home/pi/recu.txt')

elif g == 4198740:
print ("salon off")
os.system('sudo sh /home/pi/salon_off.sh &')
os.system('sudo cp /home/pi/zero.txt /home/pi/recu.txt')

Publications similaires

  • Sosh : débits toujours aussi bons

    Les débits ne varient pas chez Sosh, ni avant le portage du numéro de mobile, ni après : Les indécis, les timbrés rouges de SFR ou les free-fous vont bien entendu trouver toutes les perversions dans ce qui n’est qu’un simple test, sans plus. Sachez juste qu’il a été réalisé dans une zone industrielle, ce jour à 13h24, le smartphone android dans une voiture à l’arrêt, avec un signal maximum. Hier soir, 22h53, j’obtenais 5.29 Mbps down, 1.52 MBps up,…

  • Sosh : nouveaux forfaits le 5 Avril !

    On attendait une révolution chez Sosh, on hérite d’un bébé avec l’eau du bain, tout détrempé et en piteux état, dommage 🙁 Certes, c’est tout de même une mini-révolution de comptoir puisque l’opérateur va proposer de nouveaux forfaits, avec SMS illimités lors d’un déplacement en Europe ou dans les DOM (mais pas d’illimité si vous envoyez des sms DEPUIS la France vers l’Europe ou les DOM, nuance de taille !!), mais là encore seule une infime catégorie de la population…

  • ESP-12 : présentation

    Suite de la série des essais avec l’ESP8266, cette fois-ci avec l’ESP-12, toujours plus petit : On peut difficilement faire plus petit, enfin si, mais pas avec autant de GPiO intégrés, 9 au total, donc 8 utilisables si j’ai bien suivi. On peut soit envisager de se relier directement, soit utilisé le kit commandé en Asie, avec une platine sur laquelle vous allez souder l’ESP12 et venir ajouter des connecteurs « à taille humaine » pour vos branchements ultérieurs : Perception de…

  • Google I/O ou Apple Keynote : j’ai choisi :)

    Fan des nouveautés, je suis le premier à suivre les conférences des principaux acteurs technologiques du marché, dont Apple et Google. Chez Apple, tout est cadré, verrouillé, prévu, anticipé. Les intervenants sont dopés à l’enthousiasme américain : tout est amaaaaaaaazing, great et tout est forcément nouveau. « Ceci est une révolution », cette petite phrase régulièrement moquée n’en prend que tout son sens tellement rien n’est désormais plus révolutionnaire, juste évolutif. Chez Google, lors de la fameuse I/O, THE conférence qui réunit les développeurs du…

  • Clin d’oeil aux « cousins »

    Un p’tit clin d’œil aux cousins qui visitent ce blogue, et je l’écris volontairement ainsi puisque c’est l’orthographe employée par nos visiteurs Québécois, fervents défenseurs de la langue française ! Sur une période d’un mois, vous avez en effet été 302 à nous rendre visite ici depuis Outremont, St Léonard, Mt Royal, Québec, Ste Foy, Montréal, Ottawa, et j’en oublie volontairement. C’est donc vraiment fin de vous retrouver icitte, si je ne me trompe pas trop de vocabulaire, et bien…

  • |

    (màj) Bbox Miami : Arcadyan inside, mais Android TV limité

    Avec la Bbox Miami, l’accès au Google Play révèle quelques informations sur le contenu de l’appareil : Arcadyan est donc le constructeur, on retrouve d’ailleurs quelques décodeurs IP TV qui ont un petit air de famille dans leur gamme IP TV. Je vous laisse volontiers fouiller sur leur site internet, il y a quelques pépites sympas, mais hélas bien peu de produits semblent disponibles sur les marchés asiatiques habituels (Dx, Alieexpress, etc.). Force est toutefois de constater que vous n’avez…