Webx 4.2

Webx est un projet de domotique open source. TLD lui dédie cette section afin de mieux supporter ses utilisateurs?

Modérateur: shen

Webx 4.2

Messagede shen » 30 Oct 2013, 23:26

Et bien, il s'en est fallu du temps entre la 4.1.3 beta et cette 4.2...

J'ai pas mal lutter avec mes raspberry pi. J'en ai 3.
Au départ j'en ai acheté autant pour tester le zwave (razberry et dungle usb). Mais j'ai eu pas mal de galère pour l'intégrer à mon IHM. Du coup pour souffler un peu je me suis consacrer à (bcp) d'autres choses... Quand je retrouverai la foi, je m'y replongerai.

Au début, j'avais tout installé sur le même RPI. Sauf que mysql étant très gourmand en mémoire, le système était lent et ça ne me convenait pas.
Il fallait au moins 2 ou 3 secondes pour allumer une lampe.

J'ai donc découpé mon programme en 2 partie pour l'installer sur 2 RPI :
- le manager (nginx, mysql-server, php5-fcgi)
- le core (xPL-perl, et tous les scripts perl de mon projet)

Sur 2 RPI, le temps d'allumage d'une lampe est descendu aux alentours d'1 seconde

Puis au bout de quelques temps et de quelques coupures de courant, le système d'un de mes RPI (le manager bien sur) ne voulait plus redémarrer à cause de la carte SD qui présenté des problèmes d'intégrité sur le système de fichier... raaa, les boules ! Même après plusieurs réinstallations, de temps à autres, le même problème apparaissait.

J'ai installé le Manager sur mon nas synology. J'ai été moyennement satisfait. les disques durs du NAS étaient tout le temps sollicités, et la partie vhost apache sur le NAS n'est pas très performant à mon gout. Et j'avais pas envie de modifier la configuration de mon NAS. Si ce n'est ce problème de carte SD, le POC (Proof of Concept) fonctionne. Donc les problèmes sont purement matérielles ! Ouf c'est pas des bugs liés à mon programme :-)
Au passage, je serai ravi d'avoir des retours d'expériences sur ce sujet. Est-ce vous aussi bous rencontrez des problèmes avec vos RPI ?

Sur NAS (manager) + 1 RPI (core), le temps d'allumage d'une lampe reste aux alentours d'1 seconde, dépendant de ce qu'il fait en parallèle. Ex : Download Station + Audio Server, les performances de webx ne sont pas bonnes. Il faut 3 ou 4 secondes pour allumer une lampe.

Enfin, après cette petite introduction contenant mes déboires d'informaticien GEEK, voici dans cette version plein de nouvelles choses que je ne suis pas en mesure de toutes énumérer :-)

- Le découpage du projet en 2 briques essentielles : le manager, le coeur (Bientôt il y aura la voix)
- Une solution de mise Ă  jour automatique du projet
- Des corrections de bugs sur de nombreuses pages html/javascript
- Une gestion des scénarios un peu plus évoluée mais il reste encore bcp à faire
- L'intégration d'une passerelle SMS
- etc...

Dans cette version, je m'avance en mettant des fonctionnalités qui ne sont pas encore toutes accessibles... J'ai même commenter des choses dans mon code tellement j'étais pressé de la mettre en ligne. Mais grâce à mon mécanisme de mise à jour automatique/manuelle, ce sera bien plus simple pour gérer les montées de versions.

J'ai mis Ă  disposition 2 branches dans mes sources :
- stable : pour ceux qui ne veulent pas se prendre la tĂŞte et son prĂŞt Ă  attendre les Ă©volutions "au fil de l'eau"
- testing : pour ceux qui sont intéressés par mon projet et qui veulent m'aider à le faire évoluer

Il suffit de modifier la variable dans le fichier /etc/webx/webx.conf

Code: Tout sélectionner
webx_repository=stable


par

Code: Tout sélectionner
webx_repository=testing


