Aug.20

S-Opener : connectez et sécurisez votre porte de garage avec la plateforme Constellation et un Raspberry Pi – La porte de garage intelligente !

Lorsque vous nous avons acheté notre maison il y a presque deux ans, la porte de garage était déjà motorisée. Il est tellement confortable de pouvoir rentrer sa voiture dans son garage sans avoir à sortir pour ouvrir une porte !

porte garage

Un simple appui sur une télécommande et hop la porte se lève ! Seulement est-ce que le protocole sans fil utilisé est réellement  sécurisé ? Que faire si l’alarme est armée ? Car avoir un compte à rebours qui se lance dès lors qu’on commence à ouvrir sa porte pour rentrer sa voiture c’est plutôt stressant !

Et puis dans une maison connectée avoir une porte de garage isolée avec pour seul moyen de contrôle une télécommande ce n’est pas acceptable Clignement d'œil

Alors idéalement on a une porte de garage qui communique avec son alarme, qu’on peut contrôler depuis n’importe où et n’importe quoi et en utilisant un protocole sécurisé ! Ça tombe bien car la plateforme Constellation me permet d’interconnecter services, applications, pages Web et objets connectés !

De là est né S-Opener, une solution pour rendre ma porte de garage connectée, sécurisée et intelligente !

Logo S-Opener

Domotique,Constellation

Jul.15

S-Panel : une interface domotique et IoT multi-plateforme avec Cordova, AngularJS et Constellation–ou comment créer son dashboard domotique mural

Comme vous le savez surement, j’ai un tas d’objets et de services connectés : de la domotique Z-Wave, thermostat Nest, capteur météo NetAtmo, amplis et TVs connectés, lampes Hue mais aussi des réalisations “home-made” comme The Mirror, S-Light, S-Energy, S-Sound, etc…

Afin de connecter tout cela, j’ai créé au début de l’année 2014 une plateforme nommée “Constellation” permettant d’interconnecter mes objets et services dans le but de simplifier l’orchestration et le développement, permettre la collaboration entre ces systèmes et créer de l’intelligence ambiante.

Plateforme Constellation

Les cas d’usage de la plateforme ont déjà été abordé dans cet article, celui là ou encore celui là ! La puissance de la plateforme permet de faire dialoguer n’importe quel système ou objet une fois connecté à Constellation. Par exemple contrôler des lampes Hue depuis un Arduino ne représente que deux lignes de code : une pour se connecter à Constellation et l’autre pour envoyer un message ! De ce fait, il devient facile d’automatiser un tas de scénario en prenant en compte les informations de chaque objet ou service.

Au delà de la pro-activité de la maison, j’ai cherché depuis longtemps une interface domotique centrale. Il y a maintenant 2 ans j’ai réalisé “The Mirror”, une interface domotique cachée dans un miroir de mon entrée me permettant d’avoir accès à toutes les informations essentielles au moment de partir de la maison ou en rentrant (météo, temps de route, agenda, rappel, état des zones, etc..).

Comme expliqué dans cet article, le miroir n’est ni plus ni moins qu’une interface connectée à ma Constellation pour me présenter visuellement les différentes informations des systèmes connectés (comme mon agenda, les temps de route, météo, la domotique, etc..).

Constellation

Pour la pièce de vie de la maison, il me fallait également une interface me permettant un contrôle centralisé de l’ensemble des équipements : TVs, amplis, diffusion audio des différentes pièces, contrôle des mediacenters Kodi, des lumières, du chauffage, de l’alarme, suivi des compteurs d’énergie, disponibilité de mes sites web, contrôle hardware de mes serveurs, T° des pièces, cameras,  etc.. etc..

Bref un véritable dashboard de la maison connectée !

S-Panel logo

Après plusieurs tentatives, je vous présente mon dernier “S” projet : S-Panel !

S-Panel

Constellation

May.05

S-Sound : la solution audio multi-room connectée dans la Constellation

