Aller au contenu
Langue : FR

Un tag peut-il basculer entre deux états ?

Le tag, non, parce qu'il ne se souvient de rien entre deux lectures. Quelque chose d'autre doit détenir l'état, et l'endroit où ce quelque chose réside décide si la bascule reste fiable ou se décale de ce qu'elle commande.

Le tag n'a pas de mémoire

Un tag n'est alimenté que pendant sa lecture, et il ne retient rien du fait d'avoir été lu. Il ne peut pas savoir s'il s'agit du premier contact ou du cinquième.

Une bascule n'est donc jamais réalisée par le tag. Elle est réalisée par ce qui reçoit le contact et décide de l'inverse de l'état courant.

Cela mérite d'être dit parce que l'on écrit deux enregistrements sur un tag en espérant une alternance, ce qu'un tag ne sait pas faire.

Où réside l'état

Sur le téléphone, si une application d'automatisation le suit. Fiable tant que ce téléphone est le seul à agir, et faux dès que quoi que ce soit d'autre change l'état.

Dans l'appareil ou le système commandé, ce qui est la bonne réponse : demander à la lampe ce qu'elle fait et faire l'inverse.

Sur un serveur, pour tout ce qui passe par une adresse, avec le même comportement.

La règle est que l'état doit résider avec la chose qui le possède, et non avec celle qui interroge.

Comment une bascule dérive

Quelqu'un utilise l'interrupteur mural. Le téléphone croit toujours la lampe éteinte, donc le contact suivant l'éteint alors que vous la vouliez allumée.

Le tag est lu deux fois pour un seul geste, parce que sortir du champ puis y revenir compte pour deux contacts, et la bascule revient à son point de départ.

Une deuxième personne présente le même tag depuis son propre téléphone, qui a sa propre idée de l'état.

Les trois produisent le même symptôme : un tag qui semble fonctionner par moments et ne rien faire à d'autres.

Ce qui fonctionne mieux

Deux tags, un par état, ce qui supprime la question entièrement et coûte un objet de plus.

Un tag qui impose un état plutôt qu'il ne l'inverse, bonne réponse quand vous voulez presque toujours le même résultat.

Une bascule réalisée par le système commandé, qui connaît la vérité.

Et une durée là où il s'en applique une, puisqu'un état qui se termine tout seul ne réclame jamais de second contact.

Questions fréquentes

Peut-on écrire deux enregistrements pour qu'ils alternent ?

Non. Le téléphone agit sur le premier enregistrement qu'il sait traiter, et un tag n'a aucun souvenir des lectures précédentes.

Pourquoi ma bascule se retrouve-t-elle à l'envers ?

Soit autre chose a changé l'état, soit le tag a été lu deux fois pour un seul geste. Les deux laissent la bascule décalée.

Quel montage est le plus fiable ?

Laisser le système commandé décider, puisqu'il connaît l'état réel. Deux tags sont l'alternative simple.

Une durée évite-t-elle ce problème ?

Entièrement. Un état qui se termine tout seul ne réclame aucun second contact et ne peut pas dériver.