- Détails
- Écrit par : steneor
- Catégorie : Divers RPI
- Temps de lecture : 1 min
- Affichages : 83
Voila un script qui fait cela trés bien
https://github.com/billw2/rpi-clone
- Détails
- Écrit par : steneor
- Catégorie : Divers RPI
- Temps de lecture : 4 mins
- Affichages : 239
Dans le m?me style que le bouton pour arréter OSMC.
Pour le bouton j'ai utilisé un bouton avec sonnette sans fil . dispo ici
Pour info :
Pour le bouton émetteur la pile 9V est fournie.
Le carillon récepteur fonctionne sous 3V (avec 2 piles AA)
-Le carillon consomme 0.5 mA en veille, 35 mA en carillonnant.
- J'ai débranché le carillon et je l'ai remplacé par un opto la consommation est alors de 4 mA en carillonnant.
Pour le câblage: j'ai aliment?é le carillon avec le 3.3V du RPI. J'ai débranché le carillon et je l'ai remplacé par un opto SFH 620A.
L'émetteur de l'opto est relié au 0V et le collecteur sur le GPIO x. J'ai rajouté une capa de 100 nF entre l'émetteur et le collecteur pour filtrer quelques parasistes.
Il faut un programme interruptd.py qui sera lancé au démarrage et qui va traiter l'interruption (bouton).
Dans mon cas, interruptd.py lance un script qui contient les actions à faire (envoie sms, envoie mail ...)
#!/usr/bin/env python2.7
# -*- coding: utf-8 -*-
# on importe les modules necessaires
import os
import RPi.GPIO as GPIO
import time
intPin = 26
t0=time.time()
decomptMax=8
decompt=decomptMax
# on met RPi.GPIO en mode notation BCM (numero des pins)
GPIO.setmode(GPIO.BCM)
# on met le GPIO 26 a UP pour eviter tout signal faux au demarrage, avec R de pull up
GPIO.setup(intPin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
def attente_signal():
global t0
global decompt
#global decomptMax
# on met le bouton en attente d'appui et donc de passage du GPIO sur Down
# le programme est en pause tant qu'il n'y a pas d'appui sur le bouton - pas de charge CPU
#GPIO.wait_for_edge(intPin, GPIO.FALLING)
#GPIO.wait_for_edge(intPin, GPIO.BOTH)
GPIO.wait_for_edge(intPin, GPIO.RISING)
# lorsque le GPIO passe sur down - appui - on passe a la suite
t1=time.time()
dt=t1-t0
if dt < 2 : # pour filtrer les rebonds
decompt = decompt - 1
else:
decompt = decomptMax
t0=t1
if decompt < 1:
print '** Signal sur gpio ' ,intPin ,' - ici ecrire la suite des ... **'
os.system('/var/www/interruption/alarme_sms.sh')
decompt = decomptMax
# Tempo de 10 s avant nouvelle interruption (filtre les rebonds ou melodie carillon)
time.sleep(10)
while 1:
attente_signal()
GPIO.cleanup() # pour sortir propement en cas control C.
Le script qui est appelé.
#!/bin/bash
# script version 1.0 pour envoyer sms + mail
#
#sms pour envoie de l alarme
wget -O- --no-check-certificate 'https://smsapi.free-mobile.fr/sendmsg?user=xxxxxxxx&pass=yyyyyyyyyy&msg=Alarme bouton from (rpi alarme_sms.sh)'
# Mail pour envoie de l alarme
mail -s Alarme_bouton_from_RPICette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser. <Alarme bouton (rpi /var/www/interruption/alarme_sms.sh) a : $(date)
EOF
- Détails
- Écrit par : steneor
- Catégorie : Divers RPI
- Temps de lecture : 2 mins
- Affichages : 293
Un bouton poussoir pour arréter OSMC
Cabler un BP entre GPIO17 et 0V (pin 13 et 11)
Ajouter la librairie rpi.gpio pour python
$ sudo su
# apt-get update
# apt-get install python-pip python-dev gcc
# pip install rpi.gpio
créer le script shutdown.py
#!/usr/bin/env python2.7
# on importe les modules necessaires
import os
import RPi.GPIO as GPIO
import time
# on met RPi.GPIO en mode notation BCM (numero des pins)
GPIO.setmode(GPIO.BCM)
# on met le GPIO 17 a UP pour eviter tout signal faux au demarrage
GPIO.setup(17, GPIO.IN, pull_up_down=GPIO.PUD_UP)
def attente_signal():
print "Attente du signal "
# on met le bouton en attente d'appui et donc de passage du GPIO sur Down
# le programme est en pause tant qu'il n'y a pas d'appui sur le bouton - pas de charge CPU
GPIO.wait_for_edge(17, GPIO.FALLING)
# lorsque le GPIO passe sur down - appui - on passe a la suite
print "** Signal sur gpio 17 - ici ecrire la suite des ... **"
os.system('sudo halt')
time.sleep(1)
attente_signal()
GPIO.cleanup()
Executer le script shutdown.py au démarrage, pour cela ajouter dans /etc/rc.local
python /home/osmc/shutdown.py &
- Détails
- Écrit par : steneor
- Catégorie : Divers RPI
- Temps de lecture : 3 mins
- Affichages : 238
df
Sys. de fichiers blocs de 1K Utilisé Disponible Uti% Monté sur
/dev/root 7577920 1856288 5384068 26% /
devtmpfs 242616 0 242616 0% /dev
tmpfs 246900 4 246896 1% /dev/shm
tmpfs 246900 9000 237900 4% /run
tmpfs 5120 4 5116 1% /run/lock
tmpfs 246900 0 246900 0% /sys/fs/cgroup
/dev/mmcblk0p1 64456 21312 43144 34% /boot
devtmpfs 242616 0 242616 0% /dev
A filesystem that contains information about devices. The files is pointers to device drivers in the kernel.
tmpfs 246900 9000 237900 4% /run
Used by daemons to save temporary information.
tmpfs 5120 4 5116 1% /run/lock
Used to prevent the same daemon to be started more than once.
tmpfs 246900 4 246896 1% /dev/shm
Used to create shared memory segments for Inter-Process Communication..
- Détails
- Écrit par : steneor
- Catégorie : Divers RPI
- Temps de lecture : 1 min
- Affichages : 270
Clavier azerty sur OSMC
Pour configurer le clavier (faire en console ou ssh) :
sudo apt-get install console-common
Pour reconfigurer :
sudo dpkg-reconfigure console-data