Review
Après la Vera, nous allons voire aujourd’hui l’utilisation de l’IPX800 avec la Zibase. L’utilisation de la carte IPX800 avec la Zibase a été grandement facilitée grâce à la mise à jour de cette dernière en juin. En effet, trois nouvelles fonctions ont fait leur apparition.
Voyons tout d’abord les deux fonctions permettant de contrôler l’IPX800.
Pour utiliser ces fonctions, il faudra créer un scénario en mode expert sur l’interface d’administration de la Zibase. La première fonction est « Rediriger une action sur HTTP »:
Cette fonction permet d’associer des requêtes HTTP aux boutons On et Off d’un module « virtuel », en quelque sorte.
Le premier argument permet de donner un numéro au device, sachant que la lettre sera toujours H. Ici, je souhaite donner l’adresse H4 à mon module, donc.
Ensuite, nous indiquons la requête pour la fonction « On »: http://192.168.2.11/preset.htm?led1=1
et la requête pour le « Off »: http://192.168.2.11/preset.htm?led1=0
Led1 indique qu’on souhaite contrôler le relai n°1, puis le =1 ou =0 permettent d’activer ou désactiver le relai.
Il n’y a plus qu’à créer un device sur la Zibase, ayant l’adresse H4:
On peut bien sûr lui donner le nom qu’on souhaite et sélectionner une icone appropriée. A partir de maintenant, sur le PCPad ou l’application iPhone, par exemple il sera possible d’activer ou de désactiver le relai 1 de la carte, de façon totalement transparente, en faisant simplement un On ou Off du module.
Cette commande est utile si on ne souhaite représenter que quelques relais de la carte sur la Zibase. Si on veut contrôler les 8 relais, cette fonction obligerait à créer 8 scénarios pour affecter les adresses HTTP correspondantes à 8 devices.
Il existe heureusement une fonction qui facilite bien la vie: Rediriger une famille sur HTTP
Avec une seule commande, il va être possible de rediriger les commandes vers les 8 relais (jusqu’à neuf supportés par cette fonction).
On indique la lettre à affecter aux devices, ici sans limite, par exemple la lettre A.
Ensuite, on indique la requête HTTP de cette façon, en passant des méta caractères: http://192.168.2.11/preset.htm?led#=*
La Zibase se chargera de remplacer automatiquement le « # » par le numéro de relai, et le « * » par la commande On ou Off (1 ou 0).
Voilà, avec ce seul scénario, il va être possible de contrôler les 8 relais de l’IPX800, qui auront les adresses de A1 à A8 !
Il ne reste plus qu’à créer les devices correspondant, par exemple pour le premier:
On crée ainsi les 8 devices, en incrémentant le numéro jusqu’au 8ème.
On peut maintenant piloter les 8 relais depuis le PCPad, l’iPhone, les utiliser dans des scénarios, etc…
Bon, maintenant il nous reste un dernier détail à régler: si on décide de contrôler l’IPX800 directement depuis son interface, ou encore depuis Homeseer, etc… comment faire en sorte que la Zibase en soit informée ? Car par défaut, l’état des relais ne sera pas mis à jour automatiquement sur la Zibase.
Nous allons utiliser pour cela le fichier xml des status de l’IPX800 disponible via l’adresse http://adresse_ip_IPX800/status.xml, qui liste l’état de toutes les entrées / sorties de la carte (et bien plus):
Les lignes « ledx » représentent l’état des 8 relais (attention, le numéro est décalé: led0 = relai 1, etc…), les lignes « btnx » les 8 entrées digitales, « anx » les entrées analogiques, et les « countx » les compteurs d’impulsion.
Une nouvelle fonction sur la Zibase permet de lire une valeur donnée dans un fichier délimité, comme ici notre fichier xml. Tout cela va nous permettre de mettre en place un système de « polling » (d’interrogation) pour mettre à jour l’état des relais sur la Zibase.
Tout d’abord, on crée un nouveau scénario en mode expert, qui va se répéter à intervalle régulier. Ici, j’indique toutes les 300s (5min), ce qui est suffisant pour mon besoin:
Ensuite, on va affecter une balise à une variable, afin d’indiquer le délimitateur de la valeur à récupérer. Par exemple, si on veut récupérer l’état du premier relai, on indique led0:
Après, on utilise la nouvelle fonction « Commander par HTTP », mais en cochant « Lire en retour une valeur balisée par », et en indiquant la variable utilisée précédemment, soit V0:
L’URL indiquée est bien sûr celle du fichier XML: http://adresse_ip_IPX800/status.xml
Grâce à cela, la Zibase va lire le fichier status.xml, chercher la valeur de led0, et la stocker dans la variable V0.
Pour notre « polling », nous allons ensuite utiliser la commande « Activer le périphérique », sélectionner le device correspondant au relai 1, et cocher « On Off suivant une variable », en indiquant bien sûr la variable utilisée jusqu’ici, V0:
Donc, pour résumer: si pour x raisons vous activez un relai via un autre moyen que la Zibase, par exemple directement via l’interface de l’IPX800, la Zibase va aller vérifier l’état des relais via le fichier status.xml, et mettre à jour ses devices. L’état des relais sur la Zibase reflètera donc toujours la réalité, à 5min près (on peut réduire le délai, à tester pour ne pas surcharger la Zibase toutefois). Seul inconvénient: il faudra ici créer un scénario par relai à interroger.
Cette possibilité d’aller lire une valeur dans un fichier est à retenir précieusement: elle pourra en effet permettre d’aller lire l’état des entrées digitales (On / Off), la valeur de sondes de températures connectées aux entrées analogiques (en effectuant le calcul adéquat sur la variable récupérée), ou encore lire la valeur des compteurs d’impulsions (pour lire la consommation d’eau, ou d’électricité par exemple). Il sera très facile par exemple de lire la consommation électrique et de se la faire lire par le Karotz le soir :p
Comme on peut le voir, l’utilisation de la carte IPX800 avec la Zibase est un vrai bonheur :D
Si vous n’avez pas suivi tout ce dont est capable d’apporter la carte IPX800, je vous invite à lire sa présentation générale que j’en ai faite ici.

























