Module Gladys - Exécution au démarrage


#1

Bonjour à tous !

Je me permets de créer ce petit thread car j’ai pour projet de développer quelques modules dans le but d’adapter certains supports matériels à mon installation déjà en place :

  • Détecteur d’ouverture de porte fonctionnant en 433 MHz
  • Pilotage de ma télévision en IR (je me renseigne en parallèle sur le module LIRC)
  • Communication avec un Arduino en 433 MHz (le but étant qu’à chaque signal 433 MHz reçu par l’Arduino, il envoie un signal en IR à mon ruban de LED RGB)

Pour faire cela, il m’a paru logique d’avoir un script exec.js qui s’exécute au démarrage de Gladys et qui lit les données de mon récepteur 433 MHz en continu.

Seulement voilà mon problème principal : j’ai beau me documenter au maximum je n’arrive pas à trouver la méthode pour faire en sorte que l’exec.js d’un module s’exécute toujours (et non pas une seule fois comme pour init.js) au redémarrage de Gladys.

Si l’un d’entre vous pouvait m’apporter son aide je lui en serai très reconnaissant :smile:

Merci beaucoup :wink:


#2

Salut,

Certain modules le font.
Il te suffit de placer dans le index.js de ton module, ce bout de code:

gladys.on('ready', function(){
   // fais ce que tu veux ici
})

En gros, l’index.js est lu par le core et exporté/exécuté et ce bout de code vient placer un trigger qui s’exécutera lorsque Gladys sera démarrée (on ‘ready’), doncà chaque démarrage.


#3

Salut,
Hum pas sur d’avoir tout compris ce que tu veux faire mais si jamais tu connectes directement un Emetteur/recepteur 433 MHz sur un Gladys raspberry pi ca n’est pas trop conseillé car la surveillance de la réception va demander beaucoup de ressource.
En général on préfère connecter un arduino via usb qui lui est équipé d’un émetteur récepteur.


#4

@Jean-Philippe Merci beaucoup pour ton retour, je vais pouvoir avancer sur le développement de mes modules :slight_smile:

@Spouet L’idée première était que j’avais des prises Chacon que je contrôle en 433 MHz, et depuis quelques jours je dispose enfin du matériel nécessaire pour mettre en place du contrôle en infrarouge. J’ai donc écrit un code Arduino qui mappe un signal 433 MHz avec un signal IR. Du coup il me suffit à présent d’envoyer le code 433 MHz via le Raspberry pour que l’Arduino le détecte et envoie le signal IR correspondant à mon ruban LED.

Du coup, pour améliorer le contrôle des signaux j’avais pensé utiliser un récepteur 433 MHz au niveau du Raspberry afin de mettre en place des confirmations de réception et de traitement des signaux par l’Arduino, mais cette partie est totalement optionnelle pour l’instant.

Cependant, pour mon détecteur d’ouverture de porte, je ne dispose pas encore d’un autre Arduino que je pourrais connecter au Raspberry. J’avais donc dans l’idée de créer un module qui lance un sniffer de signaux au démarrage et qui vérifie les signaux à une certaine période (disons 1 seconde dans un premier temps).