Je vous invite donc Ă  passer faire un tour sur mon site http://wiseflat.com
Dans la section installation vous trouverez la nouvelle méthode d'installation ainsi qu'une petite vidéo de présentation
Voir la vidéo sur youtube http://youtu.be/JCGOrkvIL0Q

J'attends avec impatience vos commentaires !
A+
Webx - Solution domotique open-source
Linux - HTML/AJAX/PHP/PERL
Slim Framework - Jquery mobile
--------------------
Serveur domotique - sheevaplug/raspberrypi
---------------------------
Rfxcom lan (v2/v3)
X10 - X10 security (LM12/AM12/SD18/LM13)
Chacon (télécommande KCT510/interrupteur LWST615)
shen
P'tit Guru de domotique
 
Messages: 90
Inscription: 30 Juin 2010, 09:25

Re: Webx 4.2

Messagede steeve3172 » 31 Oct 2013, 15:09

Bonjour Shen,

Je trouve ton projet très intéressant et Guiguiabloc m'a convaincu que le XPL serait une très bonne solution pour dialoguer avec différentes box domotiques.
Pour la partie communication de mon concentrateur domotique, j'ai décidé de m'orienter sur une solution XPL.
Après pour la partie IHM, j'avoue que MyVERA me plait beaucoup mais limité à la VERA.
Alors je me suis tourné vers ton projet mais je n'ai pas vu d'exemple de ce à quoi ressemble l'IHM. Aurais tu un lien pour montrer un aperçu?
Sinon, la solution Rapsberry est super et en plus les évolutions que tu proposes sont très séduisantes.
En tout les cas, félicitation pour ton projet.
eedomus - dongle ENOCEAN - RFXtrx433E - Zibase PRO avec licence (placard) - 2 x IPX800v3 - Google Home
JEEDOM V3.1 et DOMOTICZ en test
Mirror - KAROTZ avec FREE RABBITS & OPENKAROTZ - Teleinfo EDF XBEE
Sondes Oregon (WGR800 - STC800 - PCR800 - THGN801 - UVN800 - 10 THGR810)
FIBARO (FGK-101- FGBS-001 - FGS-221 - FGS-211 - FGD-211 - FGR-221 - FGRM-221 - FGR-222 - FGWPE-101 - FGMS-001 - FGSS-001 - FGSS-002 - WallPlug) - Divers capteurs filaires
QUBINO MNHAA2 & ZMNHJD1 - REMOTEC ZXT-120 - NETATMO - VISION SECURITY ZS6301 - Mulitprise GREENWAVE - NODON détecteur d'ouverture, Soft Remote, Octan Remote, prise Smart Plug - CHACON - SMART SENSOR - etc.
Serveur NAS 8DD sous DEBIAN - HTPC W7 avec XBMC, SARAH & KINECT (remplacée par Google Home), plusieurs RASPBERRY 1B, 2B & 3
Divers PC WXP, W7, W8, W10, DEBIAN, Macbook Pro - ? Raspberry - Tablette 10" dédiées avec Imperihome V2 PRO
Tablettes IPAD 2, IPAD AIR, ASUS TFT700, PIPO Max-M9Pro, ONDA- Smartphones Galaxy S, SIII, Iphone 5 et MI 4
steeve3172
Dieu de domotique
 
Messages: 2268
Inscription: 19 FĂ©v 2013, 06:21
Localisation: Toulouse

Re: Webx 4.2

Messagede shen » 31 Oct 2013, 16:52

Merci pour ta gentille réponse !
Effectivement xPL c'est le bien. Si tout pouvait fonctionner autour de ce standard, ce serait ultra chouette, en attendant il faut utiliser une multitude de méthode pour exploiter les API de chacun.

La démo est en ligne depuis 5 minutes. Tu peux aller la tester sur mon site via la page d'accueil il y a un bouton démo en bleu :-)
Ou alors le lien direct :http://demo.wiseflat.com

Petites remarques dans cette démo : On ne peut pas créer de nouveaux plugins (pour des raisons de sécurité vis à vis de mon hébergeur)

