Bonjour,
Voici mon système composé d'un côté émission, et un côté réception.
Côté émission :
Un Trinket Pro v3 fait l'interface entre une appli de contrôle et un XBEE SX 868 RF.
On envoi une consigne d'état du relais depuis le PC -> le trinket traduit et envoi un état bas ou haut sur une pin du XBEE.
Le xbee fonctionne comme une "télécommande", il transmet à ses esclaves l'état de ses broches (paramétrable mais non programmable).
Côté réception :
Un XBEE également, qui reçoit l'info et recopie sur ses broches les états reçus. (ex: pin 32 à 3.3V en émission, alors pin 32 à 3.3V en réception)
Cette broche est connectée à un trinket pro qui traite l'état de la pin et alimente un côté ou un l'autre d'un relais bistable (double latch) selon la consigne.
Le but du relais bistable est de pouvoir conserver son état lors d'une coupure de courant.
Le problème est le suivant : au redémarrage du module en réception, si le relais était en état bas, alors il restera en état bas.
si le relais était en état haut, alors il passera en état bas (car le module XBEE n'enregistre pas l'état de ses broches, si la broche 32 est à l'état haut, au redémarrage elle sera à l'état bas, car la consigne n'est pas envoyée en continu)
Je cherche donc à programmer le trinket côté réception pour prendre en compte ce défaut et me permettre quand même de garder l'état de mes relais au démarrage, peut importe leur état précédent.
Des broches sont déjà utilisées pour connaitre l'état du balais du relais (un genre d'acknowledge)
Ce que j'ai réalisé pour l'instant :
Récupération de l'état des relais au démarrage, s'ils était à l'état haut avant redémarrage, alors je traffique le continu des variables à la séquence d'initialisation pour qu'il ne prenne pas en compte l'état des consignes du xbee (qui sont toutes à l'état bas du coup).
Le problème avec cette solution (qui fonctionne), c'est que pour changer à nouveau l'état de mon relais après un redémarrage du module de réception, il faut que je lui envoi 3 consignes (dernière consigne état HAUT, je dois envoyer une consigne état bas qui n'est pas prise en compte puisque le xbee a déjà toutes ses pins à l'état bas, puis une consigne état haut qui n'est pas prise en compte car les relais sont déjà à l'état haut, puis une consigne état bas qui sera prise en compte).
Auriez vous des suggestions ?
Merci
-----