Étape 5: Écrire du code pour votre appareil
RC-interrupteur comprend des fonctions intégrées qui envoie des mots codés pour certains appareils supportés nativement - donc si vous avez un de ces appareils (je n’ai pas), vous devriez être capable d’utiliser les méthodes RCSwitch::switchOn() et RCSwitch::switchOff() dans les esquisses d’exemple de TypeX.
Si ce n’est pas le cas, vous devrez manuellement définir le protocole et PulseLength et envoyer les codes brutes à l’aide de la méthode RCSwitch::send() ou RCSwitch::sendTriState(), comme indiqué ci-dessous.
Le code suivant – basé sur l’esquisse de « SendDemo » – un de mes interrupteurs de courant sans télécommande s’allume et s’éteint toutes les 1 seconde. Noter que la longueur de l’impulsion doit être réglé manuellement parce qu’elle diffère de la longueur d’impulsion par défaut pour le protocole 1. J’ai créé une fonction – command() – qui accepte le numéro du canal et on/off comme arguments entiers et recherche l’adresse correspondante et les commandes de données spécifiques sur mon appareil. Pour votre appareil, vous pourriez créer une fonction similaire, ou il suffit d’envoyer les codes bruts.
Voici le code qui ouvre et ferme ma porte de garage (simule le bouton 1) toutes les 10 secondes. Il clignote également le bord LED pour indiquer qu'une commande a été envoyée.