Si vous trouvez des bugs n'hésitez à m'en faire part...
Au fait, je ne suis pas designer et je serais Ă©ventuellement Ă  la recherche d'un internaute sympa qui pourrait m'aider Ă  faire mon logo :-) je suis une quiche avec photoshop ou gimp lol on peut pas ĂŞtre bon partout ;-)
Si quelqu'un veut m'aider, vous pouvez me joindre en MP !!

A plus et bonne démo
Webx - Solution domotique open-source
Linux - HTML/AJAX/PHP/PERL
Slim Framework - Jquery mobile
--------------------
Serveur domotique - sheevaplug/raspberrypi
---------------------------
Rfxcom lan (v2/v3)
X10 - X10 security (LM12/AM12/SD18/LM13)
Chacon (télécommande KCT510/interrupteur LWST615)
shen
P'tit Guru de domotique
 
Messages: 90
Inscription: 30 Juin 2010, 09:25

Re: Webx 4.2

Messagede steeve3172 » 31 Oct 2013, 17:43

Effectivement, j'avais vu la partie demo qui est parfaitement adaptée aux tablettes et smartphone.

Désolé de ne pouvoir t'aider pour le logo, je suis également une quiche dans le domaine graphique.

J'aurais deux petites questions :
Est ce que tu stockes dans la base MySql uniquement des valeurs/états avec un horodatage ou également les informations temps réels? Guiguiabloc utilise le Memcached pour les données volatiles.

Penses tu qu'il est facile d'interfacer WebX avec une IHM (sous forme de site web) contenant des pages synoptiques intégrant des fonds de plan personnalisables et des icônes pour représenter les états en cours et les courbes? Je pense que non mais j'aimerais quelque chose de plus graphique qu'Imperihome que j'utilise et que je trouve super pour une application mobile.

Il faut que je commande un nouveau Raspberry pour tester ton projet.
eedomus - dongle ENOCEAN - RFXtrx433E - Zibase PRO avec licence (placard) - 2 x IPX800v3 - Google Home
JEEDOM V3.1 et DOMOTICZ en test
Mirror - KAROTZ avec FREE RABBITS & OPENKAROTZ - Teleinfo EDF XBEE
Sondes Oregon (WGR800 - STC800 - PCR800 - THGN801 - UVN800 - 10 THGR810)
FIBARO (FGK-101- FGBS-001 - FGS-221 - FGS-211 - FGD-211 - FGR-221 - FGRM-221 - FGR-222 - FGWPE-101 - FGMS-001 - FGSS-001 - FGSS-002 - WallPlug) - Divers capteurs filaires
QUBINO MNHAA2 & ZMNHJD1 - REMOTEC ZXT-120 - NETATMO - VISION SECURITY ZS6301 - Mulitprise GREENWAVE - NODON détecteur d'ouverture, Soft Remote, Octan Remote, prise Smart Plug - CHACON - SMART SENSOR - etc.
Serveur NAS 8DD sous DEBIAN - HTPC W7 avec XBMC, SARAH & KINECT (remplacée par Google Home), plusieurs RASPBERRY 1B, 2B & 3
Divers PC WXP, W7, W8, W10, DEBIAN, Macbook Pro - ? Raspberry - Tablette 10" dédiées avec Imperihome V2 PRO
Tablettes IPAD 2, IPAD AIR, ASUS TFT700, PIPO Max-M9Pro, ONDA- Smartphones Galaxy S, SIII, Iphone 5 et MI 4
steeve3172
Dieu de domotique
 
Messages: 2268
Inscription: 19 FĂ©v 2013, 06:21
Localisation: Toulouse

Re: Webx 4.2

Messagede shen » 31 Oct 2013, 19:15

Pour répondre à tes questions :

Est ce que tu stockes dans la base MySql uniquement des valeurs/états avec un horodatage ou également les informations temps réels? Guiguiabloc utilise le Memcached pour les données volatiles.


IL y a 2 script xPL dans mon programme :
- webx-core-logger : Il est connecté au bus xPL. Il enregistre toutes les valeurs/états des modules/sources dans mysql avec un horodatage.
- webx-core-events : Il est connecté au bus xPL. Il vérifie que l'évènement qui apparaît sur le hub est (ou n'est pas) associé à un scénario. Si c'est le cas il envoie l'ordre d'exécution à un autre script perl (qui n'est pas xPL celui là) nommé webx-core-jobsServer

