EnOcean Partie 4: Appairage
Appairage simple
Maintenant que nous savons réceptionner des données, on va voir comment en envoyer. Pour un premier test, on va utiliser ce que j’ai dans mon plafonnier. Ce sont des boitiers DCL avec un contrôleur 2x5A portant un EEP D2-01-12.
Le premier truc à savoir, c’est qu’il faut que ce récepteur soit appairé avec l’émetteur. Il a besoin de connaitre la liste des émetteurs qui vont être autorisés à lui envoyer des ordres. Sinon, je pourrai allumer la lumière chez mon voisin…
Dans le cas de ce module, pour lancer un appairage il faut appuyer 3 fois sur le poussoir entouré en rouge. Si on désire le commander avec un interrupteur la méthode est assez simple : une fois le récepteur en mode appairage, il suffit d’appuyer sur le bouton de l’émetteur qui allumera la lumière. Le bouton opposé deviendra celui qui éteint la lumière. Le récepteur sort du mode appairage une fois qu’il a rencontré son nouvel émetteur. Il en sort automatiquement au bout de quelques secondes si rien ne s’est produit.
Cette action est à réaliser rapidement. En effet, en appartement, si un voisin allume sa lumière quand votre module est en mode appairage (pour peu qu’il soit à porté radio), désormais c’est son interrupteur qui pilotera votre module. En maison isolée, le risque est très limité.
Appairage avancé
Teach-In Query
Lorsqu’un module est en mode appairage, il envoie des paquets UTE (Universal Teach In) portant le RORG D4. Dans ce paquet on trouve différentes informations intéressantes comme le profil EEP complet du module et son identifiant.
Bytes | Description |
---|---|
55 | Byte de synchronisation, 55, on ne le présente plus ! |
00 0D | Taille du télégramme du groupe Data (en bleu), soit 13 octets |
07 | Taille des données optionnelles (en vert), 7 octets |
01 | Type de paquet, ici 1 = RADIO_ERP1 |
FD | CRC8 Header |
D4 | Télégramme UTE (Universal Teach In) |
A0 02 46 00 12 01 D2 | Données UTE (Schéma ci-dessus), on y retrouve le RORG, FUNC et TYPE. 0xA0 = 0b10100000 :
|
05 83 59 21 | ID de l’émetteur |
00 | Status |
00 | Sub tel Num |
FF FF FF FF | ID du destinataire (ici broadcast) |
50 | RSSI value |
00 | Niveau de sécurité |
B4 | CRC8 Data |
Teach-In Response
Une fois que la passerelle (en l’occurrence ici votre TCM310) a reçu un paquet UTE, elle a 500ms pour y répondre (si elle a envie…)
Le paquet de réponse a la forme suivante qui ressemble très fortement à la demande.
Ce qui dans notre cas, donnera la réponse suivante :
Bytes | Description |
---|---|
55 | Byte de synchronisation, 55, comme d’habitude |
00 0D | Taille du télégramme du groupe Data (en bleu), la réponse a la même taille que la demande. |
07 | Taille des données optionnelles (en vert), 7 octets |
01 | Type de paquet, ici 1 = RADIO_ERP1 |
FD | CRC8 Header (Le header est identique, donc le CRC aussi) |
D4 | Télégramme UTE (Universal Teach In) |
91 02 46 00 12 01 D2 | Données UTE. Seul le premier octet change, le reste est recopié de la demande. 0x91 = 0b10010001
|
05 1A EB C7 | ID de l’émetteur (qui maintenant est la passerelle qui répond) |
30 | Status |
00 | Sub tel Num |
05 83 59 21 | ID du destinataire. Recopie de l’ID de l’émetteur de la demande. |
FF | RSSI value |
00 | Niveau de sécurité |
XX | CRC8 Data à recalculer avec les nouvelles valeurs |
Maintenant que le module est appairé avec la passerelle, on va pouvoir envoyer des commandes dans la prochaine partie : EnOcean Partie 5: Envoie de données