mercredi 23 mai 2012

Matériel : Sonde Piscine OREGON THWR288N & HomeAutomate

    J'ai reçu ce matin une sonde de piscine OREGON Sans Fil (Modèle THWR288N). Voici un mini-reportage sur son intégration dans le système.
J'avais déjà fait l'expérience d'une sonde précédemment, mais non compatible avec mon RFXCOM. Chose réparée, puisque cette sonde OREGON est compatible.

La boite : 


Le contenu :

       + piles 
       + sondes
       + manuel
       + ficelle


La sonde (avec adhésif):


Pour ouvrir il faut tourner la sonde tout en figeant son socle, on découvre ensuite le logement pour les piles:



L'autre face, 2 switchs dispos (1 pour les chanels 1,2 ou 3 et un pour l'unité °C ou °F)


En fonctionnement : 


et enfin dans l'eau: 



Je lance maintenant le client RFXCOM pour voir un peu les trames reçues :


Nouveau message commençant par 50 puis EA4 distinctif des sondes OREGON.
En comparant la trame avec une THN132, on ne constate pas de différence si ce n'est un double 0 à la fin de la trame. Chic ! on va pouvoir utiliser le même décodage que la THN132.

On passe sous HomeAutomate, et on ajoute la nouvelle sonde dans le plugin OREGON : 


Ne pas oublier de mettre à jour le fichier plugin.xml


Faire un export as Jar et coller le dans le répertoire des plugins.

On fait un tour maintenant, dans le plugin RFXCOM, il va falloir décoder la nouvelle trame.

Voici le nouveau code (2 lignes) et c'est tout: 


On redémarre le serveur ou Reset des plugins au choix et on constate les nouvelles trames reconnues (id ok, temp ok, chanel ok): 



Reste plus qu'à créer une nouvelle sonde dans le menu de l'application (Le système reconnait automatiquement la nouvelle sonde disponible) : 


  


Et pourquoi pas, remonter les infos sur Cosm ? Facile on modifie notre CosmManager pour y inclure la nouvelle unité. Ce dernier deviendra donc "Aware" sur la nouvelle sonde piscine.



Et voilà.




dimanche 20 mai 2012

NEST Thermostat Virtuel avec JQuery et CSS3, intéraction avec HomeAutomate

Bon, rappel, NEST est une société qui commercialise des thermostats au look ravageur en voici pour preuve : 




Dans ce post précédent, je m'étais essayé à faire un potentiomètre de thermostat réglable à la souris ou au touché pour nos tablettes.

La société NEST semble pour l'instant ne distribuer ces thermostats qu'aux Etats Unis ou Canada, en tout cas pas en France. En regardant le cablage de l'appareil, il est vrai qu'on est loin des symboles que l'on peut retrouver dans nos contrées Européenes.

Donc pourquoi ne pas s'en faire un virtuel qui dialoguerait avec HomeAutomate ? 

Les outils : 

   JQuery qu'on ne présente plus et les css3 qu'on ne présentent plus non plus. 
   Un éditeur de texte (Notepad++) par exemple.

Les fonctions demandées : 

   Mode température : je souhaite pouvoir régler la température facilement.
   Mode soufflante: je souhaite pouvoir régler la soufflante VMC facilement.
   Mode demande de chauffage : je souhaite forcer la chaudière pour 2 ou 4h. 


Exigences esthétiques et ergonomiques :

  Réglage par rotation, sélection par clic ou pression digitale (Amélioration par  
  rapport à la dernière version, fini les accoups, utilisation de la tangente au 
  lieu de sin et cos)
  Look : Le plus proche possible du vrai modèle.
  Compatibles Chrome/FF/IE/Autres


Voici donc le résultat, je ne poste pas ici toutes les sources (car vite illisibles) mais voici le lien pour les obtenir. Voici également le lien vers la DEMO en ligne.


Mode d'emploi : 

Lorsque l'on charge la première fois la page, le thermostat est sur Off. Pour l'allumer, il faut cliquer sur 'nest'




Automatiquement, le thermostat se place sur le mode ventilation (AIRWAVE)
par défaut la valeur est de 50.




     Pour faire varier la valeur, rien de plus simple, cliquez et rester appuyé dans le disque noir et dirigez vous autour du disque. La valeur doit augmenter ainsi que la couleur de fond.




    La petite feuille verte indique le mode d'économie d'énergie. Pour passer au mode température, cliquez sur nest 2 fois, la navigation reste la même :




    Pour une demande express de chauffage, cliquez sur nest jusqu'à voir le mode Heat Now, là, le thermostat vous demande pour combien de temps voulez-vous que la chaudière se mette en route (2h ou 4h)




    Cliquez sur 2h ou 4h à votre convenance.La confirmation est affichée à l'aide de la petite flamme en bas. Pour supprimer la demande il suffira de cliquer sur la flamme :




