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

  • Freemobile : 3,99 €/mois tout illimité durant un an…

    Décidément, la semaine est riche sur le thème Freemobile : aujourd’hui, l’opérateur bricolo lance une promotion sur Vente-Privée, avec un abonnement voix/sms/mms illimités, l’accès à la 3G et à la 4G pour seulement 3,99 €/mois, sans engagement, et durant une année. Forcément, l’offre est à destination des nouveaux pigeons clients, sans aucun engagement, moyennant la facturation de la carte SIM pour une dizaine d’euros. A ce tarif là, j’avoue avoir craqué : ce ne sera pas pire que le réseau déficient…

  • Nouveau produit : boîtier étanche pour platine Alix

    Un nouveau produit fait son apparition sur la boutique version 2, sous la forme d’un boîtier étanche pour platine Alix. Vous pourrez ainsi intégrer vos cartes mères Alix directement en extérieur, faire sortir des cordons WiFi ou ethernet via les presse-étoupe étanches, voir connecter une sortie d’antenne N femelle comme nous vous le présenterons prochainement 😉 Patience, la boutique V2 arrive, pratiquement tous les anciens produits ont été activés, testés. Les nouveautés sont en cours d’intégration, tout n’est pas encore…

  • WiFi : les trous améliorent la couverture

    Imaginez donc la révolution : percer des trous à travers un mur permet désormais d’améliorer la couverture WiFi de votre box. Ce phénomène ne s’applique toutefois que pour un nombre limité de trous, avec une séquence de perçage bien précise. En moyenne, comptez un trou par canal WiFi utilisé : canal 9, 9 trous ! Canal 2 ? 2 trous, on économise du temps et de la poussière 😉 C’est un client qui a expliqué récemment ce phénomène incroyable, si…

  • Statistiques mensuelles

    Comme chaque mois, voici le point sur les visites reçues sur ce blog WiFi. Un rapide rappel des visites mensuelles : Juillet : 6810 Août : 7400 Septembre : 8200 Octobre : 8990 Firefox progresse, avec près de 53% des utilisateurs, tout comme MSIE avec 35,51%. Windows représente près de 89% des systèmes utilisés. Les MAC ne sont que 5,74% à surfer ici, suivis par Linux avec 4,99%. Ces chiffres sont basés sur une période d’un mois, du 29 Septembre…

  • Bbox Nomad 6 Go : 1 €/mois durant un an !

    Bouygues dégaine une offre Bbox Nomad proposant 6 Go mensuels à seulement 1 €/mois, et cela durant une année, après une première facture au tarif habituel de 14,90 €, et toujours SANS ENGAGEMENT. Utilisateur depuis plus d’un an de cette formule, je ne peux que la conseiller : la couverture 3G/4G de Bouygues s’est considérablement améliorée, les débits sont présents, même en campagne. Motard, je mets la Bbox Nomad dans la poche durant la journée et profite d’une connexion stable,…

  • |

    Morandini le Geek : Freemobile

    Quand Jean-Marc Morandini se fend d’un billet sur Freemobile, cela donne ce que vous allez pouvoir lire sur ce lien. Un commentaire résume bien le billet publié sur le blog du fond de cuve people : Sans rire, ça c’est du journalisme … Rapporter la moitié de ce qui a été dit lors d’une conférence de presse où vous n’étiez même pas présent, c’est du beau boulot  Pour ceux que le sujet intéresse, n’hésitez pas à vous renseigner sur des sites…