Merci pour ce guide très intéressant !!
J’utilise depuis longtemps une telle carte avec ma Zibase !
C’est une version V1….Qui n’a pas toute les fonctions de la V3, mais cela me suffit pour mon application (commande d’ouverture de volet).
Je confirme que cette carte est d’une stabilité examplaire !
Je n’ai jamais eu de problème de fonctionnement.
Ton guide va me permettre d’optimiser son fonctionnement.
Encore merci pour toutes ces informations !
Philippe
Manque plus que l’intégration de l’ipx800 dans Homeseer :)
Ca arrive :D J’ai d’autres tests à terminer avant, mais je vous prépare aussi l’intégration de l’IPX à Homeseer ;-)
Parfait ! J’attend cela ! ;)
Bonjour,
Merci pour la présentation car ceci semble une bonne alternative au KNX (trop cher !)J’envisage de commander des volets, le portail et la porte de garage mais je ne comprend pas le plus apporté par la Zibase du fait que l’IPX800 a également un logiciel intégré qui permet de faire des scénarios ?
La Zibase n’est pas obligatoire, l’IPX sachant déjà faire beaucoup de choses.
Mais la Zibase (ou d’autres solutions, d’ailleurs) pourra apporter d’autres choses intéressantes: utilisation de sondes de température sans fil, détecteurs de mouvement, scénarios plus évolués sans aucune ligne de programmation, en cochant juste quelques cases, application iPhone/iPad native, etc…
On peut très bien se contenter uniquement de l’IPX. Par contre des personnes ayant déjà la Zibase peuvent trouver un intérêt à y ajouter une IPX…
Merci pour la réponse.
Concernant l’utilisation de l’iPhone avec la Zibase vous parlez d’une application spécifique qui permet de lancer l’exécution des scénarios ?
Avec l’IPX seule, via le navigateur d’un smartphone, cette possibilité n’existe pas ?
Les échanges entre l’IPX et la Zibase s’effectuent ils via le réseau Ethernet (filaire) ?
En attendant que le module d’extension I/O de l’IPX soit disponible il est difficile de gérer 20 volets car à raison de 2 sorties par volet il faut multiplier les cartes …
Bonjour,j’ai associé un IPX 800 et une Zibase, aucun pb de pilotage de l’ipx, par contre impossible de récupérer les états des relais.J’ai lu, relu, vérifié, revérifié le tuto qui expliquait comment récupérer les infos dans le fichier status.xmldonc affecter une chaine de caractère à une variable, dans laquelle je mets la balise xmlpuis commander par http, avec l’adresse du status.xmlet résultat, bah rien!le suivi d’activité donne: »Launch SCENARIOHTTP Client REQ Ok:http://IP_IPX/status.xmlServer IP_IPX answered: HTTP/1.1 200 OKCompleted SCENARIO(Error) »là je sèche… pouvez-vous m’aider?