La diffusion de l’audio dans une maison dite intelligente ou connectée est une étape quasi-indispensable. Elle doit permettre aux utilisateurs de diffuser tout type de média ou flux audio dans n’importe quelle pièce de l’habitat et de manière intuitive. Mais c’est aussi un moyen pour la maison elle-même de communiquer avec ses utilisateurs.

Bien qu’il existe différentes solutions sur le marché, je n’ai pas su trouver une solution qui remplissait tous mes critères. Dans cet article vous découvriez comment nous pouvons, avec un budget raisonnable, développer une solution audio multi-room, qui basée sur la plateforme Constellation, permettra de diffuser de l’audio depuis votre serveur de fichier, votre système domotique, votre PC, votre Smartphone, votre tablette ou n’importe quel système ou objet connecté !

ssound

Quand la maison prend la parole….

HighTech,Domotique,Constellation

Mar.24

S-Energy : la solution de monitoring des ressources énergétiques de la maison – Geek Is In Da House 2015 – quand la maison vous fera sortir de votre douche, de gré ou de force !

Microsoft TechDays 2015Suite à la mythique “Geek Is In Da House” des Microsoft Techdays 2015 que j’ai pu animer aux côtés de David Catuhe, Stanislas Quastana et Laurent Ellerbach , retour en détail sur mon projet “S-Energy” !

(Passage dédié à S-Energy à 31’30).

L’idée du projet fait suite à un problème de chaudière qui est intervenu en Septembre 2014. En effet lors de l’entretien annuel nous avons constaté que la vanne de sécurité du ballon d’eau chaude était défaillante laissant ainsi partir dans les canalisations des litres et des litres d’eau en continue !

Après investigation, ce problème est apparu environ 4 mois plus tôt, soit une perte sèche de plus de 450m3, l’équivalent de 3750 litres par jour (environ 25 bains tous les jours !).

Vanne de sécurité défaillante sur la chaudière

Alors forcément côté portefeuille c’est dur et côté orgueil, pour un “geek” avec une maison ultra connectée, ne pas détecter une perte de près de 4.000L/jour pendant plus de 4 mois, c’est tout simplement honteux Sourire

Logo S-Energy

Dès lors, je me mis en tête de concevoir “S-Energy”, une solution de monitoring intelligente des ressources énergétiques de la maison : eau, gaz et électricité.

Intelligente car une simple solution de monitoring qui ne produit que des graphiques de la consommation n’a pour moi que peu d’intérêt ! C’est bien sûr indispensable d’avoir un historique très précis sur sa consommation mais ça ne suffit pas !

L’intelligence réside dans le fait que la maison “prend conscience” de cette consommation en temps réel et dans la durée et est capable d’agir en fonction ! Vous avertir en cas de consommation anormale, vous incitez à consommer moins, etc…

Dans cet article vous découvrirez comment j’ai pu monitorer mes anciens compteurs qui n’ont pourtant pas d’interface pour permettre de faire des “auto-relevés” (impulsions, télé info, etc..) mais aussi comment je me sers des données produites grâce à la plateforme d’interconnexion des objets connectés “Constellation” pour créer de l’intelligence autour des ressources énergiques de la maison.

Domotique,TechDays 2015,Constellation

Dec.30

Choisir, installer et domotiser son système alarme: l’alarme du geek connectée au poignet et dans les nuages – 2ème partie

Après avoir installé et configuré le système Paradox et découvert le protocole de communication de la EVO192 dans la 1ère partie de cet article, nous allons maintenant découvrir quelles sont les possibilités qui s’offrent à nous en mariant alarme et domotique.

paradox

Intégration de l’alarme dans la Constellation

Pour ceux qui suivent ce blog, vous avez sans doute déjà entendu parler de ma plateforme “Constellation” qui me permet d’interconnecter tous les objets de la maison. Du miroir à Slight, en passant par l’alarme comme nous allons le voir, la domotique Z-Wave avec Vera Lite, le thermostat Nest, et j’en passe; cette plateforme est au centre de tout mon système “domotique” au sens large.

