GPIOs inputs & Domoticz

Forum dédié aux questions concernant la configuration de votre serveur sous Linux
Jihem
Messages : 337
Inscription : 19 sept. 2014, 13:04
Localisation : Finistère Sud

Re: GPIOs inputs & Domoticz

Message par Jihem »

J'ai bien lu tes posts, mais les Gpio ne fonctionnent pas de la même façon en mode in et en mode out.
En mode out c'est Domoticz qui change l'état du Gpio; pas besoin de pull-up c'est 0 ou 1.
En mode in c'est le contacteur qui change l'état et Domoticz vient lire de temps en temps cet état. Si pas de pull-up, quand le contact est ouvert le gpio ne change pas toujours d'état donc Domoticz ne voit rien. C'est aussi pour ça que le test ne peux pas marcher puis qu'il envoit un ordre sur un gpio en mode out et pas une lecture.
Si la commande "gpio read" indique bien un changement d'état,
Si t'es "gpio export" sont fait comme il faut,
Si ton gpio est bien en mode in dans la liste des gpio de ton widget contact,
Regarde dans les logs de Domoticz si le gpio est bien interrogé.
Le temps entre 2 lectures peut être long, dans ce cas essaye avec ce script

Code : Tout sélectionner

!/bin/bash

while :; do
         while [ `gpio  read 1 ` = 1 ]; do 
                curl "http://192.168.1.27:8080/json.htm?type=command&param=switchlight&idx=10&switchcmd=On&level=0"
                sleep 3   #Pour ne pas surcharger le CPU
 
        done
                curl "http://192.168.1.27:8080/json.htm?type=command&param=switchlight&idx=10&switchcmd=Off&level=0"
      sleep 3   
done
Avec l'adresse de ton Raspberry ,l'idx de ton widget et le n° du gpio(Wpi).
Hard:Raspberry Pi4 + SSD Arduino Tablette murale Archos
Soft: Domoticz WireGuard vpn Homebridge Tradfri Ikea
Devices:[/colore]Rfxtrx433 DI-O Chacon Sonoff touch Anémomètre, pluviometre, sondes Orégon, capteurs humidité Miflora, téléinfo
Dr No
Messages : 130
Inscription : 22 janv. 2015, 17:02
Localisation : Sud de France (Hérault)

Re: GPIOs inputs & Domoticz

Message par Dr No »

@Jihem

Un grand merci pour tes infos
Quand je te disais de relire mes posts c'est parce que j'y indique que tous les points que tu mentionnes sont OK y compris mes exports. Dans la liste des GPIOs proposée par Domoticz je trouve bien mes entrées mais si j'essaie de configurer une entrée (switchtype=contact) lors du test Domoticz me dit qu'il y a une erreur car le port n'est pas configuré en sortie ce qui est aberrant comme réponse.

Au sujet de ton script:
Cela fonctionne très bien, il me reste à l'adapter à mon besoin. C'est super j'ai fait un grand pas grâce à toi !!!
On peut fonctionner par interruptions ce qui est très peu consommateur de temps CPU, je vais regarder cela et te dirai si je trouve quelque chose d'intéressant.
Jihem
Messages : 337
Inscription : 19 sept. 2014, 13:04
Localisation : Finistère Sud

Re: GPIOs inputs & Domoticz

Message par Jihem »

Bonsoir
Content que ça marche.
Pour le test la réponse est aberrante car le test n'est pas fait pour tester une entrée.
Je pense d'ailleurs que Domoticz ne gère pas bien les entrées sur les Gpio mais c'est quand même un très beau logiciel!
A suivre
Hard:Raspberry Pi4 + SSD Arduino Tablette murale Archos
Soft: Domoticz WireGuard vpn Homebridge Tradfri Ikea
Devices:[/colore]Rfxtrx433 DI-O Chacon Sonoff touch Anémomètre, pluviometre, sondes Orégon, capteurs humidité Miflora, téléinfo
Yoann
Messages : 3
Inscription : 26 févr. 2015, 18:02

Re: GPIOs inputs & Domoticz

Message par Yoann »

Bonsoir,

J'ai exactement le même problème que Dr No!
En examinant de plus près dans les logs on dirait que le programme tourne en boucle et ralenti domoticz.
Ca affiche en boucle :
GPIO: Interrupt for GPIO 17 already queued. Ignoring...

Est-ce qu'il y a un problème de version non compatibles entre wiringpi (v.2.25) et domoticz (v.2284)? En tout cas j'ai essayé une l'ancienne version de domoticz et ça fait pareil.

Sinon avez-vous trouvé un script qui utilise une entrée sur interruption du coup?
Effectivement, je pense que ça utiliserait moins de ressources.
Dr No
Messages : 130
Inscription : 22 janv. 2015, 17:02
Localisation : Sud de France (Hérault)

Re: GPIOs inputs & Domoticz

Message par Dr No »

J'ai résolu mon problème, je n'utilise pas WiringPi.
Dans Python (installé de base sur la SD Domoticz) il y a une bibliothèque RPi-GPIO qui est très bien, elle permet de gèrer les entrées par interruption ce qui ne charge pas le CPU. Je gère 5 entrées comme ça et ça se passe très bien.

Essaie ça (pour l'entrée 5) :

Code : Tout sélectionner

#!/usr/bin/python

import RPi.GPIO as GPIO
import time
import urllib

GPIO.setmode(GPIO.BCM)

GPIO.setup(5, GPIO.IN, pull_up_down=GPIO.PUD_UP)

def Loop1(channel):
    if GPIO.input(5):
        urllib.urlopen("http://127.0.0.1:8080/json.htm?type=command&param=switchlight&idx=28&switchcmd=On&level=0")
    else:
        urllib.urlopen("http://127.0.0.1:8080/json.htm?type=command&param=switchlight&idx=28&switchcmd=Off&level=0")

GPIO.add_event_detect(5, GPIO.BOTH, callback=Loop1, bouncetime=200)

while True:
    time.sleep(100)
Pour une information plus complète voir :
http://sourceforge.net/p/raspberry-gpio ... ki/Inputs/
Dernière modification par Dr No le 27 févr. 2015, 16:39, modifié 1 fois.
Yoann
Messages : 3
Inscription : 26 févr. 2015, 18:02

Re: GPIOs inputs & Domoticz

Message par Yoann »

Ah oui, c'est vraiment très bien ça!!
J'ai essayé, ça marche en temps réel sur un relais... sans aucune 1/2 seconde de délais!
Merci Dr No ! :-)

Par contre est-ce que tu sais si c'est normal, dans mes logs j'ai tout le temps:
Hardware Monitor: Fetching data (System sensors)

Ça apparait exactement toutes les 30 secondes... Ça n'a pas l'air de ralentir le système en tout cas.
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: GPIOs inputs & Domoticz

Message par patrice »

@Dr No merci du tuyau ca va servir

@Yoann oui c' est normal et ce n' est pas lié au GPIO c' est la remontee de la Ram des températures ds Domoticz
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
Yoann
Messages : 3
Inscription : 26 févr. 2015, 18:02

Re: GPIOs inputs & Domoticz

Message par Yoann »

Ah d'accord,
Très bien, merci @patrice !
titimimi
Messages : 15
Inscription : 26 avr. 2015, 14:42

Re: GPIOs inputs & Domoticz

Message par titimimi »

bonjour a tous j essaie d installer votre script il fonctionne en commande mais je n ai aucun retour dans domoticz qui pourrait me donner la procedure pile poil a faire car j ai dut zaaper quelque chose :roll:
d avance merci beaucoup ;)
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: GPIOs inputs & Domoticz

Message par patrice »

Le script plus haut bascule l' interrupteur dont l idx est 28 a on/off
Il faut donc que tu y mettes ton idx de ton switch virtuel a toi
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
Répondre