Voilà pour cette deuxième partie, on verra dans une troisième partie comment faire dialoguer le thermostat avec HomeAutomate, utilisation d'Ajax.


Conclusion : Je n'avais pas trop testé l'association Css/Jquery, mais je dois dire que le travail est facilité par diverses fonctions. J'ai testé le code sur Chrome et FireFox, je dirais que Chrome est plus rapide, mais l'affichage des barres de progressions parait moins propre.




jquery knob rotate nest thermostat

Matériel : Etendeur WIFI extérieur 9dBi

     Maintenant que le toit terrasse est terminé, les connections WIFI depuis le toit ne fonctionnent plus et pour cause le signal est quasi inexistant ou trop faible.

J'ai reçu samedi, un étendeur WIFI à 24 euros accompagné d'une rallonge d'antenne de 2,5m.

Constat de puissance avant installation entre -70 et -80 Dbm: 



Tout commence avec la boite et son contenu :


           


 + Colliers de serrage (permettant de fixer l'antenne sur un mât)
 + Notice
 + Gabarit de perçage/autocollant
 + 1m de câble.
 + et bien sûr l'antenne.


Zoom sur l'extension d'antenne (une fiche mâle et une fiche femelle): 




Quelques spécifications :


Enfin le montage, on commence par percer 2 trous à l'aide du gabarit et du perfo :


Fixation du support, à l'aide des 2 chevilles et 2 vis fournies :


Enfin on accroche, l'antenne et on relie le tout sur le routeur Wifi, l'installation de l'antenne est simple, on dévisse la rigide, et on revisse la souple à la place :


Mesure des gains constatés :



Conclusion : 

     Je suis passé de 75dBm à 45dbM, soit gain de 30dBm. Je peux maintenant surfer sur ma terrasse.


lundi 14 mai 2012

Développement plugin de A à Z pour HomeAutomate Pachube/Cosm Partie 3

Le plugin est en place dans le répertoire dédié aux plugins HomeAutomate.




2 possibilités : 


        - Soit on redémarre notre serveur d'application (Un peu bourrin)
        - Soit on passe dans le menu Plugin et on lancer une reinit de plugins.




       La solution 2 semble la plus sobre. Après avoir cliqué, on se retrouve avec une ligne de + :




       Le plugin est maintenant correctement chargé.




Je considère qu'au préalable les unités et le médiator RFXCOM ont été configurés/démarrés dans les menus respectifs (Mediators et Unit).



     On va maintenant, configurer notre manager, et c'est là que la magie de l'introspection et de la réflexion opèrent. HomeAutomate va introspecter l'object CosmManager et son héritage parent (AbstractManager) pour automatiquement générer un formulaire de remplissage de paramètres. 
==> Aucune JSP ou formulaire html n'est à écrire. Par le simple fait d'annotations 'Editable', le module proposera la saisie du champs.

Après avoir cliqué sur Manager : 


Puis : 

    
On se retrouve devant cette IHM générée automatiquement/dynamiquement : 



La configuration d'un Objet (Manager,Mediator, Unit) se compose de 4 sections:

      1) Nom & Commentaire appelée Basics



      2) Architectures (Permet de préciser la Résidence, Étages, Pièces)



      3) Abstract (Paramètre de démarrage auto ou manuel, interne/externe et 
          heartBeat)

   
      4) Spécifique, comportera tous les attributs propres à notre Manager, donc 
          ici la clé API et la liste d'unités à configurer.


On saisit donc tous nos paramètres et on clique sur Ajouter :


Notre de liste de manager vient donc d'augmenter d'un nouveau manager appelé Cosm :



Nul, besoin de démarrer, au premier Event, le manager va créer automatiquement un FeedNumber par Unit, il stockera alors ce numéro dans la table des paramètres, il sera alors possible de les modifier/fusionner, etc ...





Les clés sont constituées de COSM_MANAGER_[Nom du manager]_[Nom de l'unité], en valeur les ID de Feed.
Il est possible de créer plusieurs instances de CosmManager dans la rubrique Manager. Et voilà, c'est terminé et voici le résultat sur Cosm (Le manager ayant tourné toute la nuit). J'ai positionné un heartBeat à 60 secondes.