Je communiquerai prochainement sur cette plateforme mais voyons dès maintenant comment intégrer le système de sécurité Paradox dans la Constellation.

Domotique,Alarme,Constellation

Jan.21

Visual WebGUI

Comme inscrit sur la homepage du site officiel :

Visual WebGui is an AJAX development framework that simplifies development of enterprise IT web applications to the simplest.

En fait pour être plus précis, le framework Visual WebGui propose un modèle de développement Winform, avec un designer Winform où l’on crée nos Forms, Dialogs ou UserControls avec des contrôles de type Winform (Label, Textbox, DateTimePiker, Listbox, combobox, etc…).

En gros on développe une application Winform MAIS au lieu de compiler un EXE, nous obtenons une application Web assez jolie avec AJAX inside pour gérer les contrôles.

Bien sur il ne faut pas trop regarder le HTML/Javascript produit surtout pour les amoureux des standards (et du beau code), et même si ce produit a encore pas mal de chose à revoir, je pense qu’il a un bon avenir dans le monde du développement d’application Web enfin Web 2.0 🙂

J’avais commencé la semaine dernière a créer un petit projet de test, une application de gestion de taches (gestion projets/milestones/taches). La rapidité de développement est assez impressionnante. Après avoir créé ma base SQL et DAL, il m’a fallu peu de temps pour placer mes contrôles (un tabControl, quelques listbox, textbox et button), un peu de code et créer une belle petite application Web.

A défaut d’avoir déployée l’application sur mon serveur de prod, une petite vidéo de présentation :

Bref, produit assez sympa, qui me rappelle Xamlon qui passé du Winform au Flash 🙂

Info,HighTech,.NET

Nov.30

FormAuthentication, Session et UpdatePanel : PageRequestManagerParserErrorException

Je me suis retrouvé lors d’un dev d’une application Web dans une petite galère avec l’ASP.NET AJAX Extention !

La situation est simple, j’ai une page ASPX contenant une gridview dans un UpdatePanel qui est protégée par un formulaire d’authentification (authentication mode= »Forms » dans mon Web.Config), bref cas des plus classiques !

Seul problème, au bout d’un certain temps d’inactivité, votre session expire (timeout paramétrable dans la balise froms du Web.config). Avec un postback classique, le serveur détecte que vous n’êtes plus authentifié et donc vous renvoie vers la page de login (paramétré lui aussi dans la balise froms du Web.config).
Mais avec un UpdatePanel, vous recevrez un beau message d’erreur :

Après analyse, cela est tout à fait normal car coté client, on ne sait pas que la session a expirée ! L’appel Javascript de la librairie Atlas, qui est sensé recevoir les données sous forme XML pour mettre à jour votre UpdatePanel, va tomber sur la page de login (classique, c’est ce qu’il se passe côté serveur lorsque que vous tentez accéder à une page protégé !).

On peut vérifier cela très facilement en supprimant le « DocType » au début de votre page de login. Vous verrez que l’erreur change et maintenant n’arrive pas a parser la ligne <head runat= »server »> ce qui nous prouve que c’est bien la page login 😉

C’est en lisant le blog de Cyril qui relayé un post de Luis Abreu que j’ai découvert comment gérer facilement les erreurs avec Atlas pour pouvoir écrire ce petit script et résoudre le problème :

Avec ce bout petit de Javascript, on vient abonner notre fonction EndRequestHandler à l’évènement déclenché de la réponse du serveur. Notre fonction quand à elle, vient checker la présence d’une erreur dans la reponse du serveur, si oui regarde si les 51 premières caractères sont Sys.WebForms.PageRequestManagerParserErrorException. Dans ce cas on vient juste recharger la page par un window.location.reload() (postback classique) qui nous redirigera vers la page de login !

Et le tour est joué…. 🙂

Dev,Atlas