Il n'y a pas de notion de Memcached dans webx. j'ai compris comment fonctionne xPL-pyHal fait par guiguiAbloc mais j'ai pas bien compris cette notion de Memcached pour les données volatiles... Peut être pourra t'il nous en dire plus si il lit ce message ?
C'est peut être parce que le concept autour de xPL-Hal n'utilise pas de base de données ou de fichier "à plat" pour conserver les états ??
En tout cas, c'est sur, je ne gère pas de "cache". Un nouveau message sur le bus xPL = un nouvel enregistrement en base mysql.

Si bien que pour les sondes de températures qui font remonter temp/batterie/humidity toutes les 10 secondes, la base de données grossit rapidement... Voir trop rapidement.
J'ai prévu dans une prochaine version de pouvoir gérer des INSERT ou des UPDATE suivant certain schéma xPL.
Clairement on a pas besoin de stocker le niveau de batterie plus d'une fois pour une sonde de température. Idem pour la température/humidité, excepté si on veut avoir des jolies courbes hebdo/mensuelle/annuel de la température qu'il fait chez soi.


Penses tu qu'il est facile d'interfacer WebX avec une IHM (sous forme de site web) contenant des pages synoptiques intégrant des fonds de plan personnalisables et des icônes pour représenter les états en cours et les courbes? Je pense que non mais j'aimerais quelque chose de plus graphique qu'Imperihome que j'utilise et que je trouve super pour une application mobile.


Je ne comprends pas très bien ta question :-) Dans webx, l'IHM , c'est le "Manager".
Je n'ai pas prévu de fonds de plan personnalisantes comme dans imperihome. Par contre tu peux créer des catégories et des scénarios de manière à construire des vues propres à la conception de ta maison.
Pour les icĂ´nes, ce sera dans une prochaines mises Ă  jour ! jquerymobile est un peu pauvre en icĂ´ne mais je compte bien pouvoir associer des icĂ´nes aux modules


Tu n'as pas besoin d'acheter un deuxième RPI pour tester... Ca fonctionnera quand même sur un seul RPI mais les actions sur tes modules seront un peu plus lente... Autrement installe le projet dans une machine virtuelle ?
Webx - Solution domotique open-source
Linux - HTML/AJAX/PHP/PERL
Slim Framework - Jquery mobile
--------------------
Serveur domotique - sheevaplug/raspberrypi
---------------------------
Rfxcom lan (v2/v3)
X10 - X10 security (LM12/AM12/SD18/LM13)
Chacon (télécommande KCT510/interrupteur LWST615)
shen
P'tit Guru de domotique
 
Messages: 90
Inscription: 30 Juin 2010, 09:25

Re: Webx 4.2

Messagede steeve3172 » 01 Nov 2013, 07:02

Merci Shen pour tes réponses rapides et précises.

shen a écrit:C'est peut être parce que le concept autour de xPL-Hal n'utilise pas de base de données ou de fichier "à plat" pour conserver les états ??
En tout cas, c'est sur, je ne gère pas de "cache". Un nouveau message sur le bus xPL = un nouvel enregistrement en base mysql.

Si bien que pour les sondes de températures qui font remonter temp/batterie/humidity toutes les 10 secondes, la base de données grossit rapidement... Voir trop rapidement.
J'ai prévu dans une prochaine version de pouvoir gérer des INSERT ou des UPDATE suivant certain schéma xPL.
Clairement on a pas besoin de stocker le niveau de batterie plus d'une fois pour une sonde de température. Idem pour la température/humidité, excepté si on veut avoir des jolies courbes hebdo/mensuelle/annuel de la température qu'il fait chez soi.

Je crois qu'il utilise aussi MySql pour stocker des données. En fait, si l'on écrit toutes les données dans la base de données, on sature rapidement MySql comme tu en as eu l'expérience.
Tu cites un exemple intéressant avec les sondes hygro/température. Idéalement, il serait intéressant de pouvoir stocker les valeurs dans une base de données pour afficher des courbes mais on n'a pas besoin d'une valeurs toutes les 10 secondes. Une valeurs toutes les 15 minutes (je crois que certains objets connectés archivent toutes les 2 minutes mais ce n'est pas forcement utile) suffirait à afficher de jolies courbes. Pouvoir afficher dans la partie synoptique une valeurs qui n'est pas figée toutes les 15 minutes mais qui n'est pas stockée dans MySql car elle est rafraichit plus fréquemment est également intéressant.
Le principe est d'afficher au fil de l'eau les informations et prendre une photo de certaines informations (généralement cela concerne les valeurs et non pas les états) suivant des périodes que l'on peut définir. Il y a des informations qui ne nécessite pas d'être stocker plus d'une fois toutes les heures ou tout les jours.
En fait, idéalement, ce serait de pouvoir choisir les variables que l'on souhaite mémoriser ou non et avec quelle fréquence. Les états sont soit stockés sur changement d'état, soit pas stocké (le fait de savoir que l'on allumé et éteint une lumière ne m'intéresse pas vraiment mais le fait de pouvoir savoir si l'on a ouvert ou fermé la porte d'entrée m'intéresse plus).

shen a écrit:Je ne comprends pas très bien ta question :-) Dans webx, l'IHM , c'est le "Manager".
Je n'ai pas prévu de fonds de plan personnalisantes comme dans imperihome. Par contre tu peux créer des catégories et des scénarios de manière à construire des vues propres à la conception de ta maison.
Pour les icĂ´nes, ce sera dans une prochaines mises Ă  jour ! jquerymobile est un peu pauvre en icĂ´ne mais je compte bien pouvoir associer des icĂ´nes aux modules


Je me doutais que je n'Ă©tais pas clair. :D
J'essaie de transposer ce que j'utilise au quotidien Ă  titre professionnel mais j'ai tendance Ă  m'Ă©garer. :wink:
Dans Imperihome, les fonds de plan ne sont pas personnalisables, c'est uniquement la disposition des informations qui est personnalisable. Et c'est déjà super.
Ce que j'appelle le fond de plan, c'est par exemple, une vue globale de la maison avec des icônes superposés et disposées en fonction de leur emplacement. Là on s'approche fortement de logiciel comme HomeSeer ou d'applications comme MyVera de Sbdomotique ou celle de Cmoi20 pour la Zibase. En fait, cela rend l'usage de la domotique plus WAF comme dirait certains. :D
Sinon, la possibilité d'associer des icônes, c'est déjà très bien.

shen a écrit:Tu n'as pas besoin d'acheter un deuxième RPI pour tester... Ca fonctionnera quand même sur un seul RPI mais les actions sur tes modules seront un peu plus lente... Autrement installe le projet dans une machine virtuelle ?

Un Rpi ne coute pas très cher et on en a toujours l'usage. :D Cela me permet de tester divers projets pas tous liés à la domotique.
eedomus - dongle ENOCEAN - RFXtrx433E - Zibase PRO avec licence (placard) - 2 x IPX800v3 - Google Home
JEEDOM V3.1 et DOMOTICZ en test
Mirror - KAROTZ avec FREE RABBITS & OPENKAROTZ - Teleinfo EDF XBEE
Sondes Oregon (WGR800 - STC800 - PCR800 - THGN801 - UVN800 - 10 THGR810)
FIBARO (FGK-101- FGBS-001 - FGS-221 - FGS-211 - FGD-211 - FGR-221 - FGRM-221 - FGR-222 - FGWPE-101 - FGMS-001 - FGSS-001 - FGSS-002 - WallPlug) - Divers capteurs filaires
QUBINO MNHAA2 & ZMNHJD1 - REMOTEC ZXT-120 - NETATMO - VISION SECURITY ZS6301 - Mulitprise GREENWAVE - NODON détecteur d'ouverture, Soft Remote, Octan Remote, prise Smart Plug - CHACON - SMART SENSOR - etc.
Serveur NAS 8DD sous DEBIAN - HTPC W7 avec XBMC, SARAH & KINECT (remplacée par Google Home), plusieurs RASPBERRY 1B, 2B & 3
Divers PC WXP, W7, W8, W10, DEBIAN, Macbook Pro - ? Raspberry - Tablette 10" dédiées avec Imperihome V2 PRO
Tablettes IPAD 2, IPAD AIR, ASUS TFT700, PIPO Max-M9Pro, ONDA- Smartphones Galaxy S, SIII, Iphone 5 et MI 4
steeve3172
Dieu de domotique
 
Messages: 2268
Inscription: 19 FĂ©v 2013, 06:21
Localisation: Toulouse

Re: Webx 4.2

Messagede shen » 03 Nov 2013, 13:14

Je vais réfléchir à ça. Pour l'enregistrement des valeurs de certains schémas j'ai déjà entamé cette approche dans mon code. Il faut que j'aille encore un peu plus loin.
Et dans une ancienne version de Webx (Webx 1 ou webx2... Chaque refonte de mon IHM/SQL a eu pour conséquence de me faire changer de version) j'avais utilisé xpl-rrd et xpl-rrd-graphs. C'est comme ça que je faisais pour afficher les graphiques de mes sondes de températures, même si les graphes RRD sont pas très jolis...

Mais ma priorité, avant l'esthétique et le côté WAF, c'est l'implémentation des briques essentielles.
Je suis en train de bosser sur la reconnaissance vocale et c'est vraiment cool. J'aimerais bien utiliser SARAH pour ne pas me prendre la tĂŞte mais je me refuse Ă  installer un windows Ă  la maison :-)
La combinaison pocketsphinx, rivescript est super sympa et terriblement GEEK ;-) Si j'arrive à faire un POC sous linux et en français je serais comblé !

A+
Webx - Solution domotique open-source
Linux - HTML/AJAX/PHP/PERL
Slim Framework - Jquery mobile
--------------------
Serveur domotique - sheevaplug/raspberrypi
---------------------------
Rfxcom lan (v2/v3)
X10 - X10 security (LM12/AM12/SD18/LM13)
Chacon (télécommande KCT510/interrupteur LWST615)
shen
P'tit Guru de domotique
 
Messages: 90
Inscription: 30 Juin 2010, 09:25

Re: Webx 4.2

Messagede franckyg » 06 Nov 2013, 21:52

Bonsoir Shen,

J'ai installé Webx sur mon Pi (installeur très bien fait au passage :)) mais rien que le core me prend 100% de mon cpu.
La charge est répartie sur les processus webx-core-*, xpl-hub et xpl-dawndusk. Est-ce que c'est parce que j'ai la toute première version de la Pi et que c'est trop gourmand pour cette version ?

Merci d'avance,
Franck
Infos et conseils sur http://www.domocreation.fr
Avatar de l’utilisateur
franckyg
P'tit Guru de domotique
 
Messages: 71
Inscription: 19 Avr 2009, 06:48

Re: Webx 4.2

Messagede shen » 07 Nov 2013, 00:24

salut
c'est sympa de tester webx par contre je n'ai pas assez d'info pour débuger :-)
Peux tu me contacter en MP ? On fera le point ensemble ...
Si c'est un pb lié à Webx je ferais les évolutions
Webx - Solution domotique open-source
Linux - HTML/AJAX/PHP/PERL
Slim Framework - Jquery mobile
--------------------
Serveur domotique - sheevaplug/raspberrypi
---------------------------
Rfxcom lan (v2/v3)
X10 - X10 security (LM12/AM12/SD18/LM13)
Chacon (télécommande KCT510/interrupteur LWST615)
shen
P'tit Guru de domotique
 
Messages: 90
Inscription: 30 Juin 2010, 09:25


Retourner vers Webx

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

Copyright © 2011 - Touteladomotique.com - Tous droits rĂ©servĂ©s
Les blogs partenaires : Abavala, Domo-Blog, Domotique34, Maison et Domotique