Bonjour,
Voilà quelques nouvelles de mon projet qui a bien avancé !
J’ai créé ce petit script Python cmd_mcz.py
pour lancer les différentes commandes au poêle:
import sys
import RPi.GPIO as GPIO
import time
pin = 11
GPIO.setmode(GPIO.BOARD)
GPIO.setup(pin, GPIO.OUT)
request = sys.argv[1]
print(request)
pulselength=0.00035
cmd_start = [1,1,1,1, ... ,1,0,1,0,1,1]
cmd_stop = [1,1,1,1, ... ,0,0,1,1,0,1]
cmd_P1 = [1,1,1,1, ... ,1,0,1,0,1,1]
cmd_P2 = [1,1,1,1, ... ,0,0,1,1,0,1]
...
if request == 'start':
code=cmd_start
elif request == 'stop':
code=cmd_stop
elif request == 'P1':
code=cmd_P1
elif request == 'P2':
code=cmd_P2
elif ...
for i in code:
# print (i)
if i==0:
GPIO.output(pin,0)
time.sleep(pulselength)
elif i==1:
GPIO.output(pin,1)
time.sleep(pulselength)
GPIO.output(pin,0)
J’ai placé celui-ci dans le dossier python_scripts
du docker homeassistant
J’exécute ensuite ce script directement via homeassistant avec la plateforme command_line
#configuration.yaml
switches:
- platform: command_line
switches:
cmd_line_mcz:
command_on: python3 /config/python_scripts/cmd_mcz.py 'start'
command_off: python3 /config/python_scripts/cmd_mcz.py 'stop'
… Dnas mon premier message j’avais parlé d’un temps d’impulsion de 415 us, cependant le Raspberry semble mal cadencé, ou certaines opération son « lentes », leur temps d’exécution devient significatif (j’ai surement du rater quelque chose …) et les impulsions de 415 us ne permettaient pas de communiquer avec le poêle. Dans le doute, j’ai balayé une plage un peu plus large et je suis tombé sur 350 us qui fonctionne à la perfection
NeverSurrender
Je suis maintenant capable d’allumer / éteindre, augmenter / diminuer la puissance et la ventilation du poêle ! Il ne me reste « plus qu’à » faire une gestion correcte pour un mode auto basé sur deux ou trois capteur de température, des détections de présence, des modes workday / Weekend / télétravail etc…
Si vous avez des idées, template, intégration, card lovelace qui pourraient me faciliter la vie pour cette dernière étape n’hésitez pas à partager !