Quantcast
Channel: Domotique Info
Viewing all 261 articles
Browse latest View live

Zodiac RV 5500 Vortex 4WD : Mon nouveau robot piscine !

$
0
0

L’an passé je vous ai présenté le robot piscine Zodiac RC 4400 après toute une saison d’utilisation intense et de satisfaction, cette année je vous propose de découvrir le plus trapu des Vortex, le RV5500 4WD que je possède depuis quelques mois..

Celui-ci se distingue avant tout de part son mode de fonctionnement puisqu’il est 100% électrique et ne nécessite aucun autre branchement, il suffit de connecter le boitier de commande sur une prise secteur (230V AC) et de relier le flexible (30V DC) au robot.

RV5500 b

Après un petit ¼ d’heure pour tout déballer et assembler, voici le robot piscine RV5500 prêt à l’emploi. Un peu de lecture avec la notice pour sa prise en main et le voici à l’eau sous l’oeil averti de mon chat, véritable fan et spécialiste des robots 😉

RV5500 sous surveillance

Je vous épargne le tableau de ses caractéristiques techniques que vous pourrez retrouver ici sur le site du fabricant Zodiac, mais voyons plutôt en détail ses principaux atouts et ses faiblesses.

Ergonomie

Le Zodiac RV5500 fait partie du haut de gamme des robots aspirateurs de la marque, il se situe entre le RV440 adapté aux piscine d’une taille inférieure à 15X7m et le 5600 encore plus puissant que le RV 5500.

Il est livré avec un chariot de transport et rangement très pratique, et le robot est muni d’une poignée pour sa mise à l’eau.

Aspiration cyclonique

C’est certainement le point fort de ce type de robot, l’aspiration du RV5500 est de type cyclonique (brevet Zodiac) et permet de filtrer 16M3 par heure.

Zodiac Aspiration Cyclonique

En inclinant la position du moteur pompe et le flux hydraulique, les ingénieurs Zodiac® ont créé les premiers robots piscine à aspiration cyclonique. La technologie Vortex™  crée un tourbillon surpuissant à l’intérieur du filtre. Les débris sont maintenus en suspension, ce qui évite le colmatage du filtre et permet de gagner en puissance et constance d’aspiration.

4 roues motrices

Equipé de 4 roues motrices qui lui confèrent une parfaite adhérence sur les parois, le RV 5500 s’affranchit de toutes les verticales sans risque de décrochage. Pour un nettoyage impeccable avec un maximum de confort, il est en plus programmable selon 3 zones de nettoyage au choix (ligne d’eau seule,  fond seul ou fond et parois).

RV5500 m

Dispositif Type de piscine et zones de nettoyage

Le RV 5500 convient à tout type de piscine enterrées et hors-sol à parois rigides d’une taille maximale de 15X7 m, bassins rectangulaires, ovales, formes libres, fonds plat, pente douce, pente composée, pointe de diamant, et revêtements en carrelage, liner, coque polyester, PVC armé, béton peint.

Screenshot_api-flux-foscam

Programmation et Télécommande

Comprenant une horloge de programmation multiple sur 7 jours, un indicateur de filtre plein, le choix du temps de nettoyage, le choix de la forme du bassin,  le coffret de commande du robot piscine RV 5500 facilite grandement le nettoyage. Et pour compléter le tout, il est livré avec sa télécommande sensorielle Kinetic équipée de capteurs de mouvements permettant de guider le robot d’un simple mouvement de poignet. (voir vidéo ci-dessous)

Lift System

Zodiac a également pensé aux utilisateurs quand il s’agit de sortir son robot piscine plein d’eau et qui pèse 10 kgs, avec son système Lift System (breveté) cela devient un jeu d’enfant, un puissant jet arrière s’active lors de la sortie d’eau pour vider la cuve en moins de 3 secondes.

RV5500 Zodiac 3

Filtration

Rien ne s’échappe de cette mise en suspension des saletés jusqu’à leur arrivée dans le filtre d’une contenance de 5L et d’un niveau de filtration de 100µ. C’est d’ailleurs étonnant de voir tout ce que peut retenir ce filtre sans toutefois se retrouver colmaté. Même les micro-algues se retrouvent piégées quand la piscine est légèrement verte, vraiment efficace. Le filtre se démonte très facilement et se nettoie tout simplement à l’aide d’un petit jet d’eau.

RV5500 l

Dispositif Swivel

Le câble du robot piscine est équipé du dispositif « Swivel » qui permet de limiter l’emmêlement du câble lors des déplacements du robot dans la piscine. Avec ce pivot qui tourne sur lui-même il évite la formation de boucles sur le câble qui se range ainsi facilement en fin de cycle.

RV5500 Zodiac 5

En conclusion, je suis parfaitement satisfait des performances de mon nouveau Robot Piscine RV5500 et surtout de son mode de programmation qui permet de retrouver une piscine parfaitement clean après quelques jours d’absence. Son aspiration cyclonique et son système de filtration ne laisse aucune chance au plus petit grain de sable. Et pour nettoyer un petit coin de la piscine dans lequel se concentre les brindilles ou autres saletés et c’est souvent le cas avec la buse de refoulement, il suffit alors de dégainer la télécommande magique pour guider le robot en toute simplicité.

Si je ne devais retenir qu’un seul atout (et c’est difficile), je dirais “Simplicité”, sa mise à l’eau ne nécessite aucun effort et il faut moins de 2 minutes pour le mettre en service.

Un seul petit bémol à retenir si je le compare au RC 4400 que j’avais précédemment, le Vortex RV 5500 s’en sort un peu moins bien dans les angles. Ma piscine étant hexagonale il reste parfois quelques traces dans les angles bas que l’ancien robot était capable de nettoyer, peut-être une différence dans les brosse rotatives un peu moins souples.

RV5500 Zodiac 4

Zodiac confirme là encore son leadership dans le domaine du robot piscine et j’ai déjà repéré quelques nouveautés qui pourraient bien m’intéresser comme le « MagnaPool » pour le traitement de l’eau au Magnésium :)

magnapool

Vous trouverez le Vortex RV 5500 aux alentours des 1449€ mais sachez que Zodiac propose d’autres robots piscine électriques à partir de 599€.

 

logo_zodiac


Test AWV Plus Wifi : L’alarme connectée by Chuango

$
0
0

Tout comme les solutions domotique, le monde des alarmes évolue également avec cette fois des solutions connectées. Après le kit Somfy One que je vous ai présenter dernièrement, voici la solution du fabricant Chinois Chuango, le kit AWV Plus Wifi.

Un pack comprenant une centrale connectée wifi, deux détecteurs d’ouverture sans fil, une télécommande, et une caméra de vidéosurveillance Wifi.

AWV Plus Wifi Camera Chuango

La centrale (Hub) d’alarme AWV de Chuango, se présente sous la forme d’un Pad à poser sur un plan horizontal ou encore à fixer sur un mur. Tous les accessoires sont fournis, et le Hub est muni d’un contact d’auto-protection pour déclencher une alarme en cas de tentative d’arrachement.Caractéristiques Techniques Hub Chuango AWV

Un des avantages de la solution d’alarme Chuango, c’est d’y trouver de très nombreux produits et accessoires sans fil, clavier, détecteur de mouvement, de fumée, d’inondation, sirènes, etc… Tous les produits fonctionnent sur un protocole propriétaire en 433MHz compatible avec certaines box domotique ou RFXCom.

AWVPLUS 5

Une fois associée  à votre réseau Wifi, l’alarme AWV sera pilotable directement de votre smartphone via l’application Wifi Control Alarm by Chuango.

App Wifi Control Alarm

Tout se configure via l’application

 Intégration de la centrale et de la caméra
 Gestion des comptes utilisateurs
 Activation et désactivation de la surveillance
 Appairage des équipements: detecteurs, badges, télécommandes…
 Réception en temps réel des notifications
 Sirène intégrée de 85dB
 Batterie de sauvegarde de 800mAh pour 8h d’autonomie en veille

Une fois l’application téléchargée et installée sur votre smartphone, il suffit de suivre les instructions l’écran en commençant par créer votre compte utilisateur.

Ensuite de nouveaux écrans vous accompagnent pour configurer la connexion de la centrale à votre réseau wifi comme ci-dessous.

App Wifi Control Alarm Install 1

Une fois votre réseau configuré et validé, la centrale passe au vert pour confirmer la bonne association.

App Wifi Control Alarm Install 2

Vous aurez très certainement une mise à jour à effectuer, déjà la seconde en deux mois et à chaque fois son lot de nouveautés ou améliorations.

App Wifi Control Alarm Install 3

Les capteurs d’ouverture et la télécommande sont déjà pré-associés, il suffit de retirer la petite protection des piles pour que la centrale les reconnaissent.

App Wifi Control Alarm Install 4

Et si vous souhaitez ajouter un capteur supplémentaire, cliquez sur le bouton +, attendez le message « Please Trigger Accessory », puis cliquez sur le bouton situé au dos de votre capteur ou détecteur comme je l’ai fait avec le Smoke Sensor ci-dessous.

Smoke Sensor Chuango

A noter qu’il existe un très grand nombre de périphériques compatibles comme vous pouvez le constater ci-dessous. Ainsi vous pourrez ajouter en fonction de vos besoins, un capteur d’inondation, un capteur de bris de vitre, un détecteur de mouvement, une sirène extérieure, un clavier à code, etc…

Devices Alarm Chuango

Même si je n’ai pas pu tester la fonctionnalité, l’alarme AWV est compatible avec l’assistant vocal Alexa d’Amazon et d’ici la fin d’année avec Google Home, mais j’y reviendrai 😉

App Wifi Control Alarm Install 5

L’alarme est déjà fonctionnelle, il ne reste plus qu’à fixer les capteurs aux endroits choisis, et faire quelques tests et réglages.

App Wifi Control Alarm Install 6

Il est possible de choisir le mode opératoire de chaque détecteur ou capteur, ainsi le détecteur de fumée déclenchera une alarme à tout moment, les capteurs d’ouvertures uniquement sur armement avec ou sans délai.

App Wifi Control Alarm Install 7

En cas de dysfonctionnement ou d’alarme, vous recevrez sur votre smartphone une alerte Push en temps réel, et ce même si l’application est fermée. Un journal d’événements est également accessible via le menu.

Caméra Wifi Chuango

Le pack Alarme AWV Plus comporte également une caméra wifi HD 720p que nous allons installer en quelques clics.

App Wifi Control Alarm Install 8

Après avoir installé l’application dédiée « IP116 Plus Caméra » et s’être identifié avec le même login et password que sur la centrale,  il n’y a plus qu’à suivre les 3 opérations de configuration wifi.

App Wifi Control Alarm Install 9

Et voici la caméra installée avec accès au live. A noter qu’il est possible d’ajouter une carte MicroSD pour enregistrer les séquences vidéo lors de déclenchements de l’alarme. La caméra possède également un micro et un haut-parleur intégré permettant de faire une levée de doute audio.

App Wifi Control Alarm Install 10

Retour sur notre application « Wifi Control Alarm » qui vous pouvez le voir ci-dessous, propose cette fois la visualisation de la caméra.

App Wifi Control Alarm Install 11

Connaissant bien les produits Chuango depuis quelques années, j’ai pu remettre la main sur quelques accessoires de tests. L’occasion de les ajouter à la centrale, détecteur PIR, clavier à code, et une sirène intérieure.

Siréne secteur chuango

Si l’ajout des capteurs se fait simplement via le menu de l’application et appui sur le bouton d’association des détecteurs ou capteurs, pour une sirène la procédure est un peu différente.

App Wifi Control Alarm Install 12

Appuyez sur le bouton central de la sirène et attendre 3s la confirmation par un bip sonore. Cliquez sur le bouton désarmer de l’application, un message de confirmation d’association s’affiche sur l’écran de votre smartphone.

Que dire de plus de cette alarme connectée by Chuango, si ce n’est que ce pack est vraiment simple à installer et à configurer, et qu’il est compatible avec de nombreux accessoires…

Très certainement le pack alarme connecté wifi au meilleur rapport qualité prix que j’ai pu tester, un hub, deux capteurs d’ouverture, une télécommande et une caméra wifi, tout ça à moins de 250€ !!!

Il ne lui manque plus qu’une application en Français (c’est en cours), sa compatibilité Google Home (Décembre), et une API pour le rendre interopérable avec nos solutions domotique (en discussion).

Retrouvez la gamme Chuango et accessoires compatibles sur la boutique My Domotique.

banner my domotique securite

La Marketplace de Fibaro

$
0
0

C’est au tour de Fibaro de nous proposer sa MarketpLace, tout comme ses concurrents Vera, eedomus et Jeedom, Fibaro offre à ses utilisateurs la possibilité de faire évoluer leurs installations en leur proposant de télécharger de nouveaux Virtual Devices (VD) ou autres scènes.
Déjà plus de 40 téléchargements de Virtual Device et Scènes sont disponibles, et toutes les semaines de nouveaux VD/Scènes sont validés par Fibaro et mise en ligne sur le site:
MarketPlace de FIBARO

MARKET PLACE 2

Le site est nativement en anglais, donc désolé pour les non-anglophone …. mais un clic droit et « traduire en français » vous permettra peu être de mieux comprendre même si les traductions techniques sont parfois incomplètes.

Afin de pouvoir télécharger ou publier votre propre Virtual Device (VD) ou Scènes il faut préalablement vous connecter en utilisant vos données de connexion au « Remote Acess » Fibaro ou alors créer un compte.

Une fois connecté vous aurez accès à l’onglet « Ajouter » ainsi qu’à tous les téléchargements de VD.

MARKET PLACE 3

Un moteur de recherche ( en cliquant sur la loupe à droite) est disponible pour affiner votre recherche entre les Virtual Device, les scènes et les catégories. A la date d’aujourd’hui ils nous proposent 39 Virtual Devices et 1 scène.

MARKET PLACE 5

Parmi les Virtual Device proposés j’en ai relevé quelques uns plutôt intéressants:

  • Le contrôle vos téléviseurs SONY BRAVIA, Smart Viera de PANASONIC, LG TV ou SAMSUNG
  • Le contrôle des ampoules connectées MiLight
  • Le contrôle des tondeuses Husqvarna
  • Le contrôle du lecteur de musique MUSAIC
  • Le contrôle du ventilateur tour de chez DYSON
  • Le contrôle du Smart System de GARDENA
  • Le contrôle des serrures connectées NUKI
  • Le contrôle du lecteur iEAST et iEAST LITE
  • Un Virtual Device de thermostat pour contrôler le panneau de chauffage
  • Le contrôle de l’APPLE TV via Global Cache IR
  • Le contrôle des portiers DOORBIRD

Et bien d’autres à venir !!

EXEMPLE

Nous allons prendre un exemple : Le Virtual Device d’un téléviseur SONY BRAVIA

MARKET PLACE 4

La première partie présente le VD avec sa date de création, la date de l’éventuelle mise à jour et la box compatible ( HC2 ou HCL) ainsi que le nombre de vue.

Ensuite vous trouverez toute la procédure pour installer le VD et l’icône de téléchargement.

MARKET PLACE 6

Et pour finir d’éventuelles remarques et avis des utilisateurs.
A présent il ne reste plus qu’à cliquer sur l’icône de téléchargement du VD ….

Une fois le téléchargement terminé, connectez vous à votre Home Center. Allez dans « Modules », « Ajouter un modules » et « Importer un dispositif virtuel ». Une fois le fichier sélectionné , cliquez sur « Ajouter ».

MARKET PLACE 7

Le module apparaîtra dans les « non assigné » et il ne vous reste plus qu’à le configurer en suivant scrupuleusement la procédure décrite dans la fiche du Virtual Device.

Comme je vous l’ai dit en entête, chaque Virtual Device ou Scènes ajoutés par les utilisateurs sont contrôlés par l’équipe technique FIBARO avant d’être publiés sur la Market Place. Vous ne risquez donc pas de trouver de doublons, ni de programmes qui ne fonctionnent pas. Avec son Market Place, Fibaro ouvre de nouvelles perspectives pour les utilisateurs désireux d’enrichir leur installation Smart Home en y ajoutant des objets connectés ( iot) .
Merci à FIBARO pour cette nouvelle fonctionnalité de partage ouverte à tous.

Sonoff et Google Home : Pilotez ce que vous voulez à la voix !

$
0
0

Plus besoin de vous présenter l’assistant vocal de Google, on ne parle que de lui depuis quelques mois, même à la télé…

Voyons plutôt comment utiliser la voix pour piloter un objet du quotidien, l’éclairage de votre salon par exemple. Nous allons pour ceci, utiliser un récepteur connecté wifi de la marque Sonoff, une solution vraiment sympa à prix lowcost.

Google Home & Mini

Pour ce mini tuto j’ai choisi le récepteur universel 1 canal 230V 10A, facile à connecter, il suffit de brancher d’un côté l’alimentation électrique (IN) et de l’autre la lampe (OUT).

Sonoff wifi

Il est maintenant indispensable d’installer l’App eWilink sur votre smartphone pour associer le récepteur SonOff à votre Wifi.

Install Sonoff 1

Après avoir sélectionné votre réseau Wifi local et détecté l’appareil, il ne vous reste plus qu’à lui donner un nom.

Install Sonoff 2

Vous pouvez d’ores et déjà allumer ou éteindre votre appareil branché sur le récepteur, ici ma lampe de salon.

Et enfin ajouter votre compte Smart eWilink à votre Google Home ou Mini, et en renseignant votre login et mot de passe.

Install Sonoff 3

L’assistant va automatiquement récupérer les appareils associés à votre compte eWelink, et vous lister quelques exemples de commandes vocales.

Install Sonoff 4

Vous voilà capable de piloter votre Lampe à la voix, d’un simple « Ok Google, Allume la lampe du Salon ». Et d’une belle voix féminine, votre assistant vocal vous répondra « Ok, j’allume la lampe du salon ».

A vous d’ajouter d’autres produits Sonoff en fonction de vos besoins, mais pour à peine 5€ vous aurez du mal à résister, surtout si comme moi vous possédez plusieurs Google Home dans la maison :)

Sonoff gearbest

Test du tracker bluetooth Mynt

$
0
0

La promesse du Tracker Mynt de Slightech est de vous permettre de retrouver vos objets égarés. Ce tracker peut aussi être utilisé comme télécommande. Nous allons voir dans cet article si ces promesses sont au rendez vous.

Spécifications

Selon les spécifications ce tracker a une durée de vie de plus d’un an et il peut être détecté jusque 50 m. Je n’ai pas pu vérifier ces éléments pour le reste, j’ai pu tout tester…

Installation

L’installation de l’objet est simple et pour cela il vous suffit de télécharger l’application Mynt sur votre smartphone et de suivre les instructions.

Ce module est doté de plusieurs fonctions (tracker et télécommandes). En conséquence, vous allez être mené à le configurer sur plusieurs devices (votre MAC et votre smartphone). Si vous êtes dans cette utilisation vous allez constater un petit soucis. En effet le module Mynt ne peut pas être détecté/commandé par plusieurs environnements en même temps. Cette limitation est liée au protocole Bluetooth.

En quoi est-ce gênant ?

Prenons le cas où votre tracker est configuré sur votre smartphone et votre MAC. Si ce dernier est lié à votre smartphone pour vous alerter au moment où il a disparu, vous ne pourrez pas, au même moment le commander depuis votre MAC. C’est soit l’un, soit l’autre. Vous devrez désactiver le bluetooth de votre smartphone pour que votre MAC puisse le détecter et le commander. Cela rend son utilisation plus fastidieuse.

Utilisation de la télécommande

L’atout principal de ce module est d’être munis d’un bouton qui le transforme en télécommande. L’application Mynt explique plusieurs cas d’usages de cette télécommande. Pour l’avoir utilisé en situation, avoir cette petite télécommande pour faire passer ses slides est très pratique et fait son petit effet Waouh. Le seul point gênant, est qu’il vaut mieux vérifier que votre module est bien appairé avant de lancer votre présentation. Car votre Mac peut prendre un peu de temps à se reconnecter avec votre Mynt.

mynt-commande

Ce qui est pratique et bien vu, c’est de pouvoir définir vous même l’action quand vous appuierez une fois ou deux fois sur les boutons. Plusieurs scénarios sont possibles et l’application est très facile à utiliser pour faire cette configuration.

Seul défaut, votre configuration est enregistrée dans l’application et non pas dans le module lui-même. Donc si vous indiquez qu’un appui long arrête la présentation, depuis l’app de votre smartphone, cela aura un effet sur les présentations lancées depuis votre smartphone. Il faudra le faire depuis l’app Mynt installée sur votre Mac, si vous voulez que cela soit pris en compte sur votre Mac.. Mais par défaut, fort heureusement, les actions correspondent à l’usage le plus courant.

mynt-mac

Utilisation du tracker

Pour la fonction Tracker, cela fonctionne comme annoncé. L’intérêt principal est de pouvoir faire sonner votre module, quand vous ne savez plus où il se trouve, voir inversement. Si vous avez égaré votre smartphone, votre module peut vous aider à le retrouver en le faisant sonner. Le tracker vous permet aussi de mettre en place une alarme qui se met à sonner si vous vous écarter de lui trop longtemps (durée que vous définissez).

Utilisation de la géolocalisation par la communauté

La fonction de géolocalisation par la communauté était celle sur laquelle j’avais le plus d’attente et j’ai été malheureusement déçu.

mynt-community

En théorie l’idée est excellente. Si vous avez perdu votre module, vous pouvez demander de l’aide à la communauté. C’est à dire à tous les possesseurs d’un tracker Mynt. Le principe est que si le signal bluetooth est détecté par un membre de la communauté, son application indiquera son emplacement et vous recevrez une notification. Mais en pratique, il y a peu de chance que cela arrive.

D’une part, vous n’avez pas de visibilité sur le nombre de possesseurs d’un tracker Mynt autour de vous. Ce manque de transparence, est suspicieux. Mais ce qui est fort dommage c’est que pour faire partie de la communauté, il faut avoir installé l’application Mynt et y avoir appairé un tracker. Donc si vous souhaitez que les membres de votre famille servent de communauté Mynt, il faudrait que chacun devienne acquéreur d’un tracker. Et lié au principe de fonctionnement du bluetooth, vous ne pouvez pas appairer votre tracker sur plusieurs smartphone de votre famille. La bonne idée aurait été que l’installation de l’app Mynt suffise pour rejoindre la communauté.

Souvent quand vous pensez avoir perdu un objet, il est en fait resté chez vous ou dans votre voiture, voir chez un proche. Donc si votre famille peut représenter cette communauté, cela vous permettrait d’être alerté par eux quand l’objet est détecté par leur smartphone. Malheureusement ce n’est pas prévu. Suite à échange avec Slightech, il est possible que cette fonctionnalité soit intégrée dans leur roadmap, à suivre..

Conclusion

Après quelques jours d’utilisation, je trouve agréable et pratique la fonction télécommande. Si vous êtes à la recherche d’une télécommande bluetooth, ce module avec un joli design est un produit intéressant.

Mais en tant que tracker, j’en suis plutôt déçu. Ce test m’a confirmé mes réserves sur l’utilité d’un tracker bluetooth. Les limites sont liées au protocole bluetooth avant tout. Donc ce test m’a permis de me rendre compte, que les solutions de type bluetooth sont trop limitées en l’état actuel pour être vraiment efficace, et vous aider à retrouver vos objets simplement.

Pour en savoir plus sur ce module

Pour en savoir plus sur ce module, je vous invite à regarder cette vidéo très pédagogique. Vous constaterez que l’auteur est très positif concernant le produit et pas du tout aussi critique que cet article. Ceci vous permettra de faire votre propre avis sur la question.

Intégration Sonos sur ma TaHoma Somfy

$
0
0

Il y a quelques semaines, Somfy annoncé une nouvelle mise à jour avec le support du service IFTTT et des enceintes SONOS. Je vous propose donc de découvrir comment intégrer les enceintes SONOS dans votre solution domotique Somfy.

Installation

Comme toujours sur TaHoma, l’installation passe par le menu « Configuration », puis il faudra se rendre sur l’onglet + afin de pouvoir ajouter une nouvelle marque à son écosystème :

Tuto Sonos Tahoma 1

Vous remarquerez au passage l’ajout des radiateurs Atlantic, Thermor et Sauter depuis les dernières mises à jour. Il faudra ici cliquer sur la marque SONOS :

Tuto Sonos Tahoma 2

Comme à chaque fois, il suffit de suivre les étapes une par une pour se laisser guider lors de l’installation. Première étape avec les pré-requis, vérifiez que vous possédez bien une enceinte SONOS connectée à votre réseau (c’est mieux) :

Tuto Sonos Tahoma 3

Ensuite, la Box Tahoma va scanner votre réseau pour détecter votre ou vos enceintes Sonos afin de l’appairer :

Tuto Sonos Tahoma 4

Enfin la dernière étape vous confirme que votre ou vos systèmes SONOS ont bien été ajoutés :

Tuto Sonos Tahoma 5

On les verra donc apparaître sous le nouvel onglet SONOS dans le menu « Configuration » :

Tuto Sonos Tahoma 6

Et on les retrouvera également sur la page d’accueil de votre système TaHoma :

Tuto Sonos Tahoma 7

Voyons maintenant ensemble l’utilisation et les possibilités offertes par cette association.

Utilisation

Avec cette association, il vous sera donc possible :

  • Lancer vos playlists préférées depuis votre application TaHoma
  • Ecouter vos web radios de la même façon
  • Passer d’une chanson à l’autre
  • Régler le niveau sonore de chaque pièce et enceinte

Autre gros avantage, si vous possédez plusieurs enceintes SONOS dans une même pièce, elles seront regroupées sous un seul et même périphérique dans l’interface TaHoma afin de toutes les contrôler en même temps. C’est très pratique.

Tuto Sonos Tahoma 8

Comme je vous le disais plus haut, il est également possible d’accéder à ses favoris directement depuis l’interface TaHoma comme vous le voyez ci-dessous :

Tuto Sonos Tahoma 9

La photo de la pochette de l’album apparait également au lancement d’une musique et reprend en partie l’interface Sonos

Tuto Sonos Tahoma 10

Sur un smartphone, on retrouve également les mêmes possibilités et le même visuel :

Tahoma Smartphone Sonos

Une autre fonctionnalité intéressante, c’est de pouvoir intégrer les enceintes Sonos au sein des scénarios TaHoma. On peut par exemple les ajouter à notre scénario « bonne nuit » afin de s’assurer que toutes les lumières sont éteinte mais aussi que toutes enceintes de toutes les pièces sont coupées avant d’aller se coucher.

Conclusion

Une fois de plus l’ajout de ces nouveaux périphériques est d’une simplicité déconcertante, important pour un utilisateur lambda. Le gros avantage, c’est que tout peut se faire depuis une seule et même application sans avoir à switcher de l’une vers l’autre. On peut très bien imaginer le matin se lever, ouvrir ses volets depuis son smartphone puis lancer sa chanson favorite afin de bien commencer la journée.

Banner My Domotique Somfy

Du Bluetooth Mesh chez Nodon pour la maison connectée

$
0
0

NodOn a présenté au CES sa nouvelle solution « Bluetooth Mesh » pour la maison connectée. Avec des accessoires sans fil et interopérables pour le logement et le bâtiment connecté, NodOn est un acteur majeur de la maison connectée en Europe et le premier à créer une gamme de produits Bluetooth Mesh pour la maison connectée.

NodOn-Products-2018

NodOn conçoit des capteurs, actionneurs et contrôleurs : prises intelligentes, interrupteurs, télécommandes, modules encastrés (lumières, chauffage, volets), capteurs de température, de mouvement, etc. Les produits NodOn utilisent les technologies radio Z-Wave et EnOcean, les plus connues du marché de la maison connectée, et sont compatibles avec la majorité des centrales domotiques du marché.

BTM

Avec sa gamme de produits Bluetooth Mesh, Nodon innove en proposant des capteurs et actionneurs qui s’installent et se contrôlent sans aucune centrale domotique, vous n’avez besoin que de votre smartphone. Nodon a intégré en exclusivité le programme Bluetooth Smart Mesh et le consortium Bluetooth SIG dès 2015 pour rendre cela réel. Les prises, les interrupteurs, les capteurs, et les modules encastrés NodOn sont sécurisés et faciles à installer grâce à une Application smartphone. Ces produits plug and play Bluetooth Mesh consomment très peu d’énergie, leur procurant une autonomie bien supérieure à beaucoup d’autres produits sur batterie.

Le Bluetooth est connu, simple et il est partout. Les produits NodOn fonctionnant en protocole Bluetooth sont compatibles avec tous les smartphone ou appareils BLE du marché, pour rendre votre maison connectée encore plus simple. Branchez, installez et profitez ! Le tout depuis votre smartphone favori.

Une solution intéressante à suivre de prés…

#JeuConcours : Avalanche de cadeaux Z-wave & Enocean

$
0
0

En partenariat avec My Domotique et Ubiwizz, nous vous proposons de gagner l’un de nos nombreux cadeaux mis en Jeu par par nos deux spécialistes de la maison connectée. MyDomo

My Domotique est la boutique spécialisée dans les solutions domotique « Sans Fil » Z-wave, et « Sans Pile » avec les produits EnoceanExpert dans la maison connectée depuis plus de 5 ans, My Domotique vous fait gagner 8 nouveaux produits Z-wave+ de la gamme Neo Coolcam

Produits Neo Z-wave Coolcam

MyUbiwizz Habitat Connecté

Ubiwizz est la marque connectée de Decelect, une société bien connue dans le secteur du courant faible depuis de très nombreuses années. Ubiwizz est un des principaux acteurs de la maison connectée avec sa gamme de produits « Sans Fil & Sans Pile » Enocean. Vous avez pu découvrir son écosystème il y a quelques mois sur le blog : Ubiwizz : Solution interopérable pour l’habitat connecté.

JeuMyDomo

Pour tenter votre chance et participer au tirage au sort du 06/02, plusieurs possibilités s’offrent à vous :

Bonne chance à tous !!!


Comment créer une passerelle SMS dans votre maison connectée ?

$
0
0

Tutoriel pour créer une passerelle SMS avec un Raspberry Pi

Nous allons voir dans cet article comment envoyer/recevoir des SMS via une passerelle GSM/GPRS installée sur un Raspberry Pi (RPi). Nous allons décrire étape par étape, l’installation et la configuration nécessaire pour rendre votre plateforme opérationnelle.

Matériel nécessaire

Vous aurez besoin du matériel suivant :

  • Un Raspberry Pi. Le modèle RPi ZERO W correspond parfaitement à notre besoin pour 15 euros
  • Une passerelle SMS (la carte nadhat) : 39,90 euros
  • Une alimentation pour raspberry (5V et 2,5A) : 5,92 euros
  • Une carte SD Micro 16 Go : 10,99 euros

Il vous faudra une carte GSM, il en existe à deux euros par mois avec SMS illimités.
Le coût total du matériel s’élève donc à 72 euros.

Comme vous pouvez le remarquer les modèles, que je vous ai indiqué, sont déjà équipés de connecteurs. Donc vous n’aurez même pas besoin de faire une seule soudure.

Présentation de la carte Nadhat

La carte d’extension qui nous servira de passerelle SMS se nomme Nadhat, elle a été inventée par Garatronic, une petite entreprise fondée par trois passionnés. Cette carte utilise le chip SIM800c. Elle est au format pHAT. Vous pourriez intégrer ce chip directement à votre RPi, si vous êtes un spécialiste d’électronique. L’avantage de la carte Nadhat, est qu’elle est pourvue de tous les composants nécessaires, pour en assurer la stabilité. Une autre approche aurait été d’utiliser un dongle 3G, mais cette approche est désuète et il est devenu quasiment impossible de trouver des dongles 3G.

Logiciels et OS à installer

Le RPi tourne sur un os Debian. La version lite suffit à répondre à nos besoins.
Pour gérer les SMS, vous aurez besoin de la librairie gammu.
Pour programmer vos services, nous utiliserons le logiciel open-source Node-RED.

J’ai découvert Node-RED, grâce aux très bons articles de Ludovic Toinel. Je profite de cet article pour le remercier de partager ses découvertes avec la communauté domotique-info. Node-RED est un logiciel open-source développé par IBM. C’est un serveur web consommant peu de ressources. L’intérêt est qu’il permet de programmer des scénarios à l’aide de composants graphiques. Ce logiciel, peut être étendu grâce à une communauté très active.

Installation du Raspberry

Vous trouverez l’OS à télécharger sur le site Debian. Pour installer votre RPi, je vous invite à suivre ce tutoriel, sur le site raspbian-france.fr. La version Lite n’intègre pas d’interface graphique, toute l’installation se fera avec ssh en ligne de commande.

Pour compléter le système de base, vous aurez besoin de ces utilitaires : minicom, pyserial.

sudo apt-get install minicom
sudo apt-get install python-pip
sudo pip install pyserial
Reconfiguration du port UART

L’adjonction du Bluetooth au Raspberry Pi 3 a amené les concepteurs de la framboise à détourner l’UART du BCM2837 précédemment relié aux bornes 8 et 10 du GPIO vers le Bluetooth. Un article sur le blog de François MOCQ explique les impacts de ce changement. Il me semble utile d’appliquer cette recommandation afin d’avoir de bonnes performances d’échanges de données entre la carte Nadhat et le RPi.

Pour cela, lancer raspi-config et activer le port série.

Editez le fichier /boot/config.txt, vous devez voir à présent :

enable_uart=1

Ajouter cette ligne :

dtoverlay=pi3-miniuart-bt

Puis éditer le fichier sudo nano /boot/cmdline.txt

sudo nano /boot/cmdline.txt

Et supprimer la ligne

console=serial0,115200

Il est nécessaire de réaliser un premier test, afin de vérifier que votre connecteur GPIO est bien configuré. Pour cela il suffit de vérifier que la communication des bornes txd et rxd fonctionnent normalement. Ce test peut être réalisé en reliant ces bornes par un câble, puis en envoyant des données sur la borne d’entrée et de vérifier qu’elles sont bien retournées par l’autre borne.

Pour cela vous pouvez lancer ce script : sudo python Essai_Serial.py

#!/usr/bin/env python
# -*- coding: utf-8 _*

# Import des modules
 import serial
 import time

ser = serial.Serial(
 port='/dev/ttAMA0',
 baudrate = 115200,
 parity=serial.PARITY_NONE,
 stopbits=serial.STOPBITS_ONE,
 bytesize=serial.EIGHTBITS,
 timeout=0.1)

# le programme redemarre toutes les 3s
 while True:
 print("Preparation de l'envoi")
 StrSend = "Hello word!"
 ser.write(StrSend)
 print("Envoi OK: " + StrSend)
 time.sleep(1)
 rcv = ser.readline() # lit jusqu a CRLF
 time.sleep(1)
 print("Recu: " + repr(rcv))
 break
 print("c'est fini")

Cela ne sert à rien d’effectuer les prochaines étapes, si ce test ne fonctionne pas. Sans extension GPIO correctement configurée, votre passerelle ne pourra pas fonctionner.

Installation de votre passerelle SMS

Lorsque vous aurez réceptionné votre carte Nadhat, déjà soudée. Vous aurez juste à la brancher sur les connecteurs de votre RPi, puis d’y insérer la pile et votre carte SIM. Bien évidemment il faut effectuer ces manipulations en ayant débranché votre RPi au préalable. Après avoir rallumé votre RPi, il vous restera à mettre en route votre carte Nadhat à partir de ces sources :

sudo apt-get install git
sudo git clone http://www.github.com/fpie/nadhat

Pour allumer la carte, lancer ce script :

./nadhat/softxware/nadpwr.sh

Quand la led clignote au début, cela indique qu’elle est en recherche du réseau. Puis dès qu’elle est connectée à votre opérateur, la led devient fixe.

Pour lancer automatiquement la carte au lancement de votre RPi, vous pouvez ajouter cette commande dans le fichier /etc/rc.localsudo :

/home/pi/nadhat/software/nadpwr.sh
Test du bon fonctionnement de la passerelle SMS

Lancer une console sur le port UART pour connecter directement à la passerelle :

minicom -b 115000 -o -D /dev/ttyAMA0

Vous pourrez lancer ces commandes :

at => répond OK pour indiquer que le circuit fonctionne bien
atz => pour remettre à zéro
at+cgmi => pour obtenir le nom du fabricant
at+cgmm => pour obtenir le nom de la carte
at+cnetscan => pour scanner les bornes GSM autour de soi
at+csq => pour obtenir la qualité du signal

at+csca? => pour obtenir le  num de tél du service SMS de votre opérateur

Test envoi SMS
at+cmgf=1 => pour configurer l'envoi des sms en texte
at+cmgs="+336xxxxxxx" => pour indiquer le numéro de téléphone destinataire
> message
CTRL+Z => pour finir et valider le message
at+cmgf=0

Gérer les SMS avec des commandes AT serait un brin fastidieux. C’est pour cela que nous nous appuyons sur l’utilitaire Gammu, qui a été créé pour vous faciliter grandement ce travail.

Pour arrêter la carte et le RPI proprement :

at+cpowd=1
Puis
sudo halt
Installation de la librairie Gammu

Gammu est un logiciel qui vous sert d’interface pour envoyer ou recevoir vos SMS. En installant le démon Gammu, celui-ci se chargera de vérifier à intervalle régulier si des SMS sont à envoyer ou si d’autres ont été à lire sur votre carte GSM. Cette libraire va exécuter les commandes AT qu’il convient. Dès qu’un SMS est reçu, ce dernier sera placé dans le répertoire inbox.

sudo apt-get install gammu gammu-smsd

Configurer le service :

sudo nano /etc/gammu-smsdrc

Modifier le fichier ainsi :

# Configuration file for Gammu SMS Daemon

# Gammu library configuration, see gammurc
 [gammu]
 device = /dev/ttyAMA0
 name = Téléphone sur le port UART
 connection = at
 # Debugging
 #logformat = textall

# SMSD configuration, see gammu-smsdrc
 [smsd]
 service = files
 logfile = syslog
 # Increase for debugging information
 debuglevel = 0

# Paths where messages are stored
 inboxpath = /var/spool/gammu/inbox/
 outboxpath = /var/spool/gammu/outbox/
 sentsmspath = /var/spool/gammu/sent/
 errorsmspath = /var/spool/gammu/error/

# Supprimer le code PIN de votre carte GSM
 CheckSecurity = 0
 CheckBattery = 0

Pour lancer le service

sudo /etc/init.d/gammu-smsd start

Redémarrer votre démon Gammu :

sudo /etc/init.d/gammu-smsd restart

Pour tester l’envoi d’un SMS avec Gammu :

sudo gammu-smsd-inject TEXT 06XXXXXXX -text "Test"

Si votre test d’envoi avec les commandes AT a fonctionné, ce dernier test fonctionnera forcément, car gammu ne fait que masquer les commandes AT. Cependant en cas (improbable) de non réception du SMS, vérifiez le syslog du système en mettant le niveau de log de la conf gammu à 4.

Installation de node-red

Pour créer vos services, nous allons nous appuyer sur le framework Node-RED qui permet de faire de la programmation via une interface graphique très bien faite et très simple d’utilisation.

L’installation de Node-RED est décrit sur le site https://nodered.org/docs/hardware/raspberrypi.html

Pour lancer Node-RED, au démarrage de votre RPi :

sudo systemctl enable nodered.service

Maintenant que votre modem SMS fonctionne, il vous reste à donner les droits en lecture à votre pool SMS à l’utilisateur exécutant Node-RED :

sudo usermod -a -G gammu pi

Nous finissons cette installation, en ajoutant quelques modules depuis l’interface graphique (menu palette) :
• Dashboard (node-red-dashboard), pour créer une page pour faire afficher des informations
• String (node-red-contrib-string), pour manipuler les champs texte

Votre 1er flow : gestion des SMS

Nous allons commencer par créer deux scripts pour envoyer et recevoir les SMS.

Pour envoyer un SMS, on va créer un service REST :

Pour envoyer un SMS il suffit d’appeler l’URL : http://:1880/sendsms?phone={{phone}}&msg={{payload}}

Le source du script peut être copié ici :

[{"id":"9edaa123.3ea47","type":"http in","z":"a3b8e02d.a0aa8","name":"get /sendsms","url":"/sendsms","method":"get","upload":false,"swaggerDoc":"","x":106.66665649414062,"y":150.66663265228271,"wires":[["26a4e12c.8d489e"]]},{"id":"26a4e12c.8d489e","type":"template","z":"a3b8e02d.a0aa8","name":"Prepare command","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"gammu-smsd-inject TEXT \"{{payload.phone}}\" -text \"{{payload.msg}}\"\n","output":"str","x":306.6666564941406,"y":150.66663265228271,"wires":[["d2e35ea2.94427"]]},{"id":"d2e35ea2.94427","type":"exec","z":"a3b8e02d.a0aa8","command":"","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"Exec Gammu","x":516.6666564941406,"y":150.66663265228271,"wires":[["fe1d2d60.24cda"],[],[]]},{"id":"fe1d2d60.24cda","type":"switch","z":"a3b8e02d.a0aa8","name":"Check result","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"Created outbox message","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":726.6666564941406,"y":150.66663265228271,"wires":[["efd8433.606a9c"],["c15a946e.e7cb28"]]},{"id":"efd8433.606a9c","type":"function","z":"a3b8e02d.a0aa8","name":"OK","func":"msg.statusCode = 204\nreturn msg;","outputs":1,"noerr":0,"x":886.6666564941406,"y":117.66663265228271,"wires":[["e28c2fab.bbb4a"]]},{"id":"c15a946e.e7cb28","type":"function","z":"a3b8e02d.a0aa8","name":"KO","func":"msg.statusCode = 501\nreturn msg;","outputs":1,"noerr":0,"x":886.6666564941406,"y":190.66663265228271,"wires":[["e28c2fab.bbb4a"]]},{"id":"e28c2fab.bbb4a","type":"http response","z":"a3b8e02d.a0aa8","name":"HTTP Response","statusCode":"","headers":{},"x":1056.6666564941406,"y":150.66663265228271,"wires":[]},{"id":"77625b1.6c9e4a4","type":"comment","z":"a3b8e02d.a0aa8","name":"SMS Webservice","info":"","x":120,"y":80,"wires":[]}]

Pour lire les SMS reçus, on va créer un script qui va scruter le répertoire /inbox et dès l’ajout d’un fichier, il se déclenchera pour récupérer le SMS

Le source du script peut être copié ici :

[{"id":"612ced96.9d4e2c","type":"comment","z":"7f1a31f4.ee3af8","name":"SMS Inbox","info":"","x":120,"y":300,"wires":[]},{"id":"9f3fed13.acaf3","type":"watch","z":"7f1a31f4.ee3af8","name":"SMS Inbox","files":"/var/spool/gammu/inbox","recursive":"","x":120,"y":360,"wires":[["f6f3983a.8f093"]]},{"id":"f6f3983a.8f093","type":"change","z":"7f1a31f4.ee3af8","name":"get filename","rules":[{"t":"set","p":"filename","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":310.5000343322754,"y":359.6666679382324,"wires":[["e14cb91b.eb9198"]]},{"id":"e14cb91b.eb9198","type":"file in","z":"7f1a31f4.ee3af8","name":"get SMS","filename":"","format":"utf8","chunk":false,"sendError":false,"x":480,"y":360,"wires":[["c82c5f3.b04b4a"]]},{"id":"c82c5f3.b04b4a","type":"function","z":"7f1a31f4.ee3af8","name":"extract content","func":"msg.phone = msg.filename.match(/(\\+[0-9]*)/)[1];\ndelete msg.filename;\ndelete msg.topic;\ndelete msg.file;\ndelete msg.type;\nreturn msg;","outputs":1,"noerr":0,"x":653.9999732971191,"y":359.99999618530273,"wires":[["a9a8e6b4.756ac8"]]},{"id":"96a4367e.a5ef98","type":"switch","z":"7f1a31f4.ee3af8","name":"Switch Command","property":"payload","propertyType":"msg","rules":[{"t":"regex","v":"<à suivre au prochain numéro...>","vt":"str","case":true},{"t":"else"}],"checkall":"true","outputs":2,"x":1070,"y":300,"wires":[["94985917.1530f"],["83d3bd70.0e1fe"]]},{"id":"83d3bd70.0e1fe","type":"function","z":"7f1a31f4.ee3af8","name":"Otherwize","func":"msg.payload = \"Commande non reconnue : \" + msg.payload\nreturn msg;","outputs":1,"noerr":0,"x":1343.5033874511719,"y":325.1738166809082,"wires":[["4c5933ed.ccb1fc"]]},{"id":"a9a8e6b4.756ac8","type":"switch","z":"7f1a31f4.ee3af8","name":"","property":"phone","propertyType":"msg","rules":[{"t":"eq","v":"+336XXXXXXXX","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":830,"y":360,"wires":[["96a4367e.a5ef98"],["1491c3a1.830ed4"]]},{"id":"585da817.4638d8","type":"debug","z":"7f1a31f4.ee3af8","name":"téléphone non autorisé","active":true,"console":"false","complete":"payload","x":1277.6666107177734,"y":383.9999580383301,"wires":[]},{"id":"1491c3a1.830ed4","type":"function","z":"7f1a31f4.ee3af8","name":"Phone KO","func":"msg.payload = \"ATTENTION téléphone non autorisé : \" + msg.phone\nreturn msg;","outputs":1,"noerr":0,"x":1064.333351135254,"y":383.9999942779541,"wires":[["585da817.4638d8"]]},{"id":"4c5933ed.ccb1fc","type":"debug","z":"7f1a31f4.ee3af8","name":"","active":true,"console":"false","complete":"false","x":1553.5033874511719,"y":305.1738166809082,"wires":[]},{"id":"94985917.1530f","type":"function","z":"7f1a31f4.ee3af8","name":"A suivre","func":"msg.payload = \"A suivre au prochain article...\"","outputs":1,"noerr":0,"x":1343.5033874511719,"y":265.1738166809082,"wires":[["4c5933ed.ccb1fc"]]}]
Conclusion

Votre installation est prête. Nous allons voir dans un prochain article quelques cas d’usage pour vous donner un aperçu de ses capacités.

Si vous souhaitez aller plus loin avec votre Raspberry, je vous recommande ce livre :

Pour aller plus loin avec cette passerelle GSM/GPRS

Pour conclure, ce dispositif a également la possibilité de permettre à votre RPi de se connecter à internet pour envoyer des données. Par rapport à une solution de type Sigfox ou Lora, vous êtes moins limité en terme de volumétrie de données. Vous pourriez facilement créer une caméra avec votre RPi et recevoir à distance les photos prises. Voici un exemple vu sur le site de Garatronic pour illustrer ce montage. Pour y arriver il vous faudra souder les broches à l’envers, c’est malin. Vous obtenez une caméra IP très discrète.

The post Comment créer une passerelle SMS dans votre maison connectée ? appeared first on Domotique Info.

Peut-on ajouter des services intelligents à un mobile GSM ?

$
0
0

Comment ajouter des capacités à votre mobile GSM ?

Certains d’entre vous, ont sans doute souhaité être moins dépendants de leur smartphone.

  • vous en avez assez, de recharger votre mobile tous les soirs…
  • vous souhaitez ne plus être traqué.
  • vous avez trouvé absurde de vous sentir mal à l’aise, juste pour avoir oublié votre smartphone à la maison.

Pour ces raisons là ou pour d’autres, vous avez peut-être opté pour un mobile GSM de ce type. L’objectif n’est pas de vous couper du monde, mais juste de vous limiter à utiliser les services utiles au quotidien.

De base ce type de mobile permet de téléphone et d’envoyer des SMS. Nous allons voir dans cet article comment ajouter des capacités à votre mobile GSM grâce aux SMS, en utilisant un objet connecté fabuleux qui s’appelle le Raspberry Pi.

On prendra quelques exemples, pour illustrer ce qu’on entend par capacités. Quand vous aurez compris le principe, vous serez capables d’intégrer n’importe quel service ouvert sur Internet.

Pré requis

L’objectif est d’ajouter des capacités en s’appuyant sur les SMS que vous enverrez à votre Raspberry Pi (RPi). L’installation a été décrite dans un précédent article.

Pour rappel, la passerelle SMS est gérée matériellement par la carte Nadhat, installée sur un Raspberry Pi Zero (RPi). Au niveau logiciel, votre RPi a été installé avec l’OS Debian, sur lequel nous avons installé l’utilitaire Gammu pour gérer les SMS. Les scénarios sont programmés graphiquement par le logiciel open-source Node-RED.

Votre 1er flow : gestion des SMS

Nous allons commencer par créer deux scripts pour envoyer et recevoir les SMS.

Pour envoyer un SMS, on va créer un service REST :

Pour envoyer un SMS il suffit d’appeler l’URL : http://<host-rpi>:1880/sendsms?phone={{number}}&msg={{message}}

  • Noeud « get /sendsms » : Expose un service REST acceptant les paramètres phone et msg
  • Noeud « Prepare command » : Prépare la commande pour envoyer le SMS
  • Noeud « Exec Gammu » : Appelle l’utilitaure gammu-smsd-inject pour envoyer le SMS
  • Noeud « Check result » : Vérifie que le shell s’est bien exécuté
  • Noeud « HTTP Response » : Renvoie le code 204 si OK, sinon le code HTTP 501 si KO

Le source de script peut être copié ici :

[{"id":"9edaa123.3ea47","type":"http in","z":"a3b8e02d.a0aa8","name":"get /sendsms","url":"/sendsms","method":"get","upload":false,"swaggerDoc":"","x":106.66665649414062,"y":150.66663265228271,"wires":[["26a4e12c.8d489e"]]},{"id":"26a4e12c.8d489e","type":"template","z":"a3b8e02d.a0aa8","name":"Prepare command","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"gammu-smsd-inject TEXT \"{{payload.phone}}\" -text \"{{payload.msg}}\"\n","output":"str","x":306.6666564941406,"y":150.66663265228271,"wires":[["d2e35ea2.94427"]]},{"id":"d2e35ea2.94427","type":"exec","z":"a3b8e02d.a0aa8","command":"","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"Exec Gammu","x":516.6666564941406,"y":150.66663265228271,"wires":[["fe1d2d60.24cda"],[],[]]},{"id":"fe1d2d60.24cda","type":"switch","z":"a3b8e02d.a0aa8","name":"Check result","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"Created outbox message","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":726.6666564941406,"y":150.66663265228271,"wires":[["efd8433.606a9c"],["c15a946e.e7cb28"]]},{"id":"efd8433.606a9c","type":"function","z":"a3b8e02d.a0aa8","name":"OK","func":"msg.statusCode = 204\nreturn msg;","outputs":1,"noerr":0,"x":886.6666564941406,"y":117.66663265228271,"wires":[["e28c2fab.bbb4a"]]},{"id":"c15a946e.e7cb28","type":"function","z":"a3b8e02d.a0aa8","name":"KO","func":"msg.statusCode = 501\nreturn msg;","outputs":1,"noerr":0,"x":886.6666564941406,"y":190.66663265228271,"wires":[["e28c2fab.bbb4a"]]},{"id":"e28c2fab.bbb4a","type":"http response","z":"a3b8e02d.a0aa8","name":"HTTP Response","statusCode":"","headers":{},"x":1056.6666564941406,"y":150.66663265228271,"wires":[]},{"id":"77625b1.6c9e4a4","type":"comment","z":"a3b8e02d.a0aa8","name":"SMS Webservice","info":"","x":120,"y":80,"wires":[]}]

Pour lire les SMS reçus, on va créer un script qui va scruter le répertoire /inbox et dès l’ajout d’un fichier, il se déclenchera pour récupérer le SMS

  • Noeud « SMS Inbox » : Vérifie la présence de nouveaux fichiers dans le répertoire /inbox de Gammu
  • Noeud « get filename » : Copie la variable msg.filename dans msg.payload
  • Noeud « get SMS » : Lit le contenu du fichier SMS reçu
  • Noeud « extract content » : Extrait du fichier le numéro de téléphone de l’envoyeur et supprime les données inutiles
  • Noeud « switch » : Vérifier que le téléphone qui envoie la commande est autorisé à le faire
  • Noeud « switch command » : Selon le texte envoyé dans le SMS, exécute la commande demandée. Ce n’est qu’un exemple pour illustrer comment le framework Node-RED permet de gérer des conditions.

Le source du script peut être copié ici :

[{"id":"612ced96.9d4e2c","type":"comment","z":"7f1a31f4.ee3af8","name":"SMS Inbox","info":"","x":120,"y":300,"wires":[]},{"id":"9f3fed13.acaf3","type":"watch","z":"7f1a31f4.ee3af8","name":"SMS Inbox","files":"/var/spool/gammu/inbox","recursive":"","x":120,"y":360,"wires":[["f6f3983a.8f093"]]},{"id":"f6f3983a.8f093","type":"change","z":"7f1a31f4.ee3af8","name":"get filename","rules":[{"t":"set","p":"filename","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":310.5000343322754,"y":359.6666679382324,"wires":[["e14cb91b.eb9198"]]},{"id":"e14cb91b.eb9198","type":"file in","z":"7f1a31f4.ee3af8","name":"get SMS","filename":"","format":"utf8","chunk":false,"sendError":false,"x":480,"y":360,"wires":[["c82c5f3.b04b4a"]]},{"id":"c82c5f3.b04b4a","type":"function","z":"7f1a31f4.ee3af8","name":"extract content","func":"msg.phone = msg.filename.match(/(\\+[0-9]*)/)[1];\ndelete msg.filename;\ndelete msg.topic;\ndelete msg.file;\ndelete msg.type;\nreturn msg;","outputs":1,"noerr":0,"x":653.9999732971191,"y":359.99999618530273,"wires":[["a9a8e6b4.756ac8"]]},{"id":"96a4367e.a5ef98","type":"switch","z":"7f1a31f4.ee3af8","name":"Switch Command","property":"payload","propertyType":"msg","rules":[{"t":"regex","v":"<à suivre au prochain numéro...>","vt":"str","case":true},{"t":"else"}],"checkall":"true","outputs":2,"x":1070,"y":300,"wires":[["94985917.1530f"],["83d3bd70.0e1fe"]]},{"id":"83d3bd70.0e1fe","type":"function","z":"7f1a31f4.ee3af8","name":"Otherwize","func":"msg.payload = \"Commande non reconnue : \" + msg.payload\nreturn msg;","outputs":1,"noerr":0,"x":1343.5033874511719,"y":325.1738166809082,"wires":[["4c5933ed.ccb1fc"]]},{"id":"a9a8e6b4.756ac8","type":"switch","z":"7f1a31f4.ee3af8","name":"","property":"phone","propertyType":"msg","rules":[{"t":"eq","v":"+336XXXXXXXX","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":830,"y":360,"wires":[["96a4367e.a5ef98"],["1491c3a1.830ed4"]]},{"id":"585da817.4638d8","type":"debug","z":"7f1a31f4.ee3af8","name":"téléphone non autorisé","active":true,"console":"false","complete":"payload","x":1277.6666107177734,"y":383.9999580383301,"wires":[]},{"id":"1491c3a1.830ed4","type":"function","z":"7f1a31f4.ee3af8","name":"Phone KO","func":"msg.payload = \"ATTENTION téléphone non autorisé : \" + msg.phone\nreturn msg;","outputs":1,"noerr":0,"x":1064.333351135254,"y":383.9999942779541,"wires":[["585da817.4638d8"]]},{"id":"4c5933ed.ccb1fc","type":"debug","z":"7f1a31f4.ee3af8","name":"","active":true,"console":"false","complete":"false","x":1553.5033874511719,"y":305.1738166809082,"wires":[]},{"id":"94985917.1530f","type":"function","z":"7f1a31f4.ee3af8","name":"A suivre","func":"msg.payload = \"A suivre au prochain article...\"","outputs":1,"noerr":0,"x":1343.5033874511719,"y":265.1738166809082,"wires":[["4c5933ed.ccb1fc"]]}]
2ème flow : gestion domotique

Ce cas d’usage va nous permettre d’enclencher ou de désactiver l’alarme configurée sur votre box domestique. Pour cela on va créer un script, qui dès réception d’un SMS lira son contenu. Si le message est « Alarm On ».. on enclenchera l’alarme et si la commande est « Alarm Off » on désactivera l’alarme.

Pour envoyer enclencher l’alarme il suffit d’appeler l’URL qui déclenche la scène correspondante sur votre box domotique :

  • Noeud « switch command » : Si la commande passée en paramètre est « Alarm On », lance la requête HTTP qui permet d’exécuter le scénario souhaité pour enclencher l’alarme.
  • Noeud « send CFM by SMS » : Retourne la confirmation de l’exécution du scénario par SMS.

Lorsque la scène est terminée le script vérifie le code retour et renvoie un SMS indiquant si la commande a été bien exécutée.

Le source du script peut être copié ici :

[{"id":"5d2e9250.4c447c","type":"comment","z":"33955f6.c992ca","name":"SMS Inbox","info":"","x":160,"y":100,"wires":[]},{"id":"943efe20.486aa8","type":"watch","z":"33955f6.c992ca","name":"SMS Inbox","files":"/var/spool/gammu/inbox","recursive":"","x":160,"y":220,"wires":[["18493b2d.9250f5"]]},{"id":"18493b2d.9250f5","type":"change","z":"33955f6.c992ca","name":"get filename","rules":[{"t":"set","p":"filename","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":350.5000343322754,"y":219.66666793823242,"wires":[["91ab8071.a159"]]},{"id":"91ab8071.a159","type":"file in","z":"33955f6.c992ca","name":"get SMS","filename":"","format":"utf8","chunk":false,"sendError":false,"x":520,"y":220,"wires":[["e0fd2438.c772c8"]]},{"id":"e0fd2438.c772c8","type":"function","z":"33955f6.c992ca","name":"extract content","func":"msg.phone = msg.filename.match(/(\\+[0-9]*)/)[1];\ndelete msg.filename;\ndelete msg.topic;\ndelete msg.file;\ndelete msg.type;\nreturn msg;","outputs":1,"noerr":0,"x":693.9999732971191,"y":219.99999618530273,"wires":[["1676bab8.a1d3cd"]]},{"id":"1676bab8.a1d3cd","type":"switch","z":"33955f6.c992ca","name":"","property":"phone","propertyType":"msg","rules":[{"t":"eq","v":"+336XXXXXXXX","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":870,"y":220,"wires":[["87d0049d.342a"],["a2398378.0dd378"]]},{"id":"5674a475.edba6c","type":"debug","z":"33955f6.c992ca","name":"téléphone non autorisé","active":true,"console":"false","complete":"payload","x":1280,"y":160,"wires":[]},{"id":"a2398378.0dd378","type":"function","z":"33955f6.c992ca","name":"Phone KO","func":"msg.payload = \"ATTENTION téléphone non autorisé : \" + msg.phone\nreturn msg;","outputs":1,"noerr":0,"x":1066.6667404174805,"y":160.00003623962402,"wires":[["5674a475.edba6c"]]},{"id":"87d0049d.342a","type":"switch","z":"33955f6.c992ca","name":"Switch Command","property":"payload","propertyType":"msg","rules":[{"t":"regex","v":"Alarm On","vt":"str","case":true},{"t":"regex","v":"Alarm Off","vt":"str","case":true},{"t":"else"}],"checkall":"false","outputs":3,"x":310,"y":420,"wires":[["75de2598.4f32e4"],["ec736e14.cfc998"],["28c24b44.a1afc4"]]},{"id":"28c24b44.a1afc4","type":"function","z":"33955f6.c992ca","name":"Otherwize","func":"msg.payload = \"Commande non reconnue : \" + msg.payload\nreturn msg;","outputs":1,"noerr":0,"x":1120,"y":440,"wires":[["c363eb1.3664318"]]},{"id":"75de2598.4f32e4","type":"http request","z":"33955f6.c992ca","name":"Run Alarm On scene","method":"GET","ret":"txt","url":"http://login:password@<IP-BOX-FIBARI>/api/sceneControl?id=<IDSCENEALARMON>&action=start&","tls":"","x":620.1700057983398,"y":344.64996337890625,"wires":[["c433c5a.9d196b8"]]},{"id":"ec736e14.cfc998","type":"http request","z":"33955f6.c992ca","name":"Run Alarm Off scene","method":"GET","ret":"txt","url":"http://login:password@<IP-BOX-FIBARI>/api/sceneControl?id=<IDSCENEALARMOFF>&action=start&","tls":"","x":619.5033874511719,"y":385.173828125,"wires":[["623e54b6.8659dc"]]},{"id":"623e54b6.8659dc","type":"switch","z":"33955f6.c992ca","name":"Check result","property":"statusCode","propertyType":"msg","rules":[{"t":"cont","v":"202","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":830.1699523925781,"y":384.64996337890625,"wires":[["38f5bcda.4056cc"],["b0d6790a.869bd"]]},{"id":"b0d6790a.869bd","type":"function","z":"33955f6.c992ca","name":"KO","func":"msg.payload = \"Problème pour désactiver l'alarme\"\nreturn msg;","outputs":1,"noerr":0,"x":1130,"y":400,"wires":[["c363eb1.3664318"]]},{"id":"38f5bcda.4056cc","type":"function","z":"33955f6.c992ca","name":"OK","func":"msg.payload = \"Alarme désactivée\"\nreturn msg;","outputs":1,"noerr":0,"x":1129.9999389648438,"y":366,"wires":[["c363eb1.3664318"]]},{"id":"c433c5a.9d196b8","type":"switch","z":"33955f6.c992ca","name":"Check result","property":"statusCode","propertyType":"msg","rules":[{"t":"cont","v":"202","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":830.1699523925781,"y":344.64996337890625,"wires":[["5c678e8d.374b"],["7ec6745b.1c536c"]]},{"id":"7ec6745b.1c536c","type":"function","z":"33955f6.c992ca","name":"KO","func":"msg.payload = \"Problème pour enclencher l'alarme\"\nreturn msg;","outputs":1,"noerr":0,"x":1128.9999389648438,"y":314,"wires":[["c363eb1.3664318"]]},{"id":"5c678e8d.374b","type":"function","z":"33955f6.c992ca","name":"OK","func":"msg.payload = \"Alarme enclenchée\"\nreturn msg;","outputs":1,"noerr":0,"x":1130,"y":280,"wires":[["c363eb1.3664318"]]},{"id":"c363eb1.3664318","type":"http request","z":"33955f6.c992ca","name":"send CFM by SMS","method":"GET","ret":"txt","url":"http://<IP-RASPBERRY>:1880/sendsms?phone=06XXXXXXXX&msg={{payload}}","tls":"","x":1370,"y":440,"wires":[[]]},{"id":"24f63cb9.fb45e4","type":"comment","z":"33955f6.c992ca","name":"Contrôle de sécurité","info":"","x":830,"y":180,"wires":[]}]
3ème flow : météo

Dans ce script, nous allons voir comment obtenir  la météo du jour ou savoir si la pluie va tomber dans la prochaine heure. Ce cas d’usage permet d’expliquer surtout la facilité de programmation permise par nodered.

  • Pour récupérer la météo du jour nous allons utiliser le service exposé sur le site : prevision-meteo.ch
  • Pour récupérer la météo dans la prochaine heure nous allons appeler le service de météo france qui indique sur une averse est à prévoir dans la prochaine heure.

Complétons à présent le « flow » Node-RED pour y ajouter les commandes Météo :

Lorsque le service météo a retourné sa réponse, celle-ci est analysée. Le script vérifie le code retour et renvoie un SMS indiquant si la commande a été bien exécutée.

  • Noeud « conversion » : Il transforme le flux json retourné par le webservice, en objet. Ceci permet de récupérer la réponse et de la copier dans la variable « payload ».

Autre petit détail, pour obtenir la météo horaire nous devons indiquer le code insee de la localité. J’ai limité le service sur les arrondissements de Paris, mais vous pourrez adapter cette partie.

Le source du script peut être copié ici :

[{"id":"50cd262c.63f7c","type":"comment","z":"b2e18762.5add88","name":"SMS Inbox","info":"","x":120,"y":120,"wires":[]},{"id":"bf3095a2.b9e43","type":"watch","z":"b2e18762.5add88","name":"SMS Inbox","files":"/var/spool/gammu/inbox","recursive":"","x":120,"y":240,"wires":[["5a2cb8a1.f7b0e8"]]},{"id":"5a2cb8a1.f7b0e8","type":"change","z":"b2e18762.5add88","name":"get filename","rules":[{"t":"set","p":"filename","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":310.5000343322754,"y":239.66666793823242,"wires":[["ca671753.1dd8a8"]]},{"id":"ca671753.1dd8a8","type":"file in","z":"b2e18762.5add88","name":"get SMS","filename":"","format":"utf8","chunk":false,"sendError":false,"x":480,"y":240,"wires":[["40fce8e1.c9278"]]},{"id":"40fce8e1.c9278","type":"function","z":"b2e18762.5add88","name":"extract content","func":"msg.phone = msg.filename.match(/(\\+[0-9]*)/)[1];\ndelete msg.filename;\ndelete msg.topic;\ndelete msg.file;\ndelete msg.type;\nreturn msg;","outputs":1,"noerr":0,"x":653.9999732971191,"y":239.99999618530273,"wires":[["be3ee05d.af9be8"]]},{"id":"be3ee05d.af9be8","type":"switch","z":"b2e18762.5add88","name":"","property":"phone","propertyType":"msg","rules":[{"t":"eq","v":"+336XXXXXXXX","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":830,"y":240,"wires":[["1b6b9b57.1e9425"],["787b5ad.6b24324"]]},{"id":"100ec260.cd9a2e","type":"debug","z":"b2e18762.5add88","name":"téléphone non autorisé","active":true,"console":"false","complete":"payload","x":1240,"y":180,"wires":[]},{"id":"787b5ad.6b24324","type":"function","z":"b2e18762.5add88","name":"Phone KO","func":"msg.payload = \"ATTENTION téléphone non autorisé : \" + msg.phone\nreturn msg;","outputs":1,"noerr":0,"x":1026.6667404174805,"y":180.00003623962402,"wires":[["100ec260.cd9a2e"]]},{"id":"1b6b9b57.1e9425","type":"switch","z":"b2e18762.5add88","name":"Switch Command","property":"payload","propertyType":"msg","rules":[{"t":"regex","v":"Alarm On","vt":"str","case":true},{"t":"regex","v":"Alarm Off","vt":"str","case":true},{"t":"regex","v":"Météo","vt":"str","case":true},{"t":"else"}],"checkall":"false","outputs":4,"x":270,"y":440,"wires":[["880c878c.f04c5"],["8006e11f.a9dd9"],["9071e7a.4589818"],["b3d68688.812948"]]},{"id":"b3d68688.812948","type":"function","z":"b2e18762.5add88","name":"Otherwize","func":"msg.payload = \"Commande non reconnue : \" + msg.payload\nreturn msg;","outputs":1,"noerr":0,"x":1080,"y":460,"wires":[["ad83fbed.8de58"]]},{"id":"880c878c.f04c5","type":"http request","z":"b2e18762.5add88","name":"Run Alarm On scene","method":"GET","ret":"txt","url":"http://login:password@<IP-BOX-FIBARI>/api/sceneControl?id=<IDSCENEALARMON>&action=start&","tls":"","x":580.1700057983398,"y":364.64996337890625,"wires":[["8c1ed233.e6b128"]]},{"id":"8006e11f.a9dd9","type":"http request","z":"b2e18762.5add88","name":"Run Alarm Off scene","method":"GET","ret":"txt","url":"http://login:password@<IP-BOX-FIBARI>/api/sceneControl?id=<IDSCENEALARMOFF>&action=start&","tls":"","x":579.5033874511719,"y":405.173828125,"wires":[["2d5e5e90.00d322"]]},{"id":"2d5e5e90.00d322","type":"switch","z":"b2e18762.5add88","name":"Check result","property":"statusCode","propertyType":"msg","rules":[{"t":"cont","v":"202","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":790.1699523925781,"y":404.64996337890625,"wires":[["494fd86f.2aebc8"],["3f226914.78055e"]]},{"id":"3f226914.78055e","type":"function","z":"b2e18762.5add88","name":"KO","func":"msg.payload = \"Problème pour désactiver l'alarme\"\nreturn msg;","outputs":1,"noerr":0,"x":1090,"y":420,"wires":[["ad83fbed.8de58"]]},{"id":"494fd86f.2aebc8","type":"function","z":"b2e18762.5add88","name":"OK","func":"msg.payload = \"Alarme désactivée\"\nreturn msg;","outputs":1,"noerr":0,"x":1089.9999389648438,"y":386,"wires":[["ad83fbed.8de58"]]},{"id":"8c1ed233.e6b128","type":"switch","z":"b2e18762.5add88","name":"Check result","property":"statusCode","propertyType":"msg","rules":[{"t":"cont","v":"202","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":790.1699523925781,"y":364.64996337890625,"wires":[["a82b7165.b766"],["2c6a167d.cd6842"]]},{"id":"2c6a167d.cd6842","type":"function","z":"b2e18762.5add88","name":"KO","func":"msg.payload = \"Problème pour enclencher l'alarme\"\nreturn msg;","outputs":1,"noerr":0,"x":1088.9999389648438,"y":334,"wires":[["ad83fbed.8de58"]]},{"id":"a82b7165.b766","type":"function","z":"b2e18762.5add88","name":"OK","func":"msg.payload = \"Alarme enclenchée\"\nreturn msg;","outputs":1,"noerr":0,"x":1090,"y":300,"wires":[["ad83fbed.8de58"]]},{"id":"ad83fbed.8de58","type":"http request","z":"b2e18762.5add88","name":"send CFM by SMS","method":"GET","ret":"txt","url":"http://<IP-RASPBERRY>:1880/sendsms?phone=06XXXXXXXX&msg={{payload}}","tls":"","x":1330,"y":460,"wires":[[]]},{"id":"b66baf85.9a36d8","type":"exec","z":"b2e18762.5add88","command":"","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"Exec curl","x":620,"y":640,"wires":[["e3ea76e6.aae42"],[],[]]},{"id":"1cf090e.d8eb96f","type":"function","z":"b2e18762.5add88","name":"OK","func":"if(msg.payload.isAvailable===true) {\n arrayLength = msg.payload.niveauPluieText.length;\n retour = \"\";\n for(var i=0;i<arrayLength;i++)\n retour = retour + msg.payload.niveauPluieText[i] + \"\\n\";\n msg.payload = retour;\n}else{\n msg.payload = \"Pas de météo sur cette localité\";\n}\nreturn msg","outputs":1,"noerr":0,"x":1091.3333740234375,"y":617.0000305175781,"wires":[["ad83fbed.8de58"]]},{"id":"8929ea71.3590f8","type":"json","z":"b2e18762.5add88","name":"conversion","pretty":false,"x":946,"y":617,"wires":[["1cf090e.d8eb96f"]]},{"id":"9071e7a.4589818","type":"string","z":"b2e18762.5add88","name":"","methods":[{"name":"delLeftMost","params":[{"type":"str","value":"Météo"}]},{"name":"trim","params":[]}],"prop":"payload","propout":"payload","object":"msg","objectout":"msg","x":450,"y":500,"wires":[["34e7c869.2d27c8"]]},{"id":"34e7c869.2d27c8","type":"function","z":"b2e18762.5add88","name":"set code insee","func":"if (msg.payload===null || msg.payload.length===0) msg.codeinsee=\"751000\";\nelse msg.codeinsee=\"751\"+msg.payload+\"0\";\nreturn msg;","outputs":1,"noerr":0,"x":600,"y":500,"wires":[["950a0cea.e7a8c8"]]},{"id":"6d142e48.e90f7","type":"template","z":"b2e18762.5add88","name":"Prepare command","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"curl -s \"http://www.meteofrance.com/mf3-rpc-portlet/rest/pluie/{{codeinsee}}\"","output":"str","x":446,"y":640,"wires":[["b66baf85.9a36d8"]]},{"id":"e3ea76e6.aae42","type":"switch","z":"b2e18762.5add88","name":"Check result","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"niveauPluieText","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":776,"y":644,"wires":[["8929ea71.3590f8"],["9e1075f.a9b4988"]]},{"id":"9e1075f.a9b4988","type":"function","z":"b2e18762.5add88","name":"KO","func":"msg.payload = \"Service météo horaire inaccessible\";\nreturn msg","outputs":1,"noerr":0,"x":1089.3333740234375,"y":651.0000305175781,"wires":[["ad83fbed.8de58"]]},{"id":"950a0cea.e7a8c8","type":"switch","z":"b2e18762.5add88","name":"Switch météo","property":"codeinsee","propertyType":"msg","rules":[{"t":"eq","v":"751000","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":214,"y":602,"wires":[["192529b8.9bed3e"],["6d142e48.e90f7"]]},{"id":"192529b8.9bed3e","type":"template","z":"b2e18762.5add88","name":"Prepare command","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"wget http://www.prevision-meteo.ch/services/json/PARIS -q -O -","output":"str","x":449,"y":576,"wires":[["cedd8f9d.3b8b68"]]},{"id":"cedd8f9d.3b8b68","type":"exec","z":"b2e18762.5add88","command":"","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"Exec curl","x":621,"y":575,"wires":[["f9c1938b.829068"],[],[]]},{"id":"f9c1938b.829068","type":"switch","z":"b2e18762.5add88","name":"Check result","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"Please specify a valid city or a coordinate","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":780,"y":542,"wires":[["5c06d77d.57dd38"],["fcf881d6.82ecf"]]},{"id":"5c06d77d.57dd38","type":"function","z":"b2e18762.5add88","name":"KO","func":"msg.payload = \"Service météo inaccessible\";\nreturn msg","outputs":1,"noerr":0,"x":1093.3333740234375,"y":535.0000305175781,"wires":[["ad83fbed.8de58"]]},{"id":"18d2bb8d.5a204c","type":"function","z":"b2e18762.5add88","name":"OK","func":"today=msg.payload.fcst_day_0.day_long + \", il fait \" + msg.payload.current_condition.tmp + \" degrés et les conditions sont : \" + msg.payload.current_condition.condition + \".\\n\";\ntomorrow=msg.payload.fcst_day_1.day_long + \", la température sera entre \" + msg.payload.fcst_day_1.tmin + \" degrés et \" + msg.payload.fcst_day_1.tmax + \" degrés.\\nLes conditions seront : \" + msg.payload.fcst_day_1.condition + \".\";\n\nmsg.payload = today+tomorrow;\n\nreturn msg","outputs":1,"noerr":0,"x":1093.3333740234375,"y":570.0000305175781,"wires":[["ad83fbed.8de58"]]},{"id":"fcf881d6.82ecf","type":"json","z":"b2e18762.5add88","name":"conversion","pretty":false,"x":947,"y":570,"wires":[["18d2bb8d.5a204c"]]},{"id":"f62639b7.baacd8","type":"comment","z":"b2e18762.5add88","name":"Contrôle de sécurité","info":"","x":790,"y":200,"wires":[]},{"id":"7a9cc079.a13808","type":"comment","z":"b2e18762.5add88","name":"Sans paramètre météo du jour","info":"","x":180,"y":520,"wires":[]},{"id":"c639f95b.d1f98","type":"comment","z":"b2e18762.5add88","name":"Sinon météo dans l'heure pour l'arrondissement indiqué","info":"","x":260,"y":680,"wires":[]}]

Cette courte vidéo vous montre un exemple d’envoi de SMS pour connaître la météo dans la prochaine heure dans le 1er arrondissement. Vous pouvez constater que l’exécution du processus sollicite la CPU du RPi à hauteur de 35%. Le RPi Zero est donc à ce stade tout à fait suffisant pour traiter ce type de requête.

Conclusion

Objectif atteint ! Grâce à ces nouvelles capacités, votre mobile GSM bien que rudimentaire, vous permet d’appeler des services ouverts sur internet ou de communiquer avec votre maison connectée. Nous avons vu quelques exemples, mais vous comprenez à présent, qu’il est possible d’aller beaucoup plus loin.

J’espère que cet article vous a permis de découvrir le potentiel du Raspberry Pi et de la solution logicielle Node-RED. J’espère surtout que cela vous donnera envie d’expérimenter l’internet des objets (IoT).

The post Peut-on ajouter des services intelligents à un mobile GSM ? appeared first on Domotique Info.

Contrôlez votre domotique Enocean avec une Logitech Harmony…

$
0
0

Il y a quelques mois, l’assistant vocal « Google Home » a trouvé sa place dans notre maison pour interagir avec certains de nos objets connectés. L’occasion de revenir sur mon Hub Logitech Harmony que j’utilise depuis plusieurs années avec un convertisseur IR/RF Enocean… et cette fois la possibilité d’interagir avec mon assistant vocal « Google Home ».

Si je possède également une passerelle domotique « WizzBox » Enocean, vous pourrez bien sur utiliser les mêmes interactions sans nécessairement posséder une box domotique.

Voici ce dont j’utilise pour mes besoins :

Pour résumer mon installation, c’est le convertisseur RF/IR  qui transcode chaque signal Infrarouge de ma télécommande Logitech, en signal radio Enocean. Le FIW65 d’Eltako, possède de 24 canaux EnOcean dans sa mémoire, s’alimente directement en 230V, et il est fourni avec tous les accessoires pour l’encastrer.

Le convertisseur FIW55 proposé par Eltako est vraiment simple à mettre en place et devient vite le complément idéal de votre installation domotique EnOcean pour gérer quelques scènes et actions directes sur l’éclairage et les volets…

Et quand vous possédez un Hub Logitech Harmony, vous pouvez lui ajouter une connectivité supplémentaire via différents services IFTTT

Sachez également que si comme moi, vous possédez une Freebox révolution, il existe un petit dongle IR USB qui permet de le rendre compatible avec votre télécommande IR Universelle ou comme ci-dessus avec le Hub Logitech Harmony.

Comment fonctionne le convertisseur Infrarouge/Enocean ?

Que vous possédiez une télécommande ou Hub Logitech Harmony, à chacun son application. Dans mon cas, j’ai eu besoin d’installer l’App Harmony sur mon smartphone et ajouter la console d’éclairage Eltako.

Cette console va permettre de récupérer les canaux associés au convertisseur FIW55, et d’y attribuer les boutons et actions. Exemple, Allumer les « Spots Salon » avec la touche 1 de ma télécommande Logitech et les éteindre avec la touche 2.

L’apprentissage d’une touche de la télécommande à un de vos actionneurs Radio EnOcean devient très simple, il suffit de placer votre module en mode association et d’appuyer sur la touche de votre choix.

Jusqu’à là, vous n’avez besoin de rien d’autre pour contrôler vos périphériques Enocean, mais nous allons voir que le Hub Logitech permet d’aller plus loin grâce à sa connectivité Wifi, et sa compatibilité IFTTT.

C’est quoi IFTTT ?

IFTTT est un service web gratuit permettant à ses utilisateurs de créer des chaînes d’instruction simples appelées applets. Une applet est déclenchée par des changements qui interviennent au sein de services web tels que GmailFacebookInstagram ou Pinterest. Par exemple une applet peut envoyer un e-mail si l’utilisateur tweet avec un hashtag donné, ou encore sauvegarder les photos publiées sur Facebook dans un service de stockage comme dropbox, ou bien s’envoyer un mail s’il pleut demain.

IFTTT est un sigle pour IF This Then That (Si Ceci Alors Cela).

Ce qui va nous permettre par exemple, de traduire une condition IFTTT comme suit : Si j’active mon alarme « Somfy Protect » Alors demander au Hub Logitech d’envoyer le code IR assigné au scénario Enocean « Fermeture des volets ».

OK Google, ferme les volets…

Vous avez pu voir quelques possibilités de la puissance d’IFTTT et sa multitude de services ou Applets compatibles. Voici comment je peux désormais contrôler ma domotique Enocean à la voix, en associant le Hub Logitech à mon Google Home…

Il suffit de créer un Applet pour chaque action, comme ci-dessus pour « Fermer les volets » : if (Si) je dis « Fermer les volets » then (alors) lancer la commande associée à mon Hub Logitech.

A vous d’imaginer tout ce que va vous permettre ce convertisseur Infrarouge / Enocean, que ce soit tout simplement avec une télécommande IR ou plus encore avec Hub Logitech connecté en interaction avec la puissance d’IFTTT…

The post Contrôlez votre domotique Enocean avec une Logitech Harmony… appeared first on Domotique Info.

X-Display, une commande murale avec afficheur pour votre IPX800v4

$
0
0

Encore un petit nouveau chez GCE Electronics. Au rythme de plusieurs nouveaux équipements depuis deux ans, nous avons à ce jour un bel écosystème GCE-Electronics répondant à presque toutes les problématiques domotique de l’habitation. Nous allons aujourd’hui nous attarder sur un dispositif d’interface homme/machine très apprécié des technophiles de la maison connectée et nommé X-Display. Le X-Display est une commande murale équipée d’un afficheur de petite taille, permettant la mise en place d’un menu de commande ou l’affichage d’indicateurs de confort. Il est possible de mettre en oeuvre jusqu’à 32 fonctions depuis cette commande murale, et de disposer de 6 X-display par IPX800v4.

x-display #gce

On le sait bien, trouver et sortir son smartphone, lancer l’application dédiée et contrôler ses équipements reste une chaîne d’actions longues adaptée lorsqu’on a le temps ou que l’on est pas physiquement chez soi. La commande murale à cet avantage d’être toujours au même endroit, disponible en permanence et accessible de tous le monde à la maison. C’est bien ce qui fait la différence pour tous les occupants.

Loin d’être un gadget, cette commande murale prendra en charge l’essentiel des fonctions utiles et élémentaires de chaque pièce. Deux fois moins cher qu’une tablette murale de base, plus discret et immédiatement fonctionnelle, ce dispositif à l’allure d’une commande murale habituelle dépasse la simplicité d’autres solutions.

Découvrons donc cet appareil augmentant la réalité fonctionnelle de l’IPX800v4.

1 – Description

  • Couleur : Noir ou blanc
  • Alimentation 12V continu
  • Port d’extension (paire + et –) pour l’IPX800V4 (câble non fourni)
  • Consommation de 0.5W
  • 32 écrans configurables
  • 9 types de configuration : Thermostat, Interrupteur, Maison, Volet roulant, Heure, Veilleuse, Température, Humidité et Luminosité
  • Réglage et retour d’état d’une température de consigne
  • Commande d’entrée et de sortie virtuelles
  • Commande de volets roulants
  • Affichage de température, de d’humidité ou de luminosité
  • Extinction automatique de l’écran réglable (de 0 à 60 minutes)
  • Garantie 2 ans

1.1 – Déballage

Le X-Display est vraiment très fin.

1.2 – Les 9 types de fonctions

Température : Une fonction qui permet d’afficher simplement une température. Vous pouvez l’associer à une entrée analogique, une X-THL (ou SHT-X3), un capteur analogique Enocean ou une entrée analogique virtuelle.

Humidité : Une fonction qui permet d’afficher simplement une humidité. Vous pouvez l’associer à une entrée analogique, une X-THL, un capteur analogique Enocean ou une entrée analogique virtuelle.

Luminosité : Une fonction qui permet d’afficher simplement une luminosité. Vous pouvez l’associer à une entrée analogique, une X-THL, un capteur analogique Enocean ou une entrée analogique virtuelle.

Thermostat : Qui comme son nom l’indique, peut être associé à un thermostat et ainsi afficher la température mesurée et la température de consigne. La température de consigne est réglable sur le X-Display.

Interrupteur : L’interrupteur peut être associé à une entrée ou une sortie virtuelle et être utilisé dans les scénarios afin de commander une lampe, une prise et plein d’autres choses…

Volet : Un volet roulant commandé par une extension X-4VR est 100% pilotable par le X-Display avec un retour d’état proportionnel de la position du volet.
Maison : La fonction maison a été pensée pour une utilisation en gestion d’alarme. Elle peut être associée à une entrée ou une sortie virtuelle qui l’a rend très utile et flexible.
x-display vue dateheure

Date et heure : Affichage de l’heure et de la date du jour

x-display vue veilleuse Veilleuse : En cas d’utilisation dans la chambre de votre enfant, vous pouvez utiliser la fonction veilleuse. Un écran simple unicolore qui balaie tout le spectre de lumière.

2 – Installation

N’oubliez pas que la récente mise en œuvre du WiKi GCE permet de disposer d’une base de connaissances très complète des produits GCE-Electronics.

2.1 – Mise en place

Totalement adapté aux boîtiers encastrés de Ø67 mm x 40 ou 50 mm, il lui faudra réserver une paire pour son alimentation 12v et une paire pour le bus de liaison EBX. La fixation au boitier encastré se fera comme tous les dispositifs encastrables avec les deux vis de serrage gauche et droite permettant de fixer à niveau le dispositif encastrable, ou en mettant en place des fixations griffes (Il faut savoir que pour les socles de prise de courant, les fixations à griffes sont interdites depuis 2004. La norme NF C 15-100 stipule en effet que “l’appareillage ne doit pas se séparer de son support et rendre accessibles les bornes de connexions électriques.”)

2.2 – Câblage du X-Displayx-display jumper

  • J2 correspondant au connecteur d’alimentation 12v DC (-/+).
  • J3 correspondant au connecteur de liaison bus.

 connexion x-display

 x-display installation

2.2 – Rappel câblage du bus EBX

Il est important de noter qu’il ne faut pas déployer/câbler les périphériques esclaves en étoile sur la connexion maître afin d’éviter les collisions sur le bus EBX.
Il est conseillé de connecter les périphériques en cascade parallèle (chaîne), simplement en repiquant le bus d’un nœud esclave à l’autres.
Pour cela, il est pertinent d’utiliser du câble Ethernet (4 paires torsadées blindées Cat. 5e ou plus) pour permettre l’aller-retour du bus dans le cas de nœud éloigné/isolé.

Câblage en cascade parallèle

Pour le périphérique terminal 2 paires torsadées suffisent de type Unitronic LIYCY 4×0.25mm².

2.3 – Ajouter un X-Display à votre IPX800v4

Dans la rubrique des périphériques choisissez [X-Display] :

périphérique x-display

ajouter x-display

2.4 – Mise en veille et sensibilité

Pour éviter les allumages intempestifs, les difficultés à naviguer dans le menu ou d’autres désagrément, vous aller devoir régler la sensibilité des touches une fois le cache appliqué sur la face avant. Pour obtenir une sensibilité adéquate, il va falloir y aller par étapes.

Aller directement à environ les 3/4 des sliders (glissières à curseurs) puis avec le bouton [+] ajuster jusqu’à ne plus avoir de difficulté de sensibilité. Plusieurs étapes seront nécessaire afin d’affiner le plus possible les réglages. J’ai appliqué une autre technique probablement plus rapide qui consiste simplement à positionner les glissières à 100% et diminuez avec le [-] jusqu’à ce que les comportements erratiques disparaissent (Trop sensible le XD sort de veille seul, et effectue des boucles d’affichage du menu).

Comme le stipule la documentation constructeur, il faut veiller à limiter l’influence électromagnétique auprès des touches sensibles. Eviter les fils derrière, éviter les modules dans l’encastré ou tout autres perturbations de champ magnétique au environ du X-Display. J’ai fait plusieurs tests en infligeant des contraintes électromagnétique et j’ai constaté la difficulté à calibrer la sensibilité lorsqu’une source de perturbation était à proximité immédiate.

3 – Exemples d’usages

3.1 – Température, humidité et luminosité [SHT-x3]

Dans cette mise en oeuvre nous allons permettre la remontée d’affichage des indicateurs du capteur SHT-X3 vers le X-display. Dans ce cas d’usage le firmware IPX800_V4.00.35_B8 minimum doit-être appliqué. En effet la version stable IPX800_V4.00.34 (La 35 est disponible au moment de l’article) est préconisée pour le X-Display mais la bêta B8 corrige une erreur d’affichage de la valeur de l’humidité relative avec le SGT-X3. La version 4.00.36 devrait être disponible bientôt…

Pour ce lab nous allons avoir besoin de mettre en oeuvre :

X-display et SHT-x3

3.1.1 Configuration IPX800V4

Dans la rubrique des périphériques choisissez [Analogique] :

périphérique analogique

Puis paramétrez votre SHT-X3 en fonction des entrées analogiques :

entrées analogiques

3.2 – Commande d’un actionneur EnOcean

Dans ce cas d’usage, nous allons piloter une lampe depuis un module EnOcean avec la fonction interrupteur du le X-Display.

3.2.1 Configuration IPX800V4

Une fois le module appairé à l’IPX800V4 équipé de l’extension X-Eno, créez une scène comme celle-ci dessous afin de l’utiliser depuis le XD alias X-Display :

Puis faites pointer votre interrupteur XD sur l’entrée virtuelle en question :

mapper interrupteur x-display

Démonstration de la fonction interrupteur :

4 – Conclusion

L’essentiel est concentré dans une interface homme/machine de la taille d’un interrupteur. Etant à la base plutôt fan des produits GCE-Electronics, je suis à chaque fois surpris du potentiel de l’éco-système (gamme produits) de la marque. De mon point de vue, c’est clair je conseille ce produit.

La perfection est atteinte, non pas lorsqu’il n’y a plus rien à ajouter, mais lorsqu’il n’y a plus rien à retirer.

Antoine de Saint-Exupéry


Les [+]
  • Vraiment pas cher,
  • Sobre et discret,
  • 32 possibilités de menu,
  • Simplicité de mise en oeuvre,
  • Ultra plat.

Les [-]
  • Compatibilité IPX800v4 seulement.


Merci à l’équipe GCE-Electronics

GCE Logo

pour l’appui technique durant cet article et merci à notre partenaire

Pour la mise à disposition de l’équipement.

The post X-Display, une commande murale avec afficheur pour votre IPX800v4 appeared first on Domotique Info.

Test de la serrure connectée NUKI

$
0
0

Après la serrure connectée de Somfy que j’utilise au quotidien, j’ai pu tester pendant quelques semaines la Smart Lock de Nuki, un fabricant Autrichien basé à Graz. Cette serrure intelligente possède une connexion bluetooth ou internet permanente qui permet d’ouvrir et de verrouiller la porte d’entrée grâce à son smartphone sans plus qu’aucune clé ne soit nécessaire. Via la Nuki app, il est également possible de configurer l’accès de façon continue pour les autres résidents de la maison, ou de façon temporaire pour ses amis, ses voisins et pourquoi pas le livreur.

La serrure Nuki Smart Lock se fixe sur la serrure de la porte d’entrée intérieure, sans intervention ou modification sur celle-ci, et la transforme en serrure intelligente. Une fois fixé sur la serrure et sa clé, le moteur intégré va pouvoir tourner la clef de la porte à la place de l’habitant. Vous pourrez alors déverrouiller la serrure grâce à votre smartphone et l’app Nuki ou donner un accés temporaire ou définitif à toutes les personnes que vous souhaitez. Nuki fonctionne aussi bien en Bluetooth 4.0, ou en WIFI grâce au bridge, il suffit d’installer l’application. Et si vous n’avez pas votre smartphone sur vous, Nuki propose le porte-clés Nuki Fob pour accèder à votre domicile via une simple pression du bouton.

La serrure connectée Nuki Smart Lock est simple à installer et compatible avec tous les cylindres de serrure européens. Voici plus en détail son installation, configuration et utilisation…

Le kit Nuki Smart Lock

Kit Nuki 2

Le kit Nuki Smart Lock est composé d’une serrure avec ses accessoires, et d’un Bridge pour la connecter à internet.

Installation du Nuki Smart Lock

Il ne faut que 3 petites minutes pour installer la SmartLock Nuki sur votre porte, elle s’adapte à la plupart des serrures dont voici ci-dessous le détail.

La SmartLock s’installe sur la partie intérieure de votre porte au-dessus du cylindre de fermeture. Deux supports différents sont disponibles pour fixer la serrure, soit calée sur celui-ci, soit collée à la porte autour du cylindre.

Commencez par coller* la plaque correspondante à votre serrure, et placez le boitier par dessus la clé jusqu’à entendre le petit clic de fixation. Le moteur se charge du reste, il est assez puissant pour déverrouiller ou verrouiller votre porte sans problème. Le gros bouton de la serrure permet à tout moment d’ouvrir ou fermer la porte sans avoir accès à la clé, une simple rotation dans un sens ou l’autre , et c’est fait.

*Je vous conseille de fixer la plaque avec quelques vis, ce sera toujours plus efficace que le double face.

Il ne reste plus qu’à installer l’application Nuki sur votre smartphone, disponible gratuitement sur les stores Apple et Android. Elle va vous permettre de configurer votre serrure SmartLock, et de la piloter en local via la connexion Bluetooth, ou à distance et avec plus de confort, en ajoutant la connectivité internet via le bridge Wifi.

Comme avec tous les objets connectés, vous n’avez qu’à suivre les étapes indiqués sur l’écran de votre smartphone et vous laisser guider. Toutes les étapes sont bien expliquées sur la vidéo ci-dessus, mais je vous conseille de prévoir une rallonge électrique pour avoir le bridge à portée de main quand vous devrez appuyer sur les deux boutons en même temps… étape nécessaire pour les associer.

Utilisation du SmartLock Nuki

L’application Nuki installée sur votre smartphone Android ou iOS, vous allez pouvoir contrôler votre serrure SmartLock en bluetooth ou wifi si vous lui avez associé le bridge.

Directement via l’écran Nuki, vous allez pouvoir déverrouiller ou verrouiller la serrure électronique, tout simplement en glissant votre doigt, et avec la fonction « Lock’ And’ Go » pour verrouiller la porte derrière vous, juste en confirmant l’action directement sur l’écran ou en appuyant sur le bouton de la serrure.

Et si vous avez activé le déverrouillage automatique « Auto Unlock », la serrure Smart Lock reconnaît automatiquement votre smartphone pour vous ouvrir la porte sans effort ni contrainte. Ça fonctionne grâce à l’alliance du GPS, de la clôture géographique Geofence et de Bluetooth. Le GPS sur votre Smartphone reconnaît Nuki lorsque vous quittez votre domicile, et quand vous êtes de nouveau en approche et que vous pénétrez dans une clôture géographique (Geofence) à proximité de la serrure Smart Lock, l’App de Nuki se met à la recherche de votre Smart Lock via Bluetooth. Si vous pénétrez dans la clôture Geofence dans un délai de maximum 20 minutes, une connexion Bluetooth peut être établie à votre Smart Lock, votre porte se déverrouillera automatiquement.

L’application gère également les autorisations d’accès pour d’autres utilisateurs, famille, livreur, employé, en paramétrant les autorisations que vous souhaitez leur attribuer, horaires, journées, … et vérifiez les accès à votre serrure.

Si vous avez opté pour la passerelle Nuki Bridge accorde un accès en ligne intégral à votre Nuki Smart Lock, ce qui vous permet de gérer et surveiller la serrure à distance avec l’App de Nuki, à tout moment et de partout. Que vous ayez besoin d’ouvrir la porte à un livreur, à un membre de la famille, ou encore besoin d’intégrer la serrure SmartLock à votre solution domotique, le bridge sera le complément idéal.

Intégration et API

Nuki propose des interfaces ouvertes pour l’intégration dans des domaines d’application différents, elles permettront d’interagir avec votre serrure, Google Assistant, Alexa, uki Web, IFTTT, etc… et même HomeKit d’Apple.

Avec l’application de Nuki Web et de Nuki Web API, la Smart Lock peut être gérée directement via le Web. La gestion facile des utilisateurs et la gestion des fonctions verrouillage/déverrouillage font que Nuki Web API est particulièrement intéressante pour l’utilisation en entreprise.

Connectez la Smart Lock à l’IFTTT avec plus de 360 Apps et appareils tels que Facebook, Twitter, Google Drive, Philips Hue, Amazon Alexa, Nest. Le canal IFTTT de Nuki propose des Applets recommandées ou la possibilité de créer vos propres Applets.

L’API Bluetooth permet la communication directe avec la Smart Lock via Bluetooth Low Energy (BLE).

Mon avis sur la SmartLock de Nuki

C’est la troisième serrure connectée que je teste, et je dois bien avouer que cette SmartLock de Nuki et vraiment très simple à installer et à utiliser. Pensez toutefois à commander le bridge wifi pour lui donner une connectivité sans faille et surtout pour l’utiliser avec des services IFTTT ou Google Home par exemple.

Un moyen simple de sécuriser votre porte et d’en donner l’accès aux membres de la famille et pourquoi pas à votre livreur quand vous n’êtes pas chez vous, sous condition de lui faire confiance 😉

Couplée à un système d’alarme comme le Somfy One que j’ai testé dernièrement, votre serrure SmartLock sera le complément idéal pour sécuriser votre porte d’entrée ou de bureau. Le fabricant annonce environ 8 mois d’autonomie (chose que je n’ai pas pu vérifier).

Côté tarif, il vous en coûtera 229€ pour la Smart Lock, plus 99€ si vous lui couplez le bridge wifi. Autant l’acheter sous forme de pack que vous trouverez à moins de 300€ avec parfois même des réductions ou offres spéciales. A noter qu’il existe également une petite télécommande bluetooth (Nuki Fob) que je n’ai pas testé mais qui permet de verrouiller ou déverrouiller la serrure sans avoir un smartphone sur soi, son prix est de 39€.

The post Test de la serrure connectée NUKI appeared first on Domotique Info.

Eedomus : Support du dongle Zigate

$
0
0

J’ai commandé il y a quelques semaines un dongle ZigBee développé par un passionné Français, un projet dénommé Zigate que vous pourrez découvrir via son site ou blog « Faire soi-même« . Et vu que la nouvelle mise à jour de la box domotique « Eedomus » supporte désormais ce dongle Zigate, j’ai décidé de vous faire un petit tuto rapide…

Votre box Eedomus à jour, il suffit de connecter le dongle Zigate sur le port USB de votre box domotique, et d’aller sur votre interface de configuration.

Comme ci-dessus, vous devriez avoir un nouveau protocole « Zigate » pour vous permettre d’ajouter des produits Zigbee compatibles et de vous les notifier quand ils seront détectés.

Le fait de cliquer sur « Permit Join » va lancer le processus d’écoute ZigBee sur votre Eedomus, un petit message texte va s’afficher sur l’écran ainsi qu’une notification vocale.

Vous avez donc 1 minute pour stimuler votre objet ZigBee jusqu’à l’obtention d’un bip sonore confirmant la détection d’un nouvel appareil compatible. Vous le verrez s’afficher dans la barre de notifications sous cette forme :

Nouveau périphérique Zigbee détecté (Température): Addresse 45B9créez le automatiquement.

Il ne vous restera plus qu’à cliquer sur « créez le automatiquement » et le configurer comme dans l’exemple ci-dessous avec la sonde de température Xiaomi.

Cet objet contient en fait deux valeurs, la température mais également l’humidité qui va également être automatiquement détectée par la box Eedomus.

Et vu que je possède pas mal de produits ZigBee de marque Xiaomi envoyés par la boutique Gearbest, j’ai pu ajouter à mon Eedomus tous les capteurs, sondes et interrupteurs que j’avais sous la main. Il ne me reste plus qu’à ajouter ce week-end les ampoules, bandeaux led, et prises compatibles Zigate.

Les périphériques suivant ont été testés avec eedomus et Zigate :

Liste des périphériques Zigbee testés avec eedomus

Si un périphérique Zigbee est annoncé comme supporté par Zigate.fr mais ne l’est pas par votre box eedomus, veuillez contacter l’assistance technique

 

C’est déjà un excellent début de supporter les principaux produits ZigBee du fabricant Xiaomi, un excellent rapport qualité prix que vous pourrez commander sur la boutique Chinoise Gearbest

The post Eedomus : Support du dongle Zigate appeared first on Domotique Info.

Tuto Wizzbox: Module éclairage Ubiwizz UBID1507

$
0
0

Pour que les produits Ubiwizz n’aient plus aucun secret pour vous, voici le premier tuto d’une série pour mettre facilement en oeuvre les périphériques compatibles avec la Wizzbox ou la mini Box Ubiwizz.
Pour ceux qui souhaitent en savoir plus sur la solution Ubiwizz, je vous invite à lire cet article.

Eco-systéme Ubiwizz

Le module UBID1507 est un module exploitant la technologie radio Enocean, vous permettant de contrôler vos points d’éclairages. Il possède 2 canaux de sorties (O1 et O2) pilotable en filaire avec les 2 entrées respectives ( S1 et S2) mais aussi via des interrupteurs radios sans pile sans fil Enocean.

Micromodule EnOcean Ubiwizz

Comme les modules Zwave, à moindre mesure, le module Ubiwizz possède des paramètres que vous pourrez modifier via l’application MyUbiwizz.

  1. Le simple allumage
  2. Le Va et Vient méthode 1 (en remplaçant les interrupteurs va et vient par des boutons poussoirs)
  3. Le Va et Vient méthode 2 (en gardant les interrupteurs d’origine)
  4. Intégration du module UBID1507 à la passerelle Wizzbox
1 – Simple allumage

 

 

Schéma de principe du simple allumage

                                                                       

 

Câblage théorique du module UBID1507 en simple allumage

A la première mise sous tension, le module va « détecter » le type d’interrupteur branché sur les entrées S1 et S2 et déterminer le mode bistable (Interrupteur)ou monostable (Poussoir).
Vous pourrez reconfigurer ce paramètre soit en faisant un RESET du module, soit via l’application MyUbiwizz via un menu. Soyez patient pendant les premières secondes de la mise sous tension de votre module, cela vous évitera de mal configurer ce paramètre.

Insertion d’un module UBID1507 dans le circuit simple allumage

Précisions techniques: Si vous avez la possibilité de changer la boite d’encastrement, passez la en profondeur 50 mm, le module se logera plus facilement une fois câblé. Ensuite il vous faudra récupérer un Neutre pour permettre l’alimentation du module.
Afin de faciliter l’installation du mécanisme sur la boite d’encastrement, vous pouvez câbler votre interrupteur avec des câbles souples.

Le tout en vidéo:

 

2 – Va et Vient (Méthode 1)

Pourquoi 2 méthodes ? En fait le choix de l’une ou de l’autre méthode dépendra de la configuration et de la possibilité à retirer du câble dans les gaines existantes. Sauf problème technique, ces solutions vous permettront de transformer votre va et vient en radio.

Schéma de principe d’un Va et Vient

Câblage théorique du module UBID1507 en va et vient

De la même manière que l’installation simple allumage, soyez patient pendant les premières secondes de la mise sous tension du module pour éviter de mal configurer le paramètre de reconnaissance du type d’interrupteur.

 

Insertion d’un module UBID1507 dans le circuit va et vient

Le tout en vidéo:

3 – Va et Vient (Méthode 2)

Câblage théorique du module UBID1507 en va et vient

De la même manière que les installations précédentes, soyez patient pendant les premières secondes de la mise sous tension du module pour éviter de mal configurer le paramètre de reconnaissance du type d’interrupteur.

Insertion d’un module UBID1507 dans le circuit va et vient

Le tout en vidéo:

4 – Intégration à la Wizzbox

Deux versions de contrôleurs sont disponibles à la vente chez My Domotique. Une Mini WizzBox 100% Enocean à moins de 120€ et la passerelle WizzBox Enocean au format Rail Din (extensions Radio en option) pour moins de 220€.

Appairage en vidéo:

Bilan

Ce module d’éclairage UBID1507 vendu au prix de 49.99€ reste une très bonne solution si vous décidez de vous lancer dans la domotique Low Energy. Avec la passerelle Ubiwizz, vous pourrez exploiter pleinement tout le potentiel des modules Ubiwizz.

Pour les prochains tutos, je vous propose de découvrir les autres modules de la gamme Ubiwizz :

  • UBID1506  module 1 relais libre de potentiel
  • UBID1511   module volets roulants
  • 600106       module Fil pilote

The post Tuto Wizzbox: Module éclairage Ubiwizz UBID1507 appeared first on Domotique Info.


Que va changer la spécification Z-wave S2 ?

$
0
0

Que va changer la spécification Z-wave S2 ? Kézako Z-wave S2 ? Quoi de neuf dans les prochains modules que les constructeurs proposerons à l’avenir ? Pourquoi cette évolution ?

C’est parce qu’il n’est pas facile de comprendre tous ces changements, que nous vous offrons l’opportunité d’en savoir un peu plus avec cet article. Loin de réécrire la spécification dans l’article, nous vous proposons une synthèse technique pour vous apporter quelques éléments pratique et ainsi d’évaluer par vous même cette évolution.

Ces dernières années le protocole Z-wave a été mis à mal par différentes démarches d’attaques et d’usurpations. Ceux sont des chercheurs et des experts en sécurité qui ont démontré à plusieurs reprises les faiblesses de la première spécification Z-wave S0 (Chiffrement AES-128) qui est l’ancêtre de la spécification Z-wave S2. La section « En savoir plus » en fin d’article vous apporte quelques lectures supplémentaires au sujet de la mise à l’épreuve du chiffrement S0 si vous le souhaitez.

En 2016 la Z-wave Alliance a donc décidé d’augmenter la robustesse et la sécurité des processus d’échanges de clés partagées et communications de son protocole.

Pas de catastrophisme, oui cette spécification une fois mise oeuvre apporte plus de sécurité, et ultérieurement plus de capacité de déploiement automatique avec une autre spécification nommée SmartStart. Mais pour une lampe, une TV, ou la machine à laver (…) le niveau de sécurité S0 peut suffire amplement. De plus, ces attaques par écoute et injection nécessitent une proximité directe avec votre domicile (quelques dizaines de mètres).

Cependant, il existe aujourd’hui de plus en plus de nouveaux produits permettant le contrôle d’accès de votre domicile, tels que les serrures et verrous connectés, les panneaux de code PIN et autres dispositifs. Ces équipement sont eux nettement plus critique, et nécessitent une robustesse nettement plus accrue. La spécification prend donc en charge l’évolution des usages de la domotique moderne (Smarthome) et des faiblesses Z-Wave S0.

La première chose à savoir est que tous les nouveaux modules Zwave certifiés à partir du 2 avril 2018 devront avoir implémenté la spécification S2. Cependant, certains constructeurs ont déjà certifié des équipements en appliquant les nouvelles obligations de certifications. Pour exemple, à l’heure où cet article est publié une trentaine de produits S2 existent déjà : Z-Wave Products

z-wave alliance products catalog

D’un point de vue technique

La faiblesse de Z-wave S0 permet d’usurper un contrôleur en se faisant passer pour un de ses modules connus (ou l’inverse). Bien évidemment cette faille disparaît avec la mise en oeuvre de Z-Wave S2. En effet, cette évolution ajoute un processus complémentaire d’authentification qui intervient lors de l’association du module S2, pour confirmer la relation de confiance entre le module et le contrôleur Z-wave S2.

Ce processus complémentaire se traduit par la nécessité d’une intervention humaine de saisir un code PIN de 5 caractères numérique (nommé DSK : Device Security Key) ou par le « snap scan » d’un « QR Code » sur le module lui-même (Ce code représente une partie de la clé unique et embarquée dans la puce). Donc nous comprenons qu’au chiffrement par clé partagée de la version S0 une couche technologique complémentaire a été ajoutée pour mettre en place des relations de confiances entres les nœuds du réseau maillé.

qrcode

Sachant qu’intrinsèquement la clé intégrale est stockée et connue par le module lui-même, cette information est envoyée lors de l’association avec le contrôleur (SIC/SUC). Le contrôleur vous demandera simplement de lui donner (Saisie ou QR Code) les 5 premiers caractères de la clé de sécurité « ECDH ». Ainsi, nous confirmons que c’est bien une association de confiance. L’intérêt des clés « ECDH » (Courbes elliptiques) est en partie justifié pour réduire la taille des clés de chiffrement et donc implicitement toutes les trames sécurisées S2 qui la transporte.

Le tableau ci-dessous détaille les différences technologique entre Z-wave S0 et Z-wave S2 (Désolé c’est en Anglais) :

Z-wave S0 vs S2

Z-wave S2

Nous avons essayé pour vous

Pré-requis générique

  • Un contrôleur doté d’une puce de modèle ZW0500
  • Un module S2 (Liste fournie plus haut)
  • Architecture applicative compatible S2 (SDK Version: 6.71.01)

Pré-requis de l’expérience

  • Un Contrôleur RAZ2 [ZMEERAZ2] (Zwave.Me) Puce Z-Wave (Chip) : ZW0500
  • Puce à jour de la API série : Version 05.23 | Après mise à jour OTA du Firmware et Bootloader de la puce [05.04 > 05.07 > 5.22 > 5.23]
  • Module Z-Uno à jour du bootloader 2.1.3 avec Arduino IDE 1.8.5 
  • Architecture applicative compatible S2 SDK Version: 6.71.01 : Serveur ZWay Bêta v3.0.0-rc14

    wget -q -O – razberry.z-wave.me/install/v3.0.0-rc14 | sudo bash

 

Z-Uno

Mode opératoire

Mettre à jour le bootloader de votre Z-Uno

Pour bénéficier de S2 sur votre Z-uno, vous devez posséder un contrôleur S2.

  • Vous devez remplacer le bootloader version non sécurisée S0 par l’option S2. Pour cela sélectionnez S2 dans le menu Outils > Sécurité (voir la capture d’écran).
  • Ensuite, faites Outils > Graver la séquence d’initialisation. Si le bootloader ne correspond pas aux paramètres de votre menu, vous recevrez un avertissement.
  • Pour trouver le code PIN du Z-Uno (également appelé DSK ou ZWS2DSK), consultez le journal de log l’IDE Arduino (voir la capture d’écran). Le Z-Uno prend en charge toutes les classes de sécurité: S2 Unauthenticated, S2 Authenticated et S2 Access.
  • Le bootloader S2 ne supporte pas la sécurité S0, Z-Uno peut auto-détecter le schéma de sécurité utilisé par le destinataire, donc il peut contrôler les périphériques avec n’importe quel niveau de sécurité S2 à condition que la clé correspondante soit accordée à Z-Uno.

 z-uno s2

Associer le module S2 au contrôleur S2

Une fois téléversé, compilé et redémarré, le Z-uno sera prêt pour le test. Lors de l’association, la couche applicative du contrôleur met en oeuvre la demande de code pin ou de QR Code à l’opérateur. On constate que le contrôleur connait l’intégralité de la DSK et que nous devons seulement lui donner le premier mot de 5 caractères de la clé pour confirmer que c’est bien une opération volontaire. La relation de confiance entre le module et le contrôleur est ainsi mise en place.

zwave s2

Constater quelles sont les classes de commandes fournies par l’interview du module

Dans la capture ci-dessous, nous constatons que nous récupérons toutes les capacités du module (CC : Command Class) et les trois classes définissant le type de sécurité pouvant être mise en place.

La classe de commandes S2 comporte 3 classes pour 3 niveaux de sécurité  :
  1. Contrôle d’accès [Access Control]
  2. Authentifié [Authenticated]
  3. Non-Authentifié [Unauthenticated]

(Le Z-Uno est capable de disposer des trois niveaux de sécurité en fonction de sa programmation mais tous les modules n’en disposent pas forcement)

command class s2

Ci-dessous nous pouvons constater qu’un Wallplug ZW+ (avec le firmware le plus ressent) peut s’associer en mode S0 sur un contrôleur S2. Par contre n’ayant pas reçu le niveau de confiance S2 il n’obtiendra pas de relation de confiance dans les groupes d’associations entre modules S2.

Fibaro WP unsecure

Conclusion

Pour bénéficier de l’augmentation de sécurité S2, les premières étapes sont :

  • De vous intéresser à votre contrôleur domotique Z-wave pour déterminer s’il dispose des pré-requis utiles, s’il faut le mettre à jour ? Ou encore si vous devez en acquérir un nouveau.
  • Attention pensez aussi à tous les contrôleurs (SIC/SUC) de votre installation Z-Wave, contrôleur de scènes (Keyfob), Contrôleur Thermostat, Télécommande et contrôleur encastrable.
  • La génération de puces (Chip Sigma) embarquée ou USB est-elle suffisante pour la mise à jour ? Il vous faudra une puce de modèle ZW0500 et un dispositif de mise à jour à la volée (OTA) ou disposer du fichier de mise à jour pour l »équipement en question. La série 300 ne pourra pas être contrôleur S2.
  • La couche applicative est-elle prête à recevoir le framework [SDK] version: 6.71.01 ?
  • Attention : Le fonctionnement en mode mixte S0 et S2 pourrait devenir un handicap par exemple, dans le maillage, dans les relations de groupes, etc … N’ayant pas lu toute la spécification, il va falloir prendre un peu de recul avant de s’emballer.

Voilà, la synthèse se termine, et nous espérons avoir répondu à quelques unes de vos interrogations.

En savoir plus


Merci à notre partenaire

Pour la mise à disposition de l’équipement.

The post Que va changer la spécification Z-wave S2 ? appeared first on Domotique Info.

S’initier à l’IA avec un assistant vocal fait maison

$
0
0

Apprenez à créer votre propre chatbot vocal avec Recast.ai et Voice Kit de Google

Cet article  va vous présenter plusieurs concepts de l’intelligence artificielle au travers d’exemples pour créer votre propre chatbot maison. Nous allons aborder les concepts de NLP (Natural Language Processing), de Machine Learning et nous allons voir comment élaborer un assistant vocal étape par étape.

Prenons l’hypothèse que vous ayez l’envie d’avoir un concierge à domicile, pour vos locataires si vous êtes amené à louer votre appartement. Vous souhaitez par exemple pouvoir leur conseiller quelques bons restaurants dans le quartier.

Le résultat final donne ceci :

Pré requis

Pour réaliser cet assistant au niveau matériel nous aurons besoin :
• 1 x Voice Kit de Google
• 1 x RPI 3

Au niveau logiciel, nous utiliserons :
• Pour traduire les commandes vocales en texte : l’API cloud speech de Google (https://console.cloud.google.com)
• Pour gérer les conversations : Recast.ai
• Pour orchestrer les échanges entre les deux : NODE-RED qui sera installé sur le RPI

Installation

Nous n’allons pas rentrer en détail sur l’installation du Voice kit, elle est très bien documentée sur le site de Google : (https://aiyprojects.withgoogle.com/voice). Quand vous aurez terminé l’installation de votre kit et de votre RPI, vous pourrez lancer quelques scripts de tests afin de vérifier le bon fonctionnement de votre assistant. Pour NODE-RED vous trouverez la procédure d’installation sur le site : https://nodered.org/docs/hardware/raspberrypi.html

Nous allons à présent rentrer dans le vif du sujet : créer un assistant vocal !

Schémas d’ensemble

Ce schéma vous présente l’interaction entre les différentes briques que nous allons utiliser :

Les commandes vocales vont être réceptionnées par le Voice kit qui enverra le son à l’API Cloudspeech de Google pour le convertir en texte. Cette API nous sert donc de moteur NLU (Natural Language Understanding), la commande convertie en texte sera ensuite envoyée au moteur NLP de Recast.ai pour l’analyser. La plateforme Recast.ai permet de créer des « chatbot » avec des fonctionnalités que nous allons utiliser :
• Reconnaître l’intention de la commande et les mots clés (on parle d’entité).
• Entrainer votre chatbot pour améliorer sa compréhension des commandes
• Gérer les conversations avec la notion de « skill » (compétence, savoir faire)
Pour orchestrer tous ces échanges, nous utiliserons Node-RED présenté dans un précédent article.

Dans le schéma, j’ai ajouté la possibilité à l’orchestrateur d’envoyer des commandes au système domotique ou aux objets connectés de la maison, même si dans l’article actuel nous ne montrons pas ce cas d’usage, c’est juste pour schématiser une vue globale des possibilités.

Cas d’usages

Nous allons prendre des cas d’usages et les implémenter de plusieurs façons. La première approche permet de mettre au point un assistant capable de répondre à des questions simples. Exemple : Quelle est la météo ? Quel est ton nom ?
Nous enrichirons cet exemple en allant un cran plus loin afin d’être plus nuancé dans le traitement de la réponse. Pour finir nous mettrons en place une conversation afin de répondre à des questions plus complexes. Exemple : Quel restaurant conseiller pour aller manger dans le quartier ?

Quelques lignes de code

Le clignotement de la LED indique que la box est en écoute.
Quand la LED devient fixe, c’est que la réponse va être fournie.
Quand la LED s’éteint, c’est que la box n’est plus active.
Pour écouter et transmettre à l’API cloudspeech de Google nous utilisons un service python, il a été adapté à partir des exemples fournis dans le kit. Ce sont les seules lignes de code que vous aurez besoin de manipuler..

Le script est placé dans /home/pi/AIY-projects-python/src/script/my_assistant.py

Le code source correspond à ceci :

import aiy.audio
import aiy.cloudspeech
import aiy.voicehat
import requests
import subprocess

recast_url = "http://127.0.0.1:1880/callRecast?param="

def callEngineAI(message):
 r = requests.get(recast_url+message)
 led = aiy.voicehat.get_led()
 led.set_state(aiy.voicehat.LED.OFF)
# aiy.audio.say('some words', lang='en-GB')
 aiy.audio.say(r.text)

def main():
 aiy.i18n.set_language_code('fr-FR')
 recognizer = aiy.cloudspeech.get_recognizer()
 button = aiy.voicehat.get_button()
 led = aiy.voicehat.get_led()
 aiy.audio.get_recorder().start()

while True:
 print('Appuyer sur le bouton et parler...')
 button.wait_for_press()
 led.set_state(aiy.voicehat.LED.BLINK)
 print('En écoute...')
 text = recognizer.recognize()
 led.set_state(aiy.voicehat.LED.ON)
 if not text:
 print('Désolé, Je ne t\'ai pas entendu.')
 else:
 #print('Tu as dit "', text, '"')
 #callEngineAI(text)
 if 'répète après moi' in text:
 print('Répète après moi:"', text, '"')
 to_repeat = text.replace('répète après moi', '', 1)
 aiy.audio.say(to_repeat)
 led.set_state(aiy.voicehat.LED.OFF)
 elif 'au revoir' in text:
 print('Au revoir')
 led.set_state(aiy.voicehat.LED.OFF)
 aiy.audio.say("Ok, je vais m'éteindre")
 subprocess.call(["sudo","shutdown","-h","now"])
 break
 else:
 print('Call callEngineAI: "', text, '"')
 callEngineAI(text)

if __name__ == '__main__':
 main()

Afin de lancer ce script automatiquement au démarrage de votre assistant, vous pouvez l’inscrire en tant que service :

cd /lib/systemd/system
sudo nano /lib/systemd/system/my_assistant.service
[Unit]
Description=My assistant app

[Service]
ExecStart=/bin/bash -c 'python3 -u src/my_assistant.py'
WorkingDirectory=/home/pi/AIY-projects-python
Restart=always
User=pi

[Install]
WantedBy=multi-user.target
sudo systemctl enable my_assistant.service
1ère étape : répondre à des questions simples

Voici une démonstration de cette première réalisation :

 

Pour apprendre à utiliser Recast.ai , j’ai utilisé un « noeud » mis à disposition par Viseo. En y ajoutant le token d’authentification de votre chatbot, vous pouvez appeler les API de Recast sans avoir à écrire une seule ligne de code ! (Merci à JP.Encausse créateur de S.a.r.a.h et ses collègues pour ce partage).

Si on veut aller un peu plus loin, il serait utile de pouvoir nuancer la commande en identifiant les mots-clés (« entités »). C’est l’objet de notre deuxième implémentation.

2ème étape : repérer les entités de la commande vocale

Dans ce deuxième exemple nous aurons besoin d’utiliser les API de Recast.ai
Ces API sont documentées ici : https://recast.ai/docs/api-reference/

Voici une démonstration de cette deuxième réalisation :

Pour obtenir en retour plus d’informations sur la commande, nous appelons l’API request. Elle permet en retour de lire les entités et les intentions qui ont été comprises par le chatbot. Pour appeler cette API j’ai créé un sous-noeud pour en simplifier son utilisation par la suite.

Si on veut gérer des cas plus complexes, il faut mettre en place ce qu’on appelle des conversations. C’est l’objet de notre prochaine étape.

3ème étape : gérer une conversation

Dans cette troisième approche, j’ai implémenté plusieurs cas de figures :
• Le premier montre comment répondre aux questions simples au sein d’une conversation.
• Le second gère la météo en gérant deux cas. Selon la demande le chatbot indique la météo du jour ou s’il va pleuvoir dans l’heure.
• Le troisième exemple concerne le cas du restaurant. Nous allons imaginer qu’un locataire souhaite connaître les bons restaurants du quartier. Pour pouvoir répondre le chatbot doit savoir le style de cuisine désiré. Pour envoyer l’adresse, l’assistant doit connaitre le téléphone portable pour pouvoir lui envoyer par SMS.
• Si le chatbot est perdu, la réponse par défaut sera « Et là c’est le bug ! ».

Voici une démonstration de cette troisième réalisation :

Les principes utilisés sont les suivants :
• Une conversation a un token, celui-ci doit être transmis dans chaque requête pour permettre au chatbot de savoir qu’elles sont liées à la même conversation. J’ai regroupé les commandes dans un sous noeud appelé « init dialog ».
• Pour envoyer un message au chatbot, nous faisons appel à l’API « converse ». J’ai créé un sous-noeud appelé « dialog » pour regrouper les commandes.

Pour créer un token, j’ai utilisé un script python qui s’appuie sur le sdk recastai. et s’installe avec les commandes suivantes :

pip install recastai
nano src/conversation.pi

Le source du script conversation.py qui permet de créer un nouveau token est le suivant :

import sys
import recastai

def main():
 payload = sys.argv[1]
 my_conversation_token = None
 client = recastai.Client('71c52df587ba816e4fea6be69787d15b')
 request = client.request
 response = request.converse_text(payload)
 my_conversation_token = response.conversation_token
 print(my_conversation_token)

if __name__ == '__main__':
 main()

Si vous souhaitez mettre en place ces exemples dans NODE-RED, vous pouvez faire un copier-coller :

Source NODE-RED première implémentation :

[{"id":"97344880.ddfc1","type":"subflow","name":"day weather","info":"","in":[{"x":156,"y":138,"wires":[{"id":"fe3e4c98.00d3d"}]}],"out":[{"x":1134,"y":118,"wires":[{"id":"16a06c4f.3308e4","port":0},{"id":"b6376939.0bf5","port":0}]}]},{"id":"fe3e4c98.00d3d","type":"template","z":"97344880.ddfc1","name":"Prepare command","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"wget http://www.prevision-meteo.ch/services/json/PARIS -q -O -","output":"str","x":346,"y":136,"wires":[["dd7acf78.82fb58"]]},{"id":"dd7acf78.82fb58","type":"exec","z":"97344880.ddfc1","command":"","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"Exec curl","x":518,"y":135,"wires":[["135bf690.b70a01"],[],[]]},{"id":"135bf690.b70a01","type":"switch","z":"97344880.ddfc1","name":"Check result","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"Please specify a valid city or a coordinate","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":677,"y":102,"wires":[["16a06c4f.3308e4"],["721ea662.710f28"]]},{"id":"721ea662.710f28","type":"json","z":"97344880.ddfc1","name":"conversion","pretty":false,"x":844,"y":130,"wires":[["b6376939.0bf5"]]},{"id":"16a06c4f.3308e4","type":"function","z":"97344880.ddfc1","name":"KO","func":"msg.payload = \"Service météo inaccessible\";\nreturn msg","outputs":1,"noerr":0,"x":990.3333740234375,"y":95.00003051757812,"wires":[[]]},{"id":"b6376939.0bf5","type":"function","z":"97344880.ddfc1","name":"OK","func":"today=msg.payload.fcst_day_0.day_long + \", il fait \" + msg.payload.current_condition.tmp + \" degrés et les conditions sont : \" + msg.payload.current_condition.condition + \".\\n\";\ntomorrow=msg.payload.fcst_day_1.day_long + \", la température sera entre \" + msg.payload.fcst_day_1.tmin + \" degrés et \" + msg.payload.fcst_day_1.tmax + \" degrés.\\nLes conditions seront : \" + msg.payload.fcst_day_1.condition + \".\";\n\nmsg.payload = today;\n\nreturn msg","outputs":1,"noerr":0,"x":990.3333740234375,"y":130.00003051757812,"wires":[[]]},{"id":"544cbc07.0db904","type":"comment","z":"97344880.ddfc1","name":"Météo du jour","info":"","x":324.75,"y":55.85711669921875,"wires":[]},{"id":"db8cd9e8.9a5ef","type":"node-recast","z":"5adfa13c.5a4a","name":"call Recast.ai","key":"822f3405.cd8ab","input":"payload","inputType":"msg","output":"payload","outputType":"msg","x":487.3096466064453,"y":259.9642219543457,"wires":[["98604966.04d05","61ffa459.e48034"]]},{"id":"98604966.04d05","type":"debug","z":"5adfa13c.5a4a","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","x":641.3096160888672,"y":230.57136917114258,"wires":[]},{"id":"99ffcff1.f8214","type":"http in","z":"5adfa13c.5a4a","name":"/ call my bot","url":"callRecast","method":"get","upload":false,"swaggerDoc":"","x":149.52394104003906,"y":123.78567504882812,"wires":[["1f625662.6c2252"]]},{"id":"b291eba5.38d0a","type":"http response","z":"5adfa13c.5a4a","name":"","statusCode":"200","headers":{},"x":1333.9412078857422,"y":341.46423721313477,"wires":[]},{"id":"1f625662.6c2252","type":"change","z":"5adfa13c.5a4a","name":"get param","rules":[{"t":"move","p":"payload.param","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":347.52394104003906,"y":123.28567123413086,"wires":[["575f075f.2ce268","db8cd9e8.9a5ef"]]},{"id":"575f075f.2ce268","type":"debug","z":"5adfa13c.5a4a","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","x":510.5952606201172,"y":123.10709762573242,"wires":[]},{"id":"6659e401.7840ec","type":"change","z":"5adfa13c.5a4a","name":"otherwize get description","rules":[{"t":"move","p":"payload.description","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":964.0598602294922,"y":458.67868423461914,"wires":[["93b0c61e.f70af8"]]},{"id":"b2d219e6.d316","type":"function","z":"5adfa13c.5a4a","name":"Et là c'est le bug !","func":"msg.payload = \"Et là c'est le beug\"\nreturn msg;","outputs":1,"noerr":0,"x":940.4526824951172,"y":283.0357093811035,"wires":[["93b0c61e.f70af8"]]},{"id":"4e348102.425328","type":"switch","z":"5adfa13c.5a4a","name":"check confidence","property":"payload.confidence","propertyType":"msg","rules":[{"t":"lte","v":"0.4","vt":"str"},{"t":"else"}],"checkall":"false","repair":false,"outputs":2,"x":673.5596771240234,"y":359.0832862854004,"wires":[["9e996157.67fa6"],["d27afea7.1c06c"]]},{"id":"9e996157.67fa6","type":"function","z":"5adfa13c.5a4a","name":"Je n'ai pas compris","func":"msg.payload = \"Je ne suis pas sûr d'avoir compris ta question\"\nreturn msg;","outputs":1,"noerr":0,"x":940.8215789794922,"y":352.0118751525879,"wires":[["93b0c61e.f70af8"]]},{"id":"d27afea7.1c06c","type":"switch","z":"5adfa13c.5a4a","name":"check intent","property":"payload.slug","propertyType":"msg","rules":[{"t":"regex","v":"ask-weather","vt":"str","case":true},{"t":"else"}],"checkall":"false","repair":false,"outputs":2,"x":726.2028656005859,"y":432.0832862854004,"wires":[["a61dffef.440828"],["6659e401.7840ec"]]},{"id":"f69495d6.716f7","type":"debug","z":"5adfa13c.5a4a","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":1346.4227752685547,"y":392.148868560791,"wires":[]},{"id":"61ffa459.e48034","type":"switch","z":"5adfa13c.5a4a","name":"check if null","property":"payload","propertyType":"msg","rules":[{"t":"null"},{"t":"else"}],"checkall":"false","repair":false,"outputs":2,"x":659.6668548583984,"y":291.642765045166,"wires":[["b2d219e6.d316"],["4e348102.425328"]]},{"id":"dcd663a2.580938","type":"inject","z":"5adfa13c.5a4a","name":"","topic":"test","payload":"dis moi une blague","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":233.1668243408203,"y":217.14284896850586,"wires":[["db8cd9e8.9a5ef"]]},{"id":"f2883da4.5cdd58","type":"inject","z":"5adfa13c.5a4a","name":"test:quel temps fait il ?","topic":"test","payload":"quel temps fait-il ?","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":235.16685485839844,"y":261.28561782836914,"wires":[["db8cd9e8.9a5ef"]]},{"id":"a61dffef.440828","type":"subflow:97344880.ddfc1","z":"5adfa13c.5a4a","name":"","x":920.0480194091797,"y":393.4642677307129,"wires":[["93b0c61e.f70af8"]]},{"id":"acfd0afc.eafb2","type":"inject","z":"5adfa13c.5a4a","name":"test:quel est ton nom ?","topic":"test","payload":"quel est ton nom ?","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":235.88111877441406,"y":307.5713539123535,"wires":[["db8cd9e8.9a5ef"]]},{"id":"93b0c61e.f70af8","type":"function","z":"5adfa13c.5a4a","name":"log","func":"\nreturn msg;","outputs":1,"noerr":0,"x":1169.4529266357422,"y":370.42847061157227,"wires":[["f69495d6.716f7","b291eba5.38d0a"]]},{"id":"dc92155.2f8d7e8","type":"comment","z":"5adfa13c.5a4a","name":"get intent","info":"","x":478.73817443847656,"y":223.28570938110352,"wires":[]},{"id":"7e8cb418.806334","type":"comment","z":"5adfa13c.5a4a","name":"dialog with my bot Johnny !","info":"","x":199.1666717529297,"y":79.16667175292969,"wires":[]},{"id":"822f3405.cd8ab","type":"node-recast-config","z":"","name":"token","lang":""}]

Source NODE-RED seconde implémentation :

[{"id":"5c6424b7.ffeabc","type":"subflow","name":"request","info":"","in":[{"x":156,"y":106,"wires":[{"id":"ad830797.c1ee6"}]}],"out":[{"x":867,"y":102,"wires":[{"id":"79abf718.067db8","port":0}]}]},{"id":"512ec158.6c8cd8","type":"exec","z":"5c6424b7.ffeabc","command":"","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"call recast.api/request","x":547,"y":102,"wires":[["79abf718.067db8"],[],[]]},{"id":"ad830797.c1ee6","type":"template","z":"5c6424b7.ffeabc","name":"Prepare command","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"curl -H \"Authorization: Token 71c52df587ba816e4fea6be69787d15b\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"text\":\"{{payload}}\", \"language\":\"fr\"}' \\\n -X POST \"https://api.recast.ai/v2/request\"","output":"str","x":332.44036865234375,"y":104.27386474609375,"wires":[["512ec158.6c8cd8"]]},{"id":"79abf718.067db8","type":"json","z":"5c6424b7.ffeabc","name":"","property":"payload","action":"","pretty":false,"x":725.625,"y":101.8779296875,"wires":[[]]},{"id":"e7b9366.e55ac48","type":"debug","z":"1dee03c5.f49574","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","x":670.1485595703125,"y":194.51493072509766,"wires":[]},{"id":"6389c72b.3f94d8","type":"comment","z":"1dee03c5.f49574","name":"get intent & entities","info":"","x":165,"y":82,"wires":[]},{"id":"618e612f.b18bd8","type":"subflow:5c6424b7.ffeabc","z":"1dee03c5.f49574","name":"","x":506.0178527832031,"y":193.9077606201172,"wires":[["e7b9366.e55ac48"]]},{"id":"684acba0.867924","type":"inject","z":"1dee03c5.f49574","name":"","topic":"test","payload":"dis moi une blague","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":258.2321472167969,"y":142.2143096923828,"wires":[["618e612f.b18bd8"]]},{"id":"a08752e6.577ce8","type":"inject","z":"1dee03c5.f49574","name":"test:quel temps fait il ?","topic":"test","payload":"quel temps fait-il ?","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":260.232177734375,"y":186.3570785522461,"wires":[["618e612f.b18bd8"]]},{"id":"6a2cd174.35f0a8","type":"inject","z":"1dee03c5.f49574","name":"test:quel est ton nom ?","topic":"test","payload":"quel est ton nom ?","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":260.9464416503906,"y":232.64281463623047,"wires":[["618e612f.b18bd8"]]}]

Source NODE-RED troisième implémentation :

[{"id":"fbd6dad5.34a1b","type":"subflow","name":"current weather","info":"","in":[{"x":136,"y":134,"wires":[{"id":"7ff8d11c.fe0e98"}]}],"out":[{"x":1164,"y":144,"wires":[{"id":"24208a46.890f1e","port":0},{"id":"667258aa.b59b28","port":0}]}]},{"id":"239fd328.e8428c","type":"comment","z":"fbd6dad5.34a1b","name":"Va-t-il pleuvoir dans l'heure ?","info":"","x":400,"y":56,"wires":[]},{"id":"b3d35dee.2f8d4","type":"exec","z":"fbd6dad5.34a1b","command":"","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"Exec curl","x":531,"y":134,"wires":[["777ea494.f7a22c"],[],[]]},{"id":"24208a46.890f1e","type":"function","z":"fbd6dad5.34a1b","name":"OK","func":"if(msg.payload.isAvailable===true) {\n arrayLength = msg.payload.niveauPluieText.length;\n retour = \"\";\n for(var i=0;i<arrayLength;i++)\n retour = retour + msg.payload.niveauPluieText[i] + \"\\n\";\n msg.payload = retour;\n}else{\n msg.payload = \"Pas de météo sur cette localité\";\n}\nreturn msg","outputs":1,"noerr":0,"x":1007.3333740234375,"y":117.25,"wires":[[]]},{"id":"786e5520.e21dec","type":"json","z":"fbd6dad5.34a1b","name":"conversion","pretty":false,"x":862,"y":117.24996948242188,"wires":[["24208a46.890f1e"]]},{"id":"7ff8d11c.fe0e98","type":"template","z":"fbd6dad5.34a1b","name":"Prepare command","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"curl -s \"http://www.meteofrance.com/mf3-rpc-portlet/rest/pluie/751170\"","output":"str","x":357,"y":134,"wires":[["b3d35dee.2f8d4"]]},{"id":"777ea494.f7a22c","type":"switch","z":"fbd6dad5.34a1b","name":"Check result","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"niveauPluieText","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":692,"y":144.24996948242188,"wires":[["786e5520.e21dec"],["667258aa.b59b28"]]},{"id":"667258aa.b59b28","type":"function","z":"fbd6dad5.34a1b","name":"KO","func":"msg.payload = \"Service météo horaire inaccessible\";\nreturn msg","outputs":1,"noerr":0,"x":1005.3333740234375,"y":151.25,"wires":[[]]},{"id":"97344880.ddfc1","type":"subflow","name":"day weather","info":"","in":[{"x":156,"y":138,"wires":[{"id":"fe3e4c98.00d3d"}]}],"out":[{"x":1134,"y":118,"wires":[{"id":"16a06c4f.3308e4","port":0},{"id":"b6376939.0bf5","port":0}]}]},{"id":"fe3e4c98.00d3d","type":"template","z":"97344880.ddfc1","name":"Prepare command","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"wget http://www.prevision-meteo.ch/services/json/PARIS -q -O -","output":"str","x":346,"y":136,"wires":[["dd7acf78.82fb58"]]},{"id":"dd7acf78.82fb58","type":"exec","z":"97344880.ddfc1","command":"","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"Exec curl","x":518,"y":135,"wires":[["135bf690.b70a01"],[],[]]},{"id":"135bf690.b70a01","type":"switch","z":"97344880.ddfc1","name":"Check result","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"Please specify a valid city or a coordinate","vt":"str"},{"t":"else"}],"checkall":"true","outputs":2,"x":677,"y":102,"wires":[["16a06c4f.3308e4"],["721ea662.710f28"]]},{"id":"721ea662.710f28","type":"json","z":"97344880.ddfc1","name":"conversion","pretty":false,"x":844,"y":130,"wires":[["b6376939.0bf5"]]},{"id":"16a06c4f.3308e4","type":"function","z":"97344880.ddfc1","name":"KO","func":"msg.payload = \"Service météo inaccessible\";\nreturn msg","outputs":1,"noerr":0,"x":990.3333740234375,"y":95.00003051757812,"wires":[[]]},{"id":"b6376939.0bf5","type":"function","z":"97344880.ddfc1","name":"OK","func":"today=msg.payload.fcst_day_0.day_long + \", il fait \" + msg.payload.current_condition.tmp + \" degrés et les conditions sont : \" + msg.payload.current_condition.condition + \".\\n\";\ntomorrow=msg.payload.fcst_day_1.day_long + \", la température sera entre \" + msg.payload.fcst_day_1.tmin + \" degrés et \" + msg.payload.fcst_day_1.tmax + \" degrés.\\nLes conditions seront : \" + msg.payload.fcst_day_1.condition + \".\";\n\nmsg.payload = today;\n\nreturn msg","outputs":1,"noerr":0,"x":990.3333740234375,"y":130.00003051757812,"wires":[[]]},{"id":"544cbc07.0db904","type":"comment","z":"97344880.ddfc1","name":"Météo du jour","info":"","x":324.75,"y":55.85711669921875,"wires":[]},{"id":"73ff3e8e.1500d","type":"subflow","name":"dialog","info":"","in":[{"x":164,"y":118,"wires":[{"id":"b1877146.18e528"}]}],"out":[{"x":866,"y":125,"wires":[{"id":"634d3b8d.9e33e4","port":0}]}]},{"id":"dcc05f26.da644","type":"exec","z":"73ff3e8e.1500d","command":"","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"call recast.api/dialog","x":560,"y":119,"wires":[["634d3b8d.9e33e4"],[],[]]},{"id":"b1877146.18e528","type":"template","z":"73ff3e8e.1500d","name":"Prepare command","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"curl -H \"Authorization: Token 71c52df587ba816e4fea6be69787d15b\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"message\": {\"content\":\"{{payload}}\",\"type\":\"text\"}, \"conversation_id\": \"{{global.conversation_token}}\"}' \\\n -X POST \"https://api.recast.ai/build/v1/dialog\"","output":"str","x":323.10711669921875,"y":119.607177734375,"wires":[["dcc05f26.da644"]]},{"id":"634d3b8d.9e33e4","type":"json","z":"73ff3e8e.1500d","name":"","property":"payload","action":"","pretty":false,"x":738.625,"y":123.294677734375,"wires":[[]]},{"id":"d580fc28.71aab8","type":"subflow","name":"init dialog","info":"","in":[{"x":145.33331298828125,"y":103,"wires":[{"id":"3a0b51a.7f5d02e"}]}],"out":[{"x":1161.6666259765625,"y":98.66668701171875,"wires":[{"id":"507f653b.5e7674","port":0}]}]},{"id":"10fd2230.46672e","type":"exec","z":"d580fc28.71aab8","command":"/home/pi/AIY-projects-python/src/conversation.py","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"init dialog","x":543.6667785644531,"y":102.33332824707031,"wires":[["d7f62ae.f4ebf58"],[],[]]},{"id":"d7f62ae.f4ebf58","type":"string","z":"d580fc28.71aab8","name":"set global var","methods":[{"name":"trim","params":[]}],"prop":"payload","propout":"conversation_token","object":"msg","objectout":"global","x":733.8751525878906,"y":101.60401916503906,"wires":[["507f653b.5e7674"]]},{"id":"3a0b51a.7f5d02e","type":"change","z":"d580fc28.71aab8","name":"","rules":[{"t":"move","p":"payload","pt":"msg","to":"message","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":346.833251953125,"y":104.33331298828125,"wires":[["10fd2230.46672e"]]},{"id":"507f653b.5e7674","type":"change","z":"d580fc28.71aab8","name":"","rules":[{"t":"move","p":"message","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":960,"y":98.66668701171875,"wires":[[]]},{"id":"dcc3ce49.ee03e","type":"inject","z":"607e0e83.a2db2","name":"test:quel temps fait-il aujourd'hui ?","topic":"test","payload":"quel temps fait-il aujourd'hui ?","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":192.82125854492188,"y":566.285400390625,"wires":[["1dd13035.c2d908"]]},{"id":"edab227f.488648","type":"http in","z":"607e0e83.a2db2","name":"/ call my bot","url":"callRecast","method":"get","upload":false,"swaggerDoc":"","x":152.85711669921875,"y":135.142822265625,"wires":[["df30c445.1ecc18"]]},{"id":"df30c445.1ecc18","type":"change","z":"607e0e83.a2db2","name":"get param","rules":[{"t":"move","p":"payload.param","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":316.02374267578125,"y":134.64281463623047,"wires":[["1dd13035.c2d908","a0891beb.80dd7"]]},{"id":"eb7cce92.c4901","type":"inject","z":"607e0e83.a2db2","name":"test:va-t-il pleuvoir dans l'heure ?","topic":"test","payload":"Va-t-il pleuvoir dans l'heure ?","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":197.52383422851562,"y":527.3094787597656,"wires":[["1dd13035.c2d908"]]},{"id":"dfb16dec.a71a58","type":"inject","z":"607e0e83.a2db2","name":"","topic":"test","payload":"maintenant","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":240.95242309570312,"y":437.57452392578125,"wires":[["1dd13035.c2d908"]]},{"id":"a61cf3e8.367ce","type":"inject","z":"607e0e83.a2db2","name":"","topic":"test","payload":"météo","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":259.5595703125,"y":400.8123779296875,"wires":[["1dd13035.c2d908"]]},{"id":"e2dacaea.1043f8","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":1078.71435546875,"y":126.4197998046875,"wires":[]},{"id":"6ba99830.d2b3","type":"inject","z":"607e0e83.a2db2","name":"","topic":"test","payload":"ok johnny","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":719.321533203125,"y":127.47911834716797,"wires":[["357e11cc.5391f6"]]},{"id":"4822fc3a.79f6ac","type":"comment","z":"607e0e83.a2db2","name":"dialog with my bot Johnny !","info":"","x":205.86904907226562,"y":83.13385009765625,"wires":[]},{"id":"357e11cc.5391f6","type":"subflow:d580fc28.71aab8","z":"607e0e83.a2db2","name":"","x":919.071533203125,"y":127.21727752685547,"wires":[["e2dacaea.1043f8"]]},{"id":"f3464089.0ee51","type":"subflow:73ff3e8e.1500d","z":"607e0e83.a2db2","name":"","x":708.9603881835938,"y":450.47125244140625,"wires":[["31a97ebe.fa8bea","d91562a6.fdb908"]]},{"id":"4041e1a2.44881","type":"switch","z":"607e0e83.a2db2","name":"if ask weather","property":"payload.results.conversation.memory.context","propertyType":"msg","rules":[{"t":"null"},{"t":"else"}],"checkall":"true","repair":false,"outputs":2,"x":1164.833251953125,"y":266.2530212402344,"wires":[["a33986d6.e5518"],["2675f719.75756"]]},{"id":"5e1fa649.205328","type":"inject","z":"607e0e83.a2db2","name":"","topic":"test","payload":"du jour","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":254.28558349609375,"y":475.96710205078125,"wires":[["1dd13035.c2d908"]]},{"id":"2675f719.75756","type":"switch","z":"607e0e83.a2db2","name":"switch context","property":"payload.results.conversation.memory.context","propertyType":"msg","rules":[{"t":"eq","v":"now","vt":"str"},{"t":"else"}],"checkall":"true","repair":false,"outputs":2,"x":1385.6666259765625,"y":293.3961181640625,"wires":[["f514f00d.401018"],["8fd17b2b.b8a3c8"]]},{"id":"c8fd1ace.8c931","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":1076.1431884765625,"y":163.32445526123047,"wires":[]},{"id":"42b3bce9.c1247c","type":"inject","z":"607e0e83.a2db2","name":"get conversation_token","topic":"","payload":"conversation_token","payloadType":"global","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":748.57177734375,"y":164.96722412109375,"wires":[["c8fd1ace.8c931"]]},{"id":"1dd13035.c2d908","type":"switch","z":"607e0e83.a2db2","name":"if token not init","property":"conversation_token","propertyType":"global","rules":[{"t":"nnull"},{"t":"else"}],"checkall":"true","repair":false,"outputs":2,"x":546.0316772460938,"y":457.36419677734375,"wires":[["f3464089.0ee51"],["24e72254.ea79ae"]]},{"id":"24e72254.ea79ae","type":"subflow:d580fc28.71aab8","z":"607e0e83.a2db2","name":"","x":628.8888549804688,"y":514.6974411010742,"wires":[["f3464089.0ee51"]]},{"id":"1a509149.499d27","type":"inject","z":"607e0e83.a2db2","name":"","topic":"test","payload":"météo du jour","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":239.7142333984375,"y":270.20538330078125,"wires":[["1dd13035.c2d908"]]},{"id":"8fd17b2b.b8a3c8","type":"subflow:97344880.ddfc1","z":"607e0e83.a2db2","name":"","x":1572.6666259765625,"y":314.0001220703125,"wires":[["cdee81e7.032ca"]]},{"id":"f514f00d.401018","type":"subflow:fbd6dad5.34a1b","z":"607e0e83.a2db2","name":"","x":1576.6666259765625,"y":270.0001220703125,"wires":[["cdee81e7.032ca"]]},{"id":"31a97ebe.fa8bea","type":"switch","z":"607e0e83.a2db2","name":"switch skill","property":"payload.results.conversation.skill","propertyType":"msg","rules":[{"t":"eq","v":"ask-weather","vt":"str"},{"t":"eq","v":"ask-timedadreturn","vt":"str"},{"t":"eq","v":"ask-restaurant","vt":"str"},{"t":"eq","v":"smalltalk","vt":"str"},{"t":"else"}],"checkall":"true","repair":false,"outputs":5,"x":881.222412109375,"y":449.9443359375,"wires":[["4041e1a2.44881"],[],["67a45104.b1d578"],["201314f.30f45ec"],["e3deb339.9a1ac"]]},{"id":"4e58edc6.9c611c","type":"http response","z":"607e0e83.a2db2","name":"","statusCode":"200","headers":{},"x":2046.7779541015625,"y":385.61114501953125,"wires":[]},{"id":"e3deb339.9a1ac","type":"function","z":"607e0e83.a2db2","name":"Et là c'est le bug !","func":"msg.payload = \"Et là c'est le beug\"\nreturn msg;","outputs":1,"noerr":0,"x":1112.5555419921875,"y":824.72216796875,"wires":[["15a70f73.fb5fc9","ead95919.d45538"]]},{"id":"a33986d6.e5518","type":"function","z":"607e0e83.a2db2","name":"get message","func":"msg.payload = msg.payload.results.messages[0].content;\nreturn msg;","outputs":1,"noerr":0,"x":1377.6666259765625,"y":227.5001220703125,"wires":[["2766439c.39b754","b1137590.264d78"]]},{"id":"2766439c.39b754","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":1567.6666259765625,"y":185.16677856445312,"wires":[]},{"id":"15a70f73.fb5fc9","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":1314.9998779296875,"y":863.6112060546875,"wires":[]},{"id":"d91562a6.fdb908","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","x":859.031982421875,"y":512.7063598632812,"wires":[]},{"id":"8b938acc.8ad908","type":"inject","z":"607e0e83.a2db2","name":"","topic":"test","payload":"dis moi une blague","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":244.19046020507812,"y":228.97616577148438,"wires":[["1dd13035.c2d908"]]},{"id":"b6d13e85.0e29e8","type":"function","z":"607e0e83.a2db2","name":"get message","func":"msg.payload = msg.payload.results.conversation.memory.context.description;\nreturn msg;","outputs":1,"noerr":0,"x":1311.44482421875,"y":652.3332824707031,"wires":[["907249e0.1c92b","1830ca15.1ef316"]]},{"id":"6d480f7e.080fd8","type":"comment","z":"607e0e83.a2db2","name":"init token manually","info":"","x":716.5714111328125,"y":82.6666488647461,"wires":[]},{"id":"c588fa03.800968","type":"comment","z":"607e0e83.a2db2","name":"call Recast.ai API","info":"","x":676.6507568359375,"y":410.11114501953125,"wires":[]},{"id":"f112c359.12372","type":"inject","z":"607e0e83.a2db2","name":"test:quel est ton nom ?","topic":"test","payload":"quel est ton nom ?","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":221,"y":312,"wires":[["1dd13035.c2d908"]]},{"id":"d10f1449.37ed18","type":"inject","z":"607e0e83.a2db2","name":"test:quel temps fait il ?","topic":"test","payload":"Quel temps fait-il ?","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":219.3809814453125,"y":364.21405029296875,"wires":[["1dd13035.c2d908"]]},{"id":"3190e5ec.fc04ba","type":"inject","z":"607e0e83.a2db2","name":"test:peux tu me servir une bière ?","topic":"test","payload":"peux tu me servir une bière ?","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":337.364990234375,"y":796.7618408203125,"wires":[["1dd13035.c2d908"]]},{"id":"201314f.30f45ec","type":"switch","z":"607e0e83.a2db2","name":"if smalltalk","property":"payload.results.conversation.memory.context","propertyType":"msg","rules":[{"t":"nnull"},{"t":"else"}],"checkall":"true","repair":false,"outputs":2,"x":1125.33349609375,"y":678.3333129882812,"wires":[["b6d13e85.0e29e8"],["7a0dfe1e.bf0bb"]]},{"id":"a0891beb.80dd7","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":495.6666259765625,"y":135.33333587646484,"wires":[]},{"id":"360b6d53.081662","type":"inject","z":"607e0e83.a2db2","name":"test:peux-tu me conseiller un restaurant","topic":"test","payload":"peux-tu me conseiller un restaurant","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":239.12701416015625,"y":625.28564453125,"wires":[["1dd13035.c2d908"]]},{"id":"41392bbe.a6a6dc","type":"inject","z":"607e0e83.a2db2","name":"","topic":"test","payload":"bistro","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":332.0159606933594,"y":665.7935791015625,"wires":[["1dd13035.c2d908"]]},{"id":"df31d3e8.96ada","type":"inject","z":"607e0e83.a2db2","name":"","topic":"test","payload":"pizzeria","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":338.46038818359375,"y":703.238037109375,"wires":[["1dd13035.c2d908"]]},{"id":"67a45104.b1d578","type":"switch","z":"607e0e83.a2db2","name":"if ask restaurant","property":"payload.results.conversation.memory.genre","propertyType":"msg","rules":[{"t":"null"},{"t":"else"}],"checkall":"true","repair":false,"outputs":2,"x":1139.55517578125,"y":457.6666564941406,"wires":[["5b154c55.8fedb4"],["25f63b75.4114a4"]]},{"id":"5b154c55.8fedb4","type":"function","z":"607e0e83.a2db2","name":"get message","func":"msg.payload = msg.payload.results.messages[0].content;\nreturn msg;","outputs":1,"noerr":0,"x":1518.555419921875,"y":449.3332824707031,"wires":[["87515a0b.ef2b1","4d44d82a.fc5b58"]]},{"id":"87515a0b.ef2b1","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":1714.2222900390625,"y":401.6665954589844,"wires":[]},{"id":"4d44d82a.fc5b58","type":"link out","z":"607e0e83.a2db2","name":"","links":["a7dd435b.1abc88"],"x":1701.0556640625,"y":449.9166259765625,"wires":[]},{"id":"a7dd435b.1abc88","type":"link in","z":"607e0e83.a2db2","name":"return","links":["4d44d82a.fc5b58","b1137590.264d78","c46c1729.82ed1","92a2848b.63631","58631799.8b3298","6d7c7668.796ac","65477f41.df3b9"],"x":1955.6112060546875,"y":386.0555419921875,"wires":[["4e58edc6.9c611c"]]},{"id":"b1137590.264d78","type":"link out","z":"607e0e83.a2db2","name":"","links":["a7dd435b.1abc88"],"x":1623.333251953125,"y":229.0000991821289,"wires":[]},{"id":"c46c1729.82ed1","type":"link out","z":"607e0e83.a2db2","name":"","links":["a7dd435b.1abc88"],"x":1754.3331298828125,"y":705.7777709960938,"wires":[]},{"id":"d223c22f.5baf9","type":"inject","z":"607e0e83.a2db2","name":"06 01 02 03 04","topic":"test","payload":"06 01 02 03 04","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":339.46038818359375,"y":741.2381591796875,"wires":[["1dd13035.c2d908"]]},{"id":"25f63b75.4114a4","type":"switch","z":"607e0e83.a2db2","name":"if genre & phone present","property":"payload.results.conversation.memory.phone","propertyType":"msg","rules":[{"t":"null"},{"t":"else"}],"checkall":"true","repair":false,"outputs":2,"x":1289.22216796875,"y":550.3334045410156,"wires":[["5b154c55.8fedb4"],["d031e9a.072ac98"]]},{"id":"907249e0.1c92b","type":"function","z":"607e0e83.a2db2","name":"reset token","func":"global.set(\"conversation_token\",null);\nreturn msg","outputs":1,"noerr":0,"x":1538.3333740234375,"y":705.7778930664062,"wires":[["c46c1729.82ed1"]]},{"id":"c971a47e.c44068","type":"function","z":"607e0e83.a2db2","name":"get message","func":"genre = msg.payload.results.conversation.memory.genre.value;\nphone = msg.payload.phone;\nmsg.payload = \"Je t'envoie l'adresse d'un restaurant\";\n/*\" + genre + \" au \" + phone;*/\nreturn msg;","outputs":1,"noerr":0,"x":1678.22216796875,"y":518.6665954589844,"wires":[["b0e7e684.bc19f8"]]},{"id":"92a2848b.63631","type":"link out","z":"607e0e83.a2db2","name":"","links":["a7dd435b.1abc88"],"x":1970.5556640625,"y":483.111328125,"wires":[]},{"id":"b0e7e684.bc19f8","type":"function","z":"607e0e83.a2db2","name":"reset token","func":"global.set(\"conversation_token\",null);\nreturn msg","outputs":1,"noerr":0,"x":1850.221923828125,"y":515,"wires":[["92a2848b.63631","dc6982c1.c9cd1"]]},{"id":"dc6982c1.c9cd1","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":2020.888671875,"y":516.3333740234375,"wires":[]},{"id":"1830ca15.1ef316","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":1499.9998779296875,"y":651.7778930664062,"wires":[]},{"id":"cdee81e7.032ca","type":"function","z":"607e0e83.a2db2","name":"reset token","func":"global.set(\"conversation_token\",null);\nreturn msg","outputs":1,"noerr":0,"x":1773,"y":296.33343505859375,"wires":[["74bd8dc8.bafb5c","6d7c7668.796ac"]]},{"id":"74bd8dc8.bafb5c","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":1961,"y":254.33343505859375,"wires":[]},{"id":"6d7c7668.796ac","type":"link out","z":"607e0e83.a2db2","name":"","links":["a7dd435b.1abc88"],"x":1895,"y":294.33343505859375,"wires":[]},{"id":"7a0dfe1e.bf0bb","type":"function","z":"607e0e83.a2db2","name":"Et là c'est le bug !","func":"msg.payload = \"Et là c'est le beug\"\nreturn msg;","outputs":1,"noerr":0,"x":1329.9998779296875,"y":705.7778930664062,"wires":[["567209bb.f90e1","907249e0.1c92b"]]},{"id":"65477f41.df3b9","type":"link out","z":"607e0e83.a2db2","name":"","links":["a7dd435b.1abc88"],"x":1751.9998779296875,"y":821.7778930664062,"wires":[]},{"id":"567209bb.f90e1","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":1538.9998779296875,"y":743.7778930664062,"wires":[]},{"id":"d031e9a.072ac98","type":"string","z":"607e0e83.a2db2","name":"trim","methods":[{"name":"replaceAll","params":[{"type":"str","value":" "},{"type":"str","value":""}]},{"name":"trim","params":[]}],"prop":"payload.results.conversation.memory.phone.raw","propout":"payload.phone","object":"msg","objectout":"msg","x":1491.72216796875,"y":556.0000305175781,"wires":[["c971a47e.c44068","c48a1b8b.b92e1","904ab856.4d5fc"]]},{"id":"c48a1b8b.b92e1","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":1655.72216796875,"y":603,"wires":[]},{"id":"ead95919.d45538","type":"function","z":"607e0e83.a2db2","name":"reset token","func":"global.set(\"conversation_token\",null);\nreturn msg","outputs":1,"noerr":0,"x":1523.9998779296875,"y":823.7778930664062,"wires":[["65477f41.df3b9"]]},{"id":"96fb8cb7.6a028","type":"comment","z":"607e0e83.a2db2","name":"Return message","info":"","x":2021.1666259765625,"y":348.3333740234375,"wires":[]},{"id":"ac594ebf.4bfe78","type":"http request","z":"607e0e83.a2db2","name":"send SMS","method":"GET","ret":"txt","url":"http://10.0.0.23:1880/sendsms?phone={{payload.phone}}&msg={{payload.restaurant}}","tls":"","x":2119.77783203125,"y":555.5555419921875,"wires":[[]]},{"id":"904ab856.4d5fc","type":"switch","z":"607e0e83.a2db2","name":"switch genre","property":"payload.results.conversation.memory.genre.value","propertyType":"msg","rules":[{"t":"regex","v":"bistro","vt":"str","case":true},{"t":"regex","v":"pizzeria","vt":"str","case":true}],"checkall":"true","repair":false,"outputs":2,"x":1677.8890380859375,"y":562.0000305175781,"wires":[["f92ae7d2.f9e578"],["a2e80a11.7d646"]]},{"id":"a2e80a11.7d646","type":"function","z":"607e0e83.a2db2","name":"if pizzeria","func":"msg.payload.restaurant = \"Adresse d'une bonne pizzeria dans le quartier..\";\nreturn msg;","outputs":1,"noerr":0,"x":1840.333251953125,"y":593.3334045410156,"wires":[["2556a995.043886"]]},{"id":"f92ae7d2.f9e578","type":"function","z":"607e0e83.a2db2","name":"if bistro","func":"msg.payload.restaurant = \"Adresse d'un bon bistro dans le quartier..\";\nreturn msg;","outputs":1,"noerr":0,"x":1841.333251953125,"y":555.8888854980469,"wires":[["2556a995.043886"]]},{"id":"2556a995.043886","type":"string","z":"607e0e83.a2db2","name":"","methods":[{"name":"replaceAll","params":[{"type":"str","value":"'"},{"type":"str","value":" "}]}],"prop":"payload.restaurant","propout":"payload.restaurant","object":"msg","objectout":"msg","x":1979,"y":556,"wires":[["ac594ebf.4bfe78","8afd949b.e06aa"]]},{"id":"8afd949b.e06aa","type":"debug","z":"607e0e83.a2db2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","x":2108,"y":604,"wires":[]}]

Sur Recast, si vous voulez voir de plus prêt le chatbot utilisé dans cet article, vous pouvez y accéder en allant sur la plateforme de la communauté. Ce chatbot se nomme « Johnny » car il parait qu’il faut toujours trouver un nom à chatbot.

Machine learning, changement de paradigme

Le principe du Machine learning est d’entraîner son moteur d’IA avec pleins d’exemples, pour qu’il puisse de lui-même en trouver les caractéristiques communes et devenir capable de traiter des formulations qu’on n’aurait pas prévu. En terme de conception de programme, cette approche est un changement de paradigme. On ne programme plus des algo qui déterminent tous les cas à l’avance. On prévoit des comportements en fonction d’analyses probalistiques qui peuvent évoluer. L’entraînement est donc un process itératif.
Ce qui est intéressant de savoir c’est qu’en 2012 le machine learning a permis d’obtenir de meilleurs résultats pour faire de la reconnaissance d’image. Pour autant on ne sait pas démontrer pourquoi cela fonctionne mieux ! Donc il faut rester réservé sur l’engouement du machine learning, car si cela se trouve d’ici peu, on trouvera une approche encore plus efficace !

Entraîner son chatbot

Concernant notre assistant vocal, évidemment il est très jeune. Il mérite d’être entrainé pour le rendre plus costaud.

Dans cette dernière vidéo nous allons voir comment fonctionne cette notion d’entraînement avec Recast. À ce stade pour rechercher un restaurant l’utilisateur dit « peux tu me conseiller un restaurant, puis pizzeria ». Si à la place il disait « je cherche un restaurant » et « j’adore la pizza » il est probable que notre assistant ne comprenne pas cette intention. Le but de l’entraînement va être d’apprendre au chatbot suffisamment de formulations pour qu’il interprète avec justesse l’intention de l’utilisateur.

Voici en vidéo, comment on procède :

Conclusion

Google a fait très fort en proposant ce Voice Kit en permettant de s’approprier la technologie de l’intelligence artificielle. A moins de 100 euros l’investissement, on est vraiment sur une démarche d’innovation frugale.

L’intérêt de développer sa propre solution c’est de pouvoir choisir les briques de service et de définir soi-même les règles de fonctionnement. Dans le cas présent, j’ai choisi de devoir appuyer sur le bouton afin de ne pas avoir un système qui vous écoute toute la journée… et qui se met à dire d’un seul coup « Désolé je n’ai pas compris » alors que vous n’étiez absolument pas en train de lui demander quoique ce soit. J’ai également choisi que l’orchestration se fasse en local via le RPI, ce qui sécurise fortement les interactions avec les autres objets connectés de son domicile.

L’objet de cet article était d’utiliser juste ce qui était nécessaire pour arriver à faire un assistant vocal.. Objectif atteint ! Concernant les API de Google ou de Recast nous les avons juste survolé. Ces plateformes ont beaucoup d’autres fonctionnalités qui méritent votre attention.

Pour aller plus loin

Le fait que les moteurs NLU et NLP soient dans le cloud, sont des risques de fuites d’informations privées. Une prochaine étape serait d’installer en local le NLU, sur le RPI. Dans les solutions possibles pour y arriver, il y a le Vision Kit de Google qui intègre une carte GPU avec Tensorflow (mais en rupture de stock). Il y a la clé de Movidius qui utilise la même GPU. Une autre piste est de s’appuyer sur l’approche de Snips.ai.

Pour le moteur NLP, je vois un intérêt à passer par le cloud pour s’appuyer sur une communauté comme celle de Recast. Car en mettant en publics ses « skills », on partage son savoir-faire. Pouvoir faire un « fork » d’un cas de figure déjà abordé fait gagner du temps, mais surtout c’est un moyen de voir différentes approches pour faire le « design » d’une conversation.

The post S’initier à l’IA avec un assistant vocal fait maison appeared first on Domotique Info.

Autoconsommation Photovoltaïque et Domotique

$
0
0

Autoconsommation photovoltaïque et Domotique sont au menu des réjouissances. Vous l’aurez compris je vous propose aujourd’hui de traiter d’un dossier essentiel pour les ménages Français : L’Energie ou en tous cas son coût. Nous allons dans cet article essayer d’y voir plus clair sur certaines zones d’ombres autour du soleil, de l’énergie et du photovoltaïque. Comme nous sommes passionné de domotique, nous ferons forcement référence à ce que peuvent apporter nos dispositifs modernes de comptages et de pilotages d’appareils dans nos maisons.

Cette article vous propose d’éclaircir les points clés utiles à la mise en oeuvre d’une installation photovoltaïque en autoconsommation. Qui plus est, démystifier la complexité de ce type projet résidentiel.

Le premier point à préciser est la différence entre une installation en mode « revente » et une installation en mode « autoconsommation ».

  • En mode revente, 100% de votre production est injectée sur le réseau de distribution avec un prix de rachat au kWh.
  • En autoconsommation, votre installation photovoltaïque est prévue pour consommer votre production localement dans votre habitation. On peut cependant dans ce deuxième mode revendre à moindre valeur l’excédant de production non consommée.

Remarque importante : Il existe sur la toile pléthore d’articles et dossiers qui peuvent paraître parfois complètement opposés dans leurs propos ou raisonnement. Il faut considérer la date de l’article pour mieux comprendre les divergences. En effet, dans le domaine photovoltaïque, il a eu depuis quelques années beaucoup de changements réglementaire, économique et d’innovation technologique qui ont un impact direct sur la perception de ce domaine. Pour cela, il faut replacer ces articles dans leur contexte d’origine, et ne pas forcement comparer leur contenu aussi simplement.

1. L’énergie et la domotique

Il y a quelques de temps déjà le blog Abavala se faisait écho des évolutions marketing du phénomène « SmartHome ». Une Smart Home devrait selon Coldwell Banker et CNET, avoir une connexion Internet (câble, satellite, fibre ou ADSL), au moins 3 catégories de fonctionnalités et l’une d’entre elle doit obligatoirement être la sûreté ou la gestion de la température. Avec les fonctions possibles suivantes :

  • Eclairage (ampoules connectées ou systèmes complets d’éclairage) ;
  • Sécurité (détecteur d’incendies, détecteurs de monoxyde de carbone, veilleuses) ;
  • Loisir (smart TV et servies de streaming) ;
  • Électroménager (smart réfrigérateurs, smart lave-vaisselles, smart lave-linges) ;
  • Chauffage / Climatisation (systèmes connectés de chauffage, ventilation et climatisation, smart ventilateurs ou évents) ;
  • Extérieur (capteur pour plantes et systèmes intelligents d’arrosage) ;
  • Sûreté (verrous connectés, smart alarmes ou caméras) ;
  • Température (thermostats connectés).

On le voit bien ici, pas de notions directes d’économies énergétiques. Il semblerait donc que la composante énergétique soit intégrée uniquement de manière transversale à tous les éléments listés ci-dessus, sans être finalement un objectif de valeur essentielle.
Cette approche me plait guère car elle est représentative de la consommation énergétique nord américaine avec un prix d’achat peu élevé de l’électricité.

Nous pouvons le voir dans le graphique suivant :

/var/www/vhosts/domotique info.fr/httpdocs/wp content/uploads/2016/09/domotique info tarif electricite pour particuliers dans le monde en 2012

Remarque : Le graphique est assez ancien 2012, cependant le groupe des pays en bas de liste reste toujours le peloton de tête de l’énergie à bas coût.

En effet, le Canada est son puits infini d’énergie hydro-électrique (plutôt propre) ainsi que les Etats-unis et son penchant pour les énergies fossiles sont eux moins touché par la problématique. La facture annuelle d’une habitation là-bas coûte aussi cher qu’en France mais en consommant presque deux fois plus.

Pour rappel, les fondamentaux à la française avant la définition de « Coldwell Banker » étaient de définir la valeur ajoutée de la domotique avec quatre axes d’améliorations de votre logement :

  • le confort (automatisation, personnalisation, et intelligence de votre système) ;
  • les économies (connaitre vos consommations pour appliquer des stratégies économique adaptées) ;
  • la sécurité (alarme incendie, inondation, intrusion, surveillance vidéo …) ;
  • l’aide à l’autonomie (le contrôle de votre habitat depuis un terminal informatique).

Il semblerait donc que la valeur « économie d’énergie » disparaisse pour Coldwell Banker et CNET à l’approche du marketing et de la « consumerisation ».

Il semblerait aussi que les 15% d’économie d’énergie potentielle avec la domotique uniquement, ne soit pas une valeur importante. Le fait même de savoir combien consomme un appareil sur la facture annuelle est une prise de conscience ayant un impact direct sur nos futurs manières de consommer cette énergie avec cet appareil.

Alors ne pas considérer l’aspect énergétique comme une valeur fondamentale pour la « Smarthome » semble être très adapté à une population encore peu sensible à l’impact carbone, et à la nécessite de consommer l’énergie de manière raisonnée.

2. Autoconsommation photovoltaïque

C’est quoi l’autoconsommation photovoltaïque ? Je cite la définition du Groupement des Particuliers Producteurs d’Electricité Photovoltaïque.

Produire soi-même une partie de son électricité pour sa propre consommation, un peu comme on cultive les légumes de son potager, c’est possible, tant réglementairement que techniquement.

Outre la satisfaction de produire et d’utiliser une énergie renouvelable, cette production est devenue intéressante financièrement. L’augmentation croissante du coût des énergies « traditionnelles » et la baisse du prix des matériels ont rendu possible la production d’une partie de son énergie pour moins cher qu’on ne l’achète aux fournisseurs classiques.

L’autoconsommation est un moyen de réduire ses coûts de consommation électrique, en complément des autres moyens existants : optimisation de l’isolation, rénovation énergétique, choix d’appareils moins énergivores, changement des habitudes …

3. Les utilisateurs

A ce jour, il y a les technophiles et leurs maisons connectées d’un côté, et les respectueux de l’environnement aux maisons bioclimatique, BEPAS et BEPOS à forte efficacité énergétique de l’autre côté. Il existe aussi des personnes à l’intersection des deux mondes.

La convergence des deux mondes est complexe, car les technophiles veulent bousculer les habitudes métiers du bâtiments, cela même si les normes et réglementations ont déjà bien changer les méthodes de constructions, et même si nos ancêtre concevez naturellement des maison bioclimatique à leur époque.

A de rares exceptions près, il semble dommage de ne pas suffisamment considérer l’instrumentation de la maison comme essentielle à l’optimisation et la rationalisation de la gestion d’énergétique de nos domiciles.

Comme ce débat est complexe et épineux, commençons par dépassionner le sujet en anticipant les futurs commentaires de lecteurs aux approches parfois très différentes ou tranchées.

Beaucoup diront que pour faire des économies d’énergies, il suffit de moins consommer et de ne pas perdre d’énergie avec une isolation parfaite. C’est effectivement la base, mais nos besoins en énergie ne se limitent pas au chauffage et ne cessent d’augmenter.

Nos usages de l’énergie électrique n’ont fait qu’augmenter avec l’apparition d’usages moderne comme l’électroménager et le confort auquel nous aurions du mal à renoncer pour vivre comme il y a cinquante ans.

En se projetant un peu dans le futur proche, d’ici 10 ans par exemple, de nouveaux besoins vont se généraliser comme par exemple les bornes de recharges résidentielles pour voiture électrique. D’un seul coup nous aurons besoins de 25% à 50% d’énergie électrique supplémentaire. Il est donc facile de comprendre que nos besoins ne font qu’augmenter. Je cite l’étude INSEE « La consommation des ménages depuis cinquante ans » :

Depuis cinquante ans, les Français ont, sauf en 1993, consommé un peu plus chaque année, si bien qu’aujourd’hui le volume annuel de consommation par personne est trois fois plus élevé qu’en 1960.

Réduire nos consommations reste effectivement très logique, mais faire baisser la quantité de Kilowatt/heure ou de fluides fossiles ne réduit plus la facture en raison d’une augmentation constante du coût des énergies. Dans cette logique, les efforts que nous mettrons en oeuvre seront bon pour l’écologie (émissions de co2) mais seront sapés par les augmentations régulières des énergies.

L’énergie renouvelable et plus précisément l’énergie potagère solaire est un sujet très passionnant, mais à ce jour encore, il y a toujours autant de détracteurs amenant morosité, confusion et visions parfois pessimistes sur le secteur photovoltaïque. Mettons de côté les écolo-sceptiques qui ne veulent se remettre en cause depuis bien plus de vingt ans.

Il y a,

  • Ceux qui ont un opérateur local alternatif vantant 80% d’EnR dans leur mix énergétique mais ne voulant pas en savoir plus quant au bouquet d’énergies.
  • Ceux qui ne voient que les panneaux photovoltaïque bas coûts et basse qualité Chinois et leur empreinte carbone.
  • Ceux qui ne comprennent pas qu’on va payer toujours plus cher pour démanteler pendant 50 ans au mieux les centrales nucléaires.
  • Ceux qui travaillent chez Areva, Enedis alias ERDF et qui ont une affinité directe ou indirecte assumées ou pas avec les lobbies Nucléaire.
  • Ceux qui sont bien conscient que l’énergie n’est pas si chère en France.
  • Ceux qui radin ou pas ne veulent plus subir les augmentations et si possible réduire la facture.
  • Ceux convaincus par la connaissances du photovoltaïque, fans des EnR, de l’énergie potagère, les aficionados du photovoltaïque.
  • Ceux persuadés que le photovoltaïque n’est pas écologique.
  • Ceux qui préfèrent trouver des excuses pour ne jamais rien faire ou tenter.
  • Ceux qui retiendront uniquement les affaires douteuses où l’arnaque a été au rendez-vous.
  • Ceux qui ne savent pas que l’on peut consommer ce qu’on produit.
  • Ceux qui n’écoutent que les « influenceurs » de leur entourage immédiat.
  • Ceux qui ont été abusé par des sociétés peu scrupuleuses aux méthodes de vente forcées.
  • Ceux qui ne savent pas et qui voudraient comprendre, pour qui cet article sera opportun.
  • Et j’en oublie certainement…

4. Comprendre

Rien ne vaut de se faire une idée par soi-même en s’intéressant profondément au sujet avant d’émettre un point de vue souvent déplacé ou parfois absurde. D’abord on ne peut nier que le photovoltaïque apporte et apportera une part toujours plus grande dans le mix énergétique mondiale. Ou alors en France seulement ;).

D’un point de vue écologique, on le sait bien maintenant il faut arrêter d’annoncer n’importe quoi. Il faut 3 ans à un panneau pour produire l’énergie utile à la compensation carbone de sa fabrication. Ce qui sur une durée de vie des panneaux d’au moins 25 ans est attractif. C’est une des énergies du top 3 les plus propre.

Le recyclage est aussi un sujet sensible et il existe une grosse littérature en ligne. Les réseaux de recyclage existent depuis déjà presque une décennie et une grande partie du produit est recyclé pour fabriquer d’autres panneaux Photovoltaïque (c’est donc assez vertueux si correctement appliqué).

Et le tellure de cadnium direz-vous ? C’est un sujet controversé ou la discorde est au rendez-vous. Mais à chaque fois on oublie notre situation actuelle avec nos centrales nucléaire nécessitant 40 à 50 ans de démantèlement sans obligation de résultat en termes de déchets radioactifs.

Avons-nous le choix et que faut-il préférer ? Soit on ne fait rien et on attend qu’une alternative énergétique 100% propre voit le jour, soit on fait quelques choses en acceptant le minimum de risque. De tout façon on le sait déjà, c’est un ensemble d’énergies dites propres qui constituent le bouquet du mix énergétique et non pas une seule énergie. C’est un ensemble de compromis que le futur nous imposera. L’actualité récente nous démontre jour après jour que certains pays comme le Portugal, l’Allemagne, le Costa-Rica et bien d’autres développent et expérimentent l’autonomie énergétique sans énergies fossiles.

Il faut comprendre aussi qu’il est délicat d’aborder un sujet aussi complexe faisant appel à beaucoup de connaissances sans un minimum de curiosité, de recherches et de documentations. Pour cela, vous trouverez en fin d’article une bibliographie internet pour approfondir ce petit dossier. Cet article n’a pas vocation à convaincre mais plutôt d’aider les presque convaincus à mettre le pied à l’étrier en faisant un petit tour d’horizon.

Voici une vidéo très pédagogique avec Jamy que je conseille. L’approche « revente » et « stockage batterie » sont critiquables mais cela reste une vidéo, qu’il faut remettre dans son contexte en 2012.

5. Types d’installations

Lorsque l’on veut se lancer dans l’aventure, on se trouve confronté aux différents cas d’usages des installations. Il existe en effet 3 catégories d’installations qui on un coût allant du simple au double en raison principalement des contraintes techniques et matériels, mais surtout en raison de la main d’oeuvre. Il faut savoir qu’il est tout çà fait possible d’envisager de faire soi-même en auto-installation.

Dans le cadre d’une installation en autoconsommation photovoltaïque la revente n’est pas recherchée. Pour cela les installations en intégration bâti ne sont pas imposer par la réglementation du rachat. Vous pouvez bien entendu installer en intégration au bâti, mais cela coûtera plus cher pour rien de mieux (au contraire) en dehors de considérations esthétiques (WAF).

Voici donc les 3 grands types d’installations possibles :

  • Intégration au bâti (IAB) : Dans ce cas, les panneaux solaires sont incorporés au toit et doivent assurer la fonction d’étanchéité. C’est techniquement complexe en raison de la contrainte d’étanchéité, onéreux et était plutôt réservé à la production pour revente qu’à l’autoconsommation photovoltaïque. C’est un long amortissement avant retour sur investissement. Cette typologie d’installation est en voie de disparition.
  • Intégration simplifiée au bâti (ISB) / Surimposition : La fonction d’étanchéité n’est pas obligatoire et les panneaux ne sont pas obligés de respecter la pente de la toiture. C’est une alternative à l’IAB réduisant les coûts d’installations mais aussi en réduisant la perspective du tarif de rachat.
  • Au sol ou toit plat : C’est une déclinaison du type surimposition, mais cela offre surtout l’avantage d’être auto-installable sans compétence de couvreur en raison de la simplicité de pose à plat sur châssis dédié. Cela permet aussi une meilleure ventilation des panneaux pour ainsi avoir un meilleur rendement de production.

voici dans ce tableau les critères déterminant le choix entre types d’installations (1 = Mauvais, 2 = Intermédiaire, 3 = Bon) :

types-d-installations

Vous l’aurez compris, rien ne sert de se lancer dans des travaux invasifs comme l’IAB lors que l’objectif est l’autoconsommation. Ce tableau n’est que le reflet de mon analyse de la situation et de ma volonté de faire par moi-même.

Attention, les élus locaux vont vous mentir au sujet des installations surimposées : 10 raisons d’autoriser le photovoltaïque surimposé (Encore un document du GPPEP).

A la lecture de ces quelques lignes, une question commence à vous chatouiller.

5.1. Autoconsommation ou revente ?

Alors vous auriez posé cette question il y a encore 5-6 ans cela n’aurait pas été simple de répondre, mais à ce jour le tarif de rachat de la production des particuliers est passé de 58 centimes d’Euro du kWh en 2011 à  moins de 20 centimes aujourd’hui (- 65% en 7 ans).

5.1.1. Revente

On le voit dans le graphique ci-dessous, la courbe de rachat a subit une chute très rapide en peu de temps. Dans ce même graphique on constate aussi que le tarif d’achat a lui augmenté régulièrement ces 5 dernières années.  La tendance ne laissant pas présager une inversion de courbe (au contraire), il est admis aujourd’hui que le mode revente ne soit plus compétitif face à l’autoconsommation.

historique tarifs achat et revente

5.1.2. Amortissement et retour sur investissement

Comme toujours le fais-le-toi-même aura raison du prix. Nous savons qu’une grande partie de nos lecteurs sont de grands bricoleurs fervents du DIY. Je me suis donc amusé à comparer deux perspectives d’installations. C’est anecdotique car ma comparaison est assez opposée en terme de main d’oeuvre. Mais cela permettra à des personnes compétentes d’envisager la perspective d’auto-installation totale ou partielle.

Voici mon raisonnement :

Si je compare pour la zone géographique de Montpellier l’auto-installation d’un kit sol de 3 kWc en autoconsommation qui s’achète aujourd’hui à environ 4500€ avec l’intégralité des éléments (en micro-ondulation), et qui plus est de marques, face à l’installation en intégration au bâti de 3 kWc pour la revente avec un professionnel au prix constaté de 12000€, je comprends rapidement mon intérêt économique.

Vous me direz que j’ai réduit l’investissement en raison principalement de la main d’oeuvre à première vue. Mais qu’en est-il si l’on compare le retour sur investissement ?

Taux d’autoconsommation = Production consommée sur place / Production totale.
On estime qu’une habitation non instrumenté auto-productrice consomme 30 à 40% de l’électricité qu’elle produit. Plus il est élevé, moins vous utilisez d’électricité venue du réseau public, donc plus vous économisez sur vos factures d’électricité !

La domotique peut nous permettre d’atteindre 60% d’autoconsommation. Sur la base de 60% d’autoconsommation de la production annuelle de 4300kWh/An pour Montpellier (Faites votre simulation ici [PVGIS5]) il est possible d’obtenir les perspectives économique du graphique ci-dessous.

autoconsommation 60% ROI

Auto-consommer 100% de sa production sans stockage n’est pas possible. Envisager de stocker en batteries est un tout autre raisonnement plombant considérablement le retour sur investissement.

Par contre, il est possible d’optimiser les intermittences solaires avec une instrumentation domotique comme les nôtres. Il suffit d’opérer des lestages/délestages de charges consommatrices en fonction de l’énergie disponible, et ainsi  consommer près de 60% de votre production photovoltaïque. Les 40% restant seront injecté sur le réseau de distribution avec ou sans contrat de rachat du surplus.

60% de taux d’auto-consommation est un challenge considérable qu’il n’est pas possible de mettre en oeuvre dans toutes les habitations. Et encore moins sans instrumentation spécifique.

Le graphique montre qu’à la neuvième année l’amortissement de l’installation en autoconsommation sera faite, alors qu’il faudra 19 ans pour atteindre l’amortissement en installation pour revente. Lorsque l’installation pour revente sera amortie, l’installation en autoconsommation aura épargné 6400€ de facture d’électricité.

Bien entendu, ceux qui auront moyen de réduire les coûts en auto-installation pour la revente me feront mentir. Je veux là mettre en évidence le poste main-d’oeuvre qui impacte fortement l’investissement. En effet, le prix des équipements a considérablement chuté en quelques années.

5.1.3. Maintenance

Le graphique place des rendez-vous de maintenances de votre installation. Il faut en effet intégrer le fait qu’il faudra changer son onduleur en moyenne tous les 10 ans. Pour les installations avec micro-ondulations, les constructeurs annoncent 25 ans de garantie, mais dans les faits la micro-ondulation est une technologie assez jeune (10 ans) pour laquelle il n’existe pas de réalité sur la durabilité.

5.2. Onduleur ou micro-onduleur ?

Alors là on entre dans un long débat pour lequel je n’aurai pas de position ferme à vous offrir sans connaitre le contexte d’installation terrain et les objectifs attendus. En effet, si l’on prend les arguments habituelles des deux technologies, aucune ne se démarque vraiment en termes de performances. Je suis moi-même indécis à ce sujet et j’attends d’en savoir plus quant au contexte. D’ailleurs la course à quelques petits point de rendement n’a pas de sens en raison des prix exagérément supérieurs.

Il existe une explication assez générale de la nuance entre les deux technologies qui me semble suffisante pour comprendre que cela n’est pas simple de choisir. Je cite le site photovoltaique.info :

On peut classer les onduleurs en fonction de leur différences d’intégration au système photovoltaïque : les micro-onduleurs, les onduleurs string et les onduleurs centraux.

Les micro-onduleurs et les onduleurs string correspondent à un système décentralisé : ils ne gèrent qu’une partie de l’installation. Dans le cas des micro-onduleurs, on a un micro-onduleur pour chaque module. Les onduleurs string quant à eux sont rattachés à un ensemble de modules (souvent une dizaine) branchés en série, on dit qu’ils appartiennent à un même « string ». Du fait qu’il peut avoir plusieurs entrées, un onduleur string peut être rattaché à plusieurs séries de modules et peut gérer ainsi un système de 500 Watts à 25 ou 30 kW. En revanche, les onduleurs centraux vont gérer l’ensemble ou une grosse partie de l’installation photovoltaïque, supérieure à 25 ou 30 kW.

Les responsables de dimensionnement se posent fréquemment la question du choix du système pour lequel il faut opter. Deux installations de même taille peuvent requérir un système différent car disposant d’une configuration différente.

L’installation et en particulier les coûts de fonctionnement sont les premiers critères de décision à prendre en compte.

En raison de la convergence d’un ou plusieurs strings sur un seul onduleur, la solution en Ondulation string semble plus critique que la micro-ondulation. En effet, si l’onduleur est hors service, vous perdez toute votre production photovoltaïque durant la panne. Pour rappel, la mauvaise expérience de Cédric sur maison-et-domotique.com. Au contraire tous l’intérêt de disposer de plusieurs micro-onduleurs permettra de n’avoir qu’une partie de votre production en rade.

Le raisonnement est le même pour les panneaux photovoltaïque. En effet, il faut savoir qu’il suffit d’un panneau défectueux ou masqué sur un(e) string pour pénaliser la production du string en entier.

Il semble donc plus logique d’utiliser la micro-ondulation en raison de la redondance des points de productions. Certes ce n’est pas donné mais cela fiabilise la continuité de service.

En dehors de la norme allemande et sa protection de découplage DIN VDE 0126-1-1/A1 il n’y a pas de contrainte de choix à ce jour.

On pourrait développer plus avant le sujet mais le sujet du dossier est l’Autoconsommation et la domotique.

5.3. Les panneaux photovoltaïques

Ici encore une fois, le choix n’est pas simple. Le marché du panneau photovoltaïque offre une palette très large de possibilités avec pour représentation un prix d’achat allant su simple au double. Le choix des panneaux répond aussi à une contrainte de « couple » panneaux/onduleur(s). En effet, on n’associe pas n’importe quels panneaux avec n’importe quels onduleur ou micro-onduleur. Cette partie est pour moi la plus complexe, car elle fait appelle à une connaissance que je maîtrise pas.

Les principaux critères de choix des panneaux :

  1. Compatibilité couple onduleur(s)
  2. La norme Française (NF EN61215  NF EN61646 NF EN61730)
  3. Le prix au m²
  4. Le rendement (15 à 20%)
  5. La technologie

S’attacher exclusivement au rendement n’est pas forcement la bonne stratégie économique. Gagner 1 à 2% de rendement peut pénaliser fortement l’amortissement en augmentant considérablement l’investissement sans offrir le retour sur investissement proportionnel.

Mon raisonnement pour composer un ensemble cohérent est donc le suivant :

  • Il faut déterminer si l’on part sur de l’ondulation ou de la micro-ondulation.
  • Il faut choisir le modèle d’onduleur ou celui des micro-onduleurs.
  • Ensuite trouver quels sont les panneaux « compatibles » et le couple de performance le plus efficace. Là les préconisations constructeurs nous aideront à choisir.
  • Confirmer votre composition par retour d’expériences s’il en existe (BDPV peut vous aider en cherchant des ensembles proche de votre choix).

5.4. L’auto-installation d’un kit

A titre d’exemple voici dans la vidéo ci-dessous une représentation de la mise en oeuvre d’un kit d’autoconsommation en micro-ondulation. C’est la vidéo explicative d’une boutique en ligne dans le domaine. Ce n’est pas de la publicité, mais il faut admettre que cette vidéo est très représentative de l’opération, et nous donne une idée de la complexité de l’installation.

Il faut tout de même reconnaître que la micro-ondulation bien que plus cher permet une auto-installation assez simplifiée nécessitant moins de compétences du photovoltaïque.

Je mets en garde les lecteurs, même si cela parait simple, la partie DC d’une installation photovoltaïque est très dangereuse à mettre en oeuvre sans connaissance des risques encourus.

Dans le cadres d’un projet d’installation photovoltaïque il y aura bien entendu des démanches administratives. Il existe un document encore une fois du GPPEP permettant d’aborder sereinement ces aspects.

6. Le dimensionnement

Nous allons vite comprendre que l’autoconsommation est un mode de production bien plus subtile que la logique de production qu’offre le mode « revente ». En effet, le modèle « revente » ne s’adapte pas aux habitudes de consommation de l’habitation, mais simplement à des objectifs de revenus financiers. Certes ces revenus pouvaient compenser grassement votre facture de consommation par le passé, mais ce modèle ne tend pas à rationaliser et réduire votre impact énergétique, voir même le contraire puisque souvent ces infrastructures produisent plus que le besoin journalier de cette habitation, et altère votre perception de l’équilibre avec vos réels besoins.

Ce n’est donc pas un acte éco-citoyen si pour autant vous ne réduisez pas vos consommations. Il faut aussi se demander qui paie le rachat (plus cher) de ce mode de production ? A votre avis, les consommateurs ?

Il y a de mon point de vue deux approches possibles dans le dimensionnement de son installation. Pour développer ces deux approches nous allons prendre un site géographique de référence à Bourges (centre de la France) dans les conditions optimum d’orientation et de pente d’une installation photovoltaïque.

En autoconsommation, l’objectif est de consommer un maximum de sa production (c’est pas si simple)

Il faut dans un premier temps comprendre ce que représente irradiance solaire en fonction de la saisonnalité. Voici dans le graphe ci-dessous une représentation de l’intensité solaire par tranches de saisons sous notre latitude.

variation irradidation annee

6.1. Le dimensionnement « raisonné »

L’approche simple est de considérer que nous voulons effacer en partie la consommation résiduelle de notre habitation. Cette consommation habituelle et constante en dessous de laquelle on ne descend jamais s’appelle le talon (ou bruit de fond).

En fonction de notre habitation et de nos usages minimum notre talon devrait être de 6 kWh à 21 kWh par jour. Considérant que l’ensoleillement moyen à Bourges et par an est de 8 heures, nous avons donc un tiers de 24 heures d’ensoleillement. Dans cette optique nous devrions donc pouvoir assumer un tiers des consommations du talon de l’habitation : 2 kWh à 7 kWh par 24 heures.

Affinons notre calcul. A Bourges pour une installation de 1 kWc nous aurons une production journalière moyenne (sur l’année) de 3 kWh par jour.

Mais attention, en janvier nous produirons 1,28 kWh/j et en juillet 4,3 kWh/j.

Considérant la période la moins productive de l’année, cette installation d’1 kWc devrait au minimum couvrir 21% de notre talon journalier de consommation (1,28/6) et 64% sur la période d’ensoleillement. Et en juillet pour 1 kWc nous devrions atteindre 71% de notre talon de consommation journalier, mais là l’effacement sera limité à la période ensoleillement de plus ou moins 13 heures et donc environ à peu près 50%.

Nous pouvons donc considérer que notre économie sera au mieux de 21 à 50% de ce talon de consommation en fonction de la saison.

Si mon talon journalier est de 6 kWh/jour, j’effacerais donc en moyenne annuelle 3 kWh/jour et donc 1 MWh par an (Environ 160€/an à 16 centimes le kWh).

Dans cette même approche, avec 2 kWc nous augmenterons effectivement la production utile l’hiver, mais le talon d’été sera incapable de consommer 100% de la production.

En conclusion, cette approche est intéressante en sous-dimensionnant la puissance de l’installation pour consommer presque 100% de la production ponctuellement. Attention cependant, car il y aura forcément de l’injection du surplus vers le distributeur d’électricité lorsqu’en été vous produirez plus que le talon ne consomme.

Il faut vraiment sous-dimensionner pour être certain de consommer l’intégralité de sa production. Cette technique est plus adaptée aux habitations avec un bruit de fond important et sans domotique.

6.2. Le dimensionnement « équilibré »

La deuxième approche est plus complexe. Elle tend à ajuster la puissance de l’installation en intégrant le talon toujours existant à l’effacement par lestage/délestage différés des consommateurs pour ne pas provoquer de pics de consommations supérieurs à la courbe de production photovoltaïque. En déplaçant les consommations dans le temps et plus particulièrement durant la phase d’ensoleillement journalier, il est possible de consommer 60% de sa production photovoltaïque l’été à condition d’avoir ajusté au mieux la capacité de production à vos consommations.

Simple à dire mais pas si facile à faire. En effet cela nécessite de savoir exactement comment nous consommons notre électricité et d’avoir un système de pilotage en capacité de s’adapter aux variations de production et au contexte météorologique.

Idéalement, il vous faudrait avoir analysé vos habitudes de consommations durant une année et d’identifié les gisements d’économies possible en fonction de l’intermittence solaire. Rare sont bien entendu les intégrateurs prenant en compte cette ajustement minutieux. Pour cela, une approche étape par étape peut permettre d’ajuster petit à petit un challenge raisonné auquel on ajoutera petit à petit des panneaux supplémentaires. Cette approche est donc plus simple en micro-ondulation en raison de la facilité d’évolution de votre installation.

6.2.1. Les facteurs impactant la production sont :

  1. Les masquages éventuels : Si je suis au fond d’une vallée, ma durée d’ensoleillement diminue fortement l’hiver.
  2. L’heure : Car hors variation du couvert nuageux, on produit plus en milieu de journée (11h à 15h).
  3. La météorologie : L’opacité du ciel dû à l’épaisseur de la couverture nuageuse, la température et l’humidité.
  4. Les saisons : La trajectoire solaire (en nos latitudes) étant plus basse en hiver que l’été.

orientation capteur solaire

Pour rappel l’article : Où est le soleil pour votre HomeCenter 2 ?

Quelques éléments de compréhension et quelques pistes :

Ajuster le dimensionnement de la production aux besoins et capacités de vos consommateurs n’est pas facile. La saisonnalité est importante ainsi que vos usages en consommation électrique.

L’hiver la production est réduite par le temps d’ensoleillement et l’angle d’incidence des rayons solaire sur l’angle optimisé de vos panneaux. Il faut donc faire un bilan énergétique précis pour identifier les consommateurs calés sur l’intermittence solaire. Certains fixerons leurs objectifs et le dimensionnement sur la capacité de production basse en hiver et aurons beaucoup de surplus d’énergie l’été. Et d’autre ajusterons leur capacité en fonction de l’été. Certains feront des concession économique et d’autres ne voudront pas baisser leur confort. Personne n’a la solution unique car cela dépendra de notre bilan énergétique annuelle et du niveau de confort attendu. En effet, consommons-nous plus l’hiver que l’été ? Climatisation l’été, filtration piscine ou encore pompe à chaleur piscine, chauffage, soutirage en au chaude sanitaire (…) sont les consommateurs qui bousculent le raisonnement simpliste tendant à penser que l’on consomme plus l’hiver. Cela dépendra avant tout des conditions climatique du lieu et de la variabilité météorologique.

Il est justifié de disposer d’un parc batterie dans le cadre de sites isolés de la distribution d’électrique, mais on le sait tous, le stockage d’énergie en batterie nuit au rendement économique d’une solution en autoconsommation. En effet, l’investissement et la nécessité de changer les batteries régulièrement en raison de perte de capacité principalement pénalisent complètement l’amortissement.

Mais alors comment pouvons-nous stocker de l’énergie électrique sans impact sur l’investissement et l’amortissement et donc sans parc batteries ?

Exemple :

Si nous prenons l’exemple d’un ballon d’eau chaude électrique de 300 litres (Pour rappel 40-50 litres par jour par personne en moyenne), on remarque que la saisonnalité change considérablement ce besoin d’eau chaude sanitaire (ESC). L’été le besoin d’eau chaude diminuera alors que l’hiver il augmentera. Nous constatons cet effet simplement en mesurant la quantité d’énergie moyenne (kWh/24h) utile pour chaque saison.

Pour ma part, je constate donc que 6-8 kWh/jour sont consommé l’été pour une famille de 4 personnes et l’hiver de 10-12 kWh/jour. Il est donc facile de comprendre que le besoin d’énergie n’est pas le même en fonction de la saison. Notons au passage que ce ballon d’eau chaude électrique (BEC) représente en moyenne près de 25% de la facture électrique annuelle.

Le cas du BEC électrique est intéressant car ce dernier peut devenir dans le cas du photovoltaïque un tampon de stockage de l’énergie. J’entends déjà les puristes crier « sacrilège » en m’expliquant que le rendement thermique/thermique (solaire thermique) et 3 fois supérieur que l’électrique/thermique (photovoltaïque).

Technologiquement parlant ils auront raison de crier, mais d’un point de vue pratique peu d’installation solaire thermique atteignent les objectifs économiques en raison des coûts de maintenances de l’installation (plomberie). Si vous possédez déjà une installation solaire thermique, sachez tout de même qu’il est aussi possible d’exploiter la résistance d’appoint de ce type d’installation en utilisant l’apport photovoltaïque sur cette résistance en hiver par exemple.

Pour information : Le coût d’une installation pour un Chauffe-Eau Solaire Individuel (CESI), équipé de 3 à 5 m² de capteurs et d’un ballon de 200 à 300 litres varie entre 4 000 € et 8 000 €, pose incluse avant déduction des différentes aides (CI). Si vous désirez installer des capteurs intégrés à la toiture, vous devrez compter environ 15% en plus.

Est-ce si compétitif que simplement utiliser l’électricité produite par vos panneaux photovoltaïques dans une installation classique avec un ballon électrique de 300 litres à 500€ ? Certes comme dit plus haut c’est aberrant en termes de rendements, mais complètement justifié de profiter de l’opportunité. Il est cependant évident que le cumul des technologies Thermique et Photovoltaïque n’est pas la meilleure des idées du point de vue investissement. Mais complètement compatible et cohérent d’une point de vue technique.

Toute la pertinence du photovoltaïque réside dans l’analyse de votre bilan énergétique et l’identification des gisements économique.

Comment déterminer la puissance de son installation ?

Un document bien fait est rédigé par le blog Mi.c.e.s. est disponible ici.

6.2.2. Heures Pleines / Heures creuses

Un éclaircissement s’impose concernant les Heures creuses nocturne. Ce type de souscription est liée à la commune pour les tranches heures creuses et ne vaut économiquement que sur les contrats supérieurs à 6kVA, et si vous consommez au moins 35% durant les heures creuses à l’année.  Ce qui veut dire qu’en déplaçant vos consommations durant les phases d’ensoleillements vous limiterez l’usage « Heures creuses » et votre consommation annuelle sera inférieure au 35% attendue. Sauf  si vous disposez d’heures creuses méridiennes, il faut préférer l’option de base sans heures creuses (Un guide).

6.2.3. Identification des gisements d’économies

Nous l’avons compris le but est d’opérer le déplacement dans la journée des consommations, afin de le mettre en adéquation la consommation face à la production (Offre et demande), pour ainsi créer un effacement du soutirage au réseau de distribution.

Voici une liste de consommateurs électriques pouvant être considérés dans le raisonnement d’effacement :

Uniquement l’été :

  • Une climatisation (800Wh à 4000 Wh) (Stockage inertie thermique)
  • Une filtration piscine (150Wh pour 10m3 à 1500Wh pour 100m3)

Toute l’année :

  • Pompe à chaleur piscine l’hiver (1000 à 4000 W) (Stockage inertie thermique)
  • Un ballon d’eau chaude électrique (1000 à 3000 W) (Stockage inertie thermique)
  • Un BEC thermodynamique (600 à 1500 W) (Stockage inertie thermique)
  • Une pompe à chaleur chaud ou froid (Stockage inertie thermique)
  • Pompe puisard pour arrosage nocturne (500 à 1000 W) (stockage d’eau en cuve [step])
  • Compresseur air comprimé (Stockage d’air)
  • VMC double flux

Uniquement l’Hiver :

  • Plancher chauffant (Stockage inertie thermique)
  • Les radiateurs électriques (Stockage inertie thermique)

Si vous n’avez rien de tout cela, que vous chauffez au fioul, au bois ou au gaz, vous ne pourrez effectivement qu’effacer votre talon récurrent de consommation. Le photovoltaïque ne correspond pas à votre mix énergétique.

7. Valeur ajoutée de la domotique

La domotique est le complément idéal à l’autoconsommation. Le foyer disposant de dispositifs pilotant les actions d’allumage/extinction de consommateurs sera en capacité d’absorber plus de production qu’un foyer non équipé. Nous sommes de facto une population favorisée et en capacité d’optimiser considérablement notre taux d’autoconsommation par lestage/délestage scénarisés en fonction de nos habitudes de vie.

En effet nous pouvons décider de mettre en place des scénarios adaptés à toutes les situations en fonction de la production mesurée, de nos présences dans l’habitation, de la saisonnalité, du nombre de résidents et tout autres éléments contextuels et environnementales.

Pour ceux n’ayant pas de domotique dans leur résidence, il existe sur le marché des solutions d’effacements intégrées permettant d’obtenir un résultat équivalent. En Europe, principalement 4 sociétés proposent des dispositifs d’optimisation de l’autoconsommation (Par ordre alphabétique) :

  • Comwatt [France] (Un contrôleur, un écosystème Zwave et IP + Cloud) – Réseau d’installateurs – Pas de vente directe.
  • Elios4You [Italie] (Un contrôleur, écosystème IP et Zigbee + Un gradateur de puissance* + Cloud payant) – Disponible en vente directe
  • Full Home Energy [France] (Un contrôleur, un écosystème Zwave et IP + Cloud) – Réseau d’installateurs – Pas de vente directe.
  • Mylight System [France] (Un contrôleur, un écosystème IP/CPL + Cloud)- Réseau d’installateurs – Pas de vente directe.

* Un gradateur de puissance : La régulation de puissance (gradation) permet dans le cadre d’un consommateur résistif (Dalle électrique chauffante ou ballon d’eau chaude par exemple) de limiter la charge (puissance) sur la résistance du dispositif (comme un dimmer mais pour de grosse puissance). Ainsi, il est possible de limiter la consommation d’un appareil en fonction du potentiel de production de votre installation photovoltaïque. Le PowerReducer de 4Noks est le seul équipement de ce type disponible sur le marché européen.

Bibliographie internet

Voici un peu de lecture pour affiner votre compréhension et culture du Photovoltaïque. Ces liens sont un point de départ à votre apprentissage.

Conclusion

Par ce dossier, j’espère avoir excité votre curiosité, et pour certain déclenché une mise en oeuvre. Certes je connais particulièrement bien ce concept d’asservissement des équipements en fonction de la production, mais il est très facile à un passionné de domotique d’intégrer ce type de logique à son infrastructure existante.

Vous l’aurez compris je suis persuadé du bien fondé de mes propos et de mon raisonnement. Il y aura probablement des lecteurs en désaccord avec cette vision instrumenté, et c’est un domaine suffisamment complexe pour en apprendre un peu plus chaque jour.

De mon point de vue, c’est comme un placement d’épargne au rendement nettement supérieur à ceux du marché actuel. Certains diront que c’est un faible rendement au vue de la période d’amortissement importante, mais il est près de 3 fois plus intéressant qu’un livret A. Attendre 9 ans à vide et sans revenu (amortissement uniquement) n’est certes pas un placement à rendement optimal mais il est certain. De toutes façons ces 4500€ investis (pour 3 kWc) sont placés en capital investissement. Sachant que nous aurions dans tous les cas perdu ces 4500€ en facture d’électricité.

The post Autoconsommation Photovoltaïque et Domotique appeared first on Domotique Info.

Découverte du Micromodule Volet Roulant Enocean

$
0
0

La famille de micromodules encastrables Enocean s’agrandit avec cette fois la version  Ubiwizz / Nodon pour volets roulants et stores, un produit fabriqué par ID-RF. Sa taille réduite lui permet de se loger dans une boite d’encastrement, le coffre de motorisation, ou derrière n’importe quel interrupteur filaire existant.

 

Ce module est capable de gérer toutes les motorisations filaires 230V à butée mécanique ou électronique, et de recevoir n’importe quel interrupteur ou poussoir inverseur filaire de type inverseur volet ou store.

Caractéristiques techniques
  • Protocole : EnOcean
  • Fréquence Radio : 868MHz
  • Portée radio : 30m
  • Courant max : 5A
  • Alimentation : 230V~ / 50Hz
  • Température de fonctionnement : 0°C / + 40°C
  • Dimensions : 40 x 45 x 17
  • Profil d’équipement (EEP) : D2-05-00
  • Boite d’encastrement : 50m
  • Garantie : 2 ans
Installation du module Volet Roulant

Attention, si vous n’avez pas les compétences en électricité, il est préférable de faire appel à un professionnel.

Coupure elec

Avant de commencer le câblage de votre module ou de démonter votre interrupteur filaire, coupez toujours l’électricité au niveau de votre tableau électrique et vérifier l’absence de tension.

Respectez le schéma de câblage de la notice, le Blog ne sera en aucun cas responsable des incidents ou accidents résultant d’un mauvais câblage ou d’un usage non conforme.

Petit rappel sur le bornier de ce micromodule encastrable qui se compose d’une alimentation 230V Neutre + Phase, 2 entrées pour interrupteur filaire (I), et 2 sorties relais 230V (0).

Voici le principe de câblage du module pour gérer une motorisation de volet ou store en encastré derrière un double interrupteur (Bistable) filaire existant, exemple de configuration que nous allons utiliser tout au long de notre test.

Avant de passer au démontage de notre interrupteur volet, pensez à couper l’alimentation électrique directement au tableau, ne prenez aucun risque.

Comme vous pouvez le voir ci-dessus, l’interrupteur est connecté à la Phase « L » (Fil Rouge), et aux deux fils Marron et Noir correspondant à la montée et descente du moteur. Le Neutre « N » quand à lui est directement relié au moteur.

Il suffit alors de reprendre l’alimentation et câbler le Neutre (Bleu) directement sur la borne « N », la Phase (Rouge) sur la borne « L » , et les 2 Fils Marron et Noir du moteur sur les 2 bornes « O« .

A vous le choix de mettre un obturateur ou interrupteur sans fil et sans pile de type Plana sur la boite d’encastrement, ou de connecter les 2 Fils de commutation (Montée/Descente) de l’interrupteur vers les 2 bornes « I » du module.

Vous pouvez alimenter votre micromodule et faire un simple appui sur les 2 boutons de votre interrupteur filaire pour qu’il soit automatiquement reconnu par votre module, qu’il s’agisse d’un Interrupteur (Bistable) ou d’un Poussoir (Monostable).

Configuration du module Volet Roulant

Pour permettre au module de connaître la position exacte du volet roulant à tout moment, un
premier processus d’étalonnage doit être effectué en appuyant 5 fois sur le bouton “PRESS”

Le moteur du volet roulant va alors effectuer un cycle de Montée / Descente / Montée afin d’enregistrer les butées.

Le bouton “PRESS” de ce module Volet Roulant Enocean, permet de faire plusieurs actions en fonction du nombre de fois qu’il sera pressé.

  • Un appui :
    – Si le volet est calibré et qu’il est en position >20%, il remonte complètement à 0%.
    – Si le volet est calibré et qu’il est en position <20%, il se descend à 50%.
    – Si le module est mode “Learn”, alors l’opération est stoppée.
    – Si le module est mode reset, alors l’action se valide.
  • Triple appuis :
    – Permet de passer en mode Apprentissage “Learn”
  • Quintuple appuis :
    – Si le module est en phase de calibration, le process est avorté.
    – Lance le process de calibration, Up/Down/Up
  • Appui de plus de 5s :
    – La led clignote “Orange” pour confirmer la mise en mode reset.
Appairage du module Volet Roulant

Bien sur l’intérêt de ce module réside dans le fait de pouvoir le piloter via un autre interrupteur sans fil ou un contrôleur domotique (box). Ainsi vous pourrez ajouter d’autres points de commandes et par exemple centraliser la fermeture et ouverture de tous vos volets en un seul point comme à l’entrée de votre logement.

Mais également de les piloter via une application smartphone ou d’une tablette, que ce soit de chez vous, de votre bureau, ou en vacances à l’autre bout du monde…

Il suffit d’appairer votre module volet roulant à un une box domotique ou un émetteur sans fil Enocean compatible.

Une fois votre micromodule volet roulant UBID1511 installé et alimenté (Led verte), il suffit de le mettre en mode appairage pour l’associer à un un émetteur comme l’inter sans fil Vimar, Audace, Céliane, ou encore la passerelle WizzBox et la mini Box Ubiwizz.

L’apprentissage peut se faire via le bouton du micromodule ou directement par le bouton de l’interrupteur filaire.

  • Pour placer le module en « Apprentissage », il suffit de faire un « Triple Appui » sur le bouton »PRESS » à coté de la Led qui va alors scintiller en Rouge pour confirmer que le module est bien en mode « Apprentissage ».
  • Appuyez sur l’un des boutons de l’émetteur sans fil que vous souhaitez appairer au micromodule, la Led va alors confirmer l’appairage en devenant fixe.
  • Pour un appairage avec votre box domotique, voir la documentation de celle-ci. Si vous possédez une WizzBox, tout se passe via son application MyUbiwizz comme ci-dessous.

Utilisation du module Volet Roulant

Ce module possède des spécifications Enocean correspondantes au profil d’équipement D2-05-00 de l’Alliance EnOcean. Un interrupteur sans fil Enocean associé à votre module Volet Roulant, vous permettra de le contrôler comme suit :

  • Un appui sur le bouton Haut = Le volet s’ouvre
  • Un second appui sur le bouton Haut = Le moteur s’arrête
  • Un appui sur le bouton Bas = Le volet descend
  • Un second appui sur le bouton Bas = Le moteur s’arrête

Avec une passerelle ou box domotique comme la WizzBox Ubiwizz, vous pourrez lancer une action de montée, descente, stop, mais également une commande d’ouverture partielle en pourcentage.

  • 0% = Ouverture totale
  • 50% = Ouverture/Fermeture partielle
  • 100% = Fermeture totale

Notre avis

Enfin un micromodule encastrable Enocean pour volets roulants et stores, dans la lignée des deux autres modules de la gamme Ubiwizz et Nodon, le double relais et le contact sec…

Simple et complet, ce module gère parfaitement tout type de motorisation pour volet roulant ou store, qu’elle soit à butée mécanique ou électronique, et permet de conserver ses interrupteurs existant. La calibration est plutôt fiable, je n’ai pas observé de décalage dans le temps, et le positionnement constaté par rapport à mon application MyUbiwizz, ne varie pas plus de 5% au-delà de la mi-course.

Le catalogue de produits connectés EnOcean devient de plus en plus conséquent et répond aujourd’hui à la plupart des besoins. Et avec des périphériques ne dépassant pas les 50€ en moyenne, cette solution domotique « sans fil et sans pile » commence sérieusement à faire de l’ombre à d’autres technos comme le Z-wave…

Le plus : Équipez vos volets roulants de ce module et offrez-vous une centralisation à l’endroit que vous voulez et sans travaux, avec un interrupteur sans fil et sans pile Enocean de votre choix…

The post Découverte du Micromodule Volet Roulant Enocean appeared first on Domotique Info.

Maisons connectées et Cybersécurité

$
0
0

Maisons connectées et Cybersécurité au programme du jour. Cet article a vocation à sensibiliser les particuliers « auto-installateurs » de solutions autour de la maison connectée. Pour les autres, ce sujet peut-être utile, rugueux ou complémentaire.

En « domotique moderne » (Internet des objets, SmartHome, Maison connectée, Objets connectés) on omet souvent de parler de sécurité, voilà pourquoi depuis quelques temps je souhaite aborder ce sujet un peu complexe et assez vaste pour s’y perdre. Après des semaines de collecte bibliographique nécessaire à parfaire ma vision globale de ce sujet, je vous livre un dossier non-exhaustif, mais assez représentatif de la situation, ainsi qu’un ensemble de mesures permettant de limiter les risques d’expositions de votre infrastructure numérique résidentielle.

A la lecture de cet article vous serrez je l’espère mieux sensibilisé aux risques que peuvent comportés les réseaux locaux de nos maisons connectées, et ce que nous en faisons avec les dispositifs que nous y connectons. Non non, nous n’allons pas parler de système d’alarme spécifiquement.

Remarque : Je ne suis, ni ai été expert en sécurité informatique. Cet article a pour objectif de transmettre un minimum de pistes aux lecteurs passionnés de la maison connectée sur la base de mes connaissances et expériences de l’IT et des différents tutoriels de la toile.

Sommaire

  1. Maisons connectées, le contexte
  2. Risques principaux
  3. Infrastructure numérique résidentielle
  4. Préconisations : Quelques bonnes pratiques
  5. Conclusion

Petit éclaircissement terminologique de l’abus de langage :

Il est courant aujourd’hui d’employer un mot pour un autre par abus de langage. Le titre de cet article est volontairement un abus de langage dans l’emploi du du mot sécurité au lieu de sûreté. Cette confusion ayant été induite par la traduction des termes anglophones. Nous devrions théoriquement parler de sûreté plus que de sécurité.

  • La sécurité consiste à prévenir contre les accidents (liés à des évènements fortuits ou des actes sans intention de nuire)
  • La sûreté consiste à prévenir contre les actes de malveillance (liés à des actes délibérés ou à la négligence avec intention de nuire)

Voici une petite réflexion : Positionnement de la Cyber-sécurité entre Sécurité et Sûreté, « faux-amis » ou vraies synergies ?

1. Maisons connectées, le contexte

1.1. La connectivité IP

La « Maison connectée » offre le plus souvent une accessibilité distante, très attendue des utilisateurs avant tout. Garder le contrôle total de sa maison nécessite un accès à distance le plus souvent au travers d’internet, et cela même s’il existe d’autres moyens d’interagir avec notre maison comme par exemple avec des SMS.

Dans cette chaîne de communication TCP/IP, nos communications vont traverser un ensemble d’éléments constituant des réseaux (réseau Internet ou public / réseau local ou résidentiel).

Exemple : Smartphone > réseau opérateur > Internet > Box internet (Routeur) >Réseau résidentiel > nœud réseau (Appareil avec une adresse IP comme votre contrôleur domotique)

Maisons connectées et Cybersécurité - surface d'exposition ip

Aparté : La convergence IP (intéropérabilité IP) oblige beaucoup de domoticiens et d’intégrateurs à remettre régulièrement à jour leurs compétences et leurs connaissances des réseaux IP, par la compréhension des risques, des menaces ou vulnérabilités des installations. Alors n’oubliez pas, les « Sachants » sont dans ce cas les professionnels. Il est donc de leur responsabilité de ne pas ajouter de failles de sécurité supplémentaires chez l’utilisateur. Cependant, l’explosion d’offres produits et la demande grandissante, accélèrent le décalage des besoins face aux compétences aujourd’hui disponibles.

1.2. La connectivité Radio et Bus terrain

Dans le même esprit, la communication entre les équipements domotique (que nous appellerons des nœuds) offre une surface d’exposition aux risques, au même titre que les réseaux IP. En effet, que la technologie soit maillée, en point à point ou en étoile, cette technologie s’expose dans le monde hertzien (radio-fréquences) ou encore sous forme de signal électrique dans un bus terrain filaire.

Il y a donc une lointaine similitude avec les réseaux IP, car une contrainte de proximité rend le risque moins important. Un attaquant devra donc se trouver à portée quasi immédiate des équipements physiques ce qui peut limiter naturellement la menace.

2. Risques principaux

Maisons connectées et Cybersécurité - méthodes attaques

La sécurité numérique résidentielle est à prendre en considérations pour plusieurs raisons. Sans tenter de vous faire peur, il existe plusieurs types de menaces plus ou moins critiques ou dangereuses.

2.1. Menaces concernant les données

  • La perte intégrale ou partielle de vos données,
  • Le rapt partielle ou intégrale de vos données contre rançon financière (Ransomware),
  • L’accès libre à vos données privées (usurpation d’identité, accès au données bancaire, manipulations et  falsifications).
  • Accès à vos services en ligne.

2.2. Menaces par nuisances (maliciel)

Un logiciel malveillant ou maliciel, aussi dénommé logiciel nuisible ou programme malveillant ou pourriciel (« malware » en anglais), est un programme développé dans le but de nuire à un système informatique, sans le consentement de l’utilisateur dont l’ordinateur est infecté.

De nos jours, le terme « virus » est souvent employé, à tort, pour désigner toutes sortes de logiciels malveillants. En effet, les maliciels englobent les virus, les vers, les chevaux de Troie, ainsi que d’autres menaces. La catégorie des virus informatiques, qui a longtemps été la plus répandue, a cédé sa place aux chevaux de Troie en 2005 Source : Wikipédia

2.3. Menaces concernant les équipements

  • Prendre possession d’équipements,
  • Accès à vos service locaux comme vos caméras IP,
  • Piloter votre domotique et capacité d’agir sur votre résidence,
  • Contrôler votre système d’alarme.

2.4. Menaces récemment découvertes

Voici un nuage de mots interactif avec une trentaine de liens vers des articles représentatifs des menaces actuelles. Ces menaces et donc ces vulnérabilités ne représentent que partie émergée de l’Iceberg (le connu). En effet, d’autres vulnérabilités existent forcement, mais non pas encore étaient découvertes ou annoncées.

Passez votre souris sur les mots pour activer les liens. Plus c’est gros plus c’est important

3. Infrastructure numérique résidentielle

3.1. Vulnérabilité des systèmes

Avant d’aller plus loin, il faut comprendre et identifier le périmètre de risques. Nos résidences connectées sont un ensemble d’équipements divers et variés. Notre périmètre est étendu par de multiples technologies de connectivité et beaucoup de systèmes d’exploitation différents (Windows, Windows mobile, MacOS, iOS, Androïd, Cisco IOS, OpenWRT, DSM, Linux [x distros], EdgeOS, AirOS, RTOS…).

Système d'exploitation sécurité

Votre maison connectée est donc bien le plus souvent un milieu hétérogène riche en diversité. En aucun cas un des systèmes n’est à l’abri d’une défaillance passée ou future. Si vous voulez réaliser l’étendue des failles passées et résolues, il existe un site qui risque de vous faire réviser vos idées reçues aux sujets de vos systèmes d’exploitation et des applications. Je vous laisse 5 minutes de pauses pour jeter un œil et revenir.

Par exemple : [ Voici les 50 mauvais élèves en 2017 ].

Une règle simple en la matière, et lors que l’on n’est absolument pas spécialiste, est de mettre à jour systématiquement les dispositifs constituant cette infrastructure résidentielle.

3.2. La connectivité et surface d’exposition

3.2.1. Exposition réseaux IP

Nos contrôleurs ou passerelle domotique, nos caméras IP, nos objets connectés, nos Smartphones sont autant de systèmes différents que d’adresse IP déployées sur notre réseau local. Que cela soit par une connexion physique (Ethernet) ou sans-fil (Wifi), ces équipements ne sont généralement pas maîtrisés comme nous le devrions. Ces dispositifs mettent au jour dans le temps des failles de sécurité de conception logicielle ou matériel.

Nous sommes donc tributaire des mises à jour constructeurs/éditeurs corrigeant telle ou telle faille de sécurité, mais nous avons rarement la main sur l’évolution des corrections de ces vulnérabilités.

Ne sous-estimons surtout pas les Smartphones de systèmes et de versions hétérogènes compliquant fortement la sécurité en raison d’un double accès au réseau local de votre réseau WiFi et la connectivité IP de leur 3 ou 4G sur le backbone opérateur.

Le terminal mobile se connecte impunément à tous les points d’accès internet disponible sur son chemin. La capacité d’exposition et de contact d’un smartphone est énorme et cela fait de lui le principal intérêt des pirates. Un logiciel malveillant dans votre smartphone, c’est l’assurance d’une propagation proportionnel aux mouvements potentiels de l’appareil.

Nous comprenons à présent que notre installation n’est pas moins concernée par les enjeux de sécurité qu’un site « professionnel » lambda. Même si il est moins intéressant pour un pirate de s’attaquer à votre installation que celle d’une entreprise (à priori ?), nous ne connaissons pas toujours les motivations des attaquants. Il n’y a pas forcement de gain attendu au bout de chaque assaut, comme par exemple le fait de devenir esclave d’un maître DoS (attaque massive par dénis de service).

Votre exposition publique avec Shodan.io

Shodan est un moteur de recherche créé en 2009 par John Matherly.  Ce site référence le résultat de balayages de ports massifs effectués sur le réseau Internet mais il référence aussi les tentatives de connexions réussi aux dispositifs (ex.: CamIP, routeur …) ayant conserver leur configuration d’origine (constructeur) en termes d’identifiant et de mot de passe.

Que connait Shodan.io de votre adresse IP publique (45.58.121.250) ?

Edit du 17 avril 2018 :

Remarque pour les terminaux en contact direct avec internet : Par exemple, les smartphones avec un APN 3 ou 4 G logiques sont protégés partiellement d’une exposition directe par le backbone opérateur, mais les APN avec adressage publique (option opérateur) sont directement exposé au contact d’internet. Donc faire le test depuis votre smartphone non connecté à un réseau local n’aura pas de sens … Vous obtiendrez la réponse 404 suivante :

shodan.io erreur 404

Un réseau est comme une maison, il dispose de points d’entrées ou de sorties. Pour un réseau, l’IP correspond à l’adresse postale et le port à l’identification de la porte ou fenêtre d’entrées/sorties. Plus vous avez de points d’entrées/sorties plus votre réseau comme votre maison à de faiblesses.

Plus un réseau est isolé ou hermétique, plus il se protège. Si vous stoppez l’accès à internet, ou que vous barricadez votre maison, vous augmenterez sa résistance aux attaques externes. Mais attention pour autant les risques intérieurs sont toujours potentiellement existant.

Maisons connectées et Cybersécurité - zones adressages opt

Le trafic entrant ou sortant sont des surface d’exposition :

  • Les trafics entrant sont les flux de communication réseau venant d’internet (extérieur), et don,c à destination de votre réseau loca.
  • Les trafics sortant sont les flux de communication réseau allant vers internet (extérieur), et donc en provenance de votre réseau local.

3.2.2 Exposition des bus terrain (avec et sans-fil)

Le bus terrain est le moyen de transporter les communications protocolaires entre chaque appareil constituant votre domotique. Cela peut-être des liaisons filaires ModbusRTU, série, KNX, Bacnet … ou encore des liaisons radio-fréquences EnOcean, KNX-RF, Zigbee, Zwave…

Pour les bus-terrain filaires, c’est uniquement un accès par une passerelle IP de cette technologie qui peut la rendre fragile. En effet sans accès physique direct aux câbles de ce bus, il parait complexe d’intercepter les communication de cette liaison. On peut donc dire que le procédé filaire offre moins de surface d’exposition.

Notre domotique sans-fil met en oeuvre d’autres technologies de connectivités sans-fil tierces (Zigbee, EnOcean, Zwave, Zwave+, Zwave S2, bluetooth …). Ces technologies sont « sécurisables » ou déjà sécurisées mais sont implicitement connectable par les radio-fréquences, et offrent donc une faiblesse à l’écoute des communications hertzienne. Des tests et démonstrations de pénétrations des réseaux maillés tel que Zwave ont déjà été publiés et le minima sécurité n’est pas toujours respecté de l’utilisateur/installateur (inclusion en mode sécurisé).

Il existe des technologies de chiffrement (type AES) pour tous ces protocoles, mais rarement avec une clé cryptographique supérieure 128 bits. Rassurons-nous ces équipements ne rayonnent pas à une portée exceptionnelle (quelques dizaines de mètres), et de facto oblige le pirate à se rapprocher pour écouter ou usurper les communications. D’un désavantage pour certain, cette portée devient une protection naturelle de votre domotique sans-fil.

Nos solutions domotique « grand public et professionnelle » à base de protocole radio-fréquences ont tous la capacité d’être sécurisé. Il faut cependant ajouter un bémol à cela, car même si les spécifications de la technologie en question propose plusieurs niveaux de sécurisation par chiffrement des communications, c’est le plus souvent l’utilisateur lui-même qui définit ce niveau de sécurité lors de la phase d’appairage d’un module avec son contrôleur. Nous sommes donc souvent à l’origine de la rétrogradation de sécurité.

Voici quelques éléments de compréhension de la sécurité de ces technologies :

3.2.3. Exposition interne

Mettre en place des barricades sur le front internet ne résout rien en termes de stratégies intérieures. Pour cela, il faut un niveau d’intégrité interne pour éviter les agressions locales pour lesquels les utilisateurs sont les principales faiblesses. Un terminal non fiable (ordinateur/Smartphone), un CD/DVD, une clé USB, un mail, un lien, une image, une messagerie instantanée, le navigateur internet mais bien-entendu aussi les objets connectés sont autant de points faibles qu’il faut impérativement isoler, protéger et surveiller.

Comportement :

Cet aspect de la sécurité est presque le plus important, car ceux sont bien souvent des comportements humains qui sont à l’origine de la faiblesse en sécurité. Nous sommes les principaux responsables de beaucoup d’ouvertures et de faiblesses sur nos infrastructures numérique résidentielles. Nos attitudes sont des risques que nous ne mesurons pas toujours. La navigation internet et les courriers électronique nous exposent facilement jour après jour un peu plus à des menaces insoupçonnées comme le phishing/hameçonnage ou encore le Hijacking/Détournement. Nos enfants sont aussi visés par ces méthodes au travers de leurs centres d’intérêts de navigation internet. Il faut donc aussi maîtriser le trafic sortant de votre réseau résidentiel afin d’éviter les sites potentiellement dangereux.

J’insiste sur cette aspect très souvent oublié des utilisateurs finaux. Certain dirons : – Je n’ai rien à cacher. – Je n’ai rien à protéger.

Alors si ce n’est pour vous pensez à vos enfants, et mettez en place des dispositifs de protections limitant les risques à vos bambins (à minima des heures d’accès et des filtres « sortant » de navigation).

Porte dérobée (backdoor) :

Bien souvent le procédé utilisé pour s’introduire sur votre réseau sera votre crédulité et votre naïveté (comportement). Ainsi en pensant avoir téléchargé une application officielle ou un lien officielle (…) vous allez vous retrouver en situation de modifier le contenu de votre terminal d’accès à internet. Une fois fait, l’exécutable présent sur votre appareils effectuera des opérations plus ou moins critique malgré vous.

L’introduction d’une porte dérobée dans un logiciel (ou un objet connecté) à l’insu de son utilisateur transforme le logiciel ou cette appareil en cheval de Troie. A partir de cette instant votre système est corrompu et fait prendre des risques aux autres appareils sur votre réseau local.

3.2.4. Exposition dans le nuage (cloud)

C’est quoi le cloud [Partie 1] [Partie 2]

C’est la partie du dossier que je préfère le moins car je ne suis pas fan de ces solutions. Certes j’exploite quelques espaces de stockages en ligne pour le partage essentiellement mais de manière générale, si je peux m’en passer, cela me convient mieux. Ce n’est que mon point de vue en tant qu’utilisateur final. Comme je maîtrise personnellement les problématiques de stockage et de flux réseau, je suis effectivement en capacité de me passer de ces architecture le plus souvent.

Toutefois si je sais personnellement interagir avec un réseau privé depuis l’extérieur de ce réseau, Madame Michu, elle ne sait pas faire toute seule. Aujourd’hui pour pénétrer le marché de masse et adresser un maximum de personnes (démocratisation), il faut accepter qu’un objet soit d’abord connecté au « cloud » (services du fabricant) avant d’interagir avec nos autres équipements connectés comme nos téléphones .

L’idée étant de permettre de manière transparente l’accès aux services du dit objet dans toutes les circonstances de connectivité à internet (chez moi, ou en déplacement ça fonctionne). Un deuxième argument est aussi souvent employé pour motiver l’utilisateur de l’intérêt du cloud. « On sauvegarde gratuitement ses données collectées ». Génial alors! Le marché est ainsi fait, qu’il faut apprendre à vivre avec ces architectures.

L’accessibilité permanente et le stockage des données sont les avantages vendus à l’utilisateur, mais il existe aussi des d’avantages pour le fabricant.

En effet, certains développements IoT permettent de limiter considérablement le coût de R&D matériel en déplaçant les capacités en ressources (CPU, RAM et/ou Stockage…) du côté du nuage (90% des objets connectés.), et ainsi permettre une interface homme/machine (IHM) déportée sur internet.

L’autre avantage et non des moindre est que le fabricant peut exploiter les séries de données temporelles de tous les utilisateurs, et ainsi il peut opérer quelques calculs savant sur le jeu de données (Machine & Deep learning, IA) lui permettant d’optimiser des fonctions de services du produit, voir « prêter » les données anonymisées à des tiers (Mon article sur la Valorisation des données de vos objets connectées).

Dans cette course rapide qu’est la valorisation des données, certains fabricants en oublient parfois l’essentiel. La sécurité ! Sachant que le cloud ajoute en surface d’exposition internet (Objet connecté > internet > Cloud > internet > Smartphone), on comprend que le flux de communication extérieur s’en trouve doublé et de facto l’exposition aux menaces aussi.

Il faut donc veiller à la qualité de chiffrement des canaux de communications (tunnel) et à la qualité des interfaces de connexions (API) avec de l’authentification forte. Ces interfaces devrait idéalement être développées avec des technologies comme TLS/SSLOAuthOpenIDSAMLSW-Security, ou encore des branches (fork) de ces développements.

La sécurité peut être pour certain le cadet des soucis, et pour d’autres aussi important que les fonctions de la solution. Oui la sécurité est une « feature » comme les autres. Même si elle se matérialise par rien de palpable pour l’utilisateur au niveau produit et marketing, cela devrait-être un passage obligé pour les fabricants responsables.

Pour résumer, nous sommes donc tributaire et dépendant de la stratégie de développement du fabricant de l’objet connecté, qui ne communique pas souvent les éléments techniques permettant d’évaluer la solution dans sont ensemble. Il ne nous reste donc plus que les retours d’expériences des différentes communautés ainsi que de leurs tests pour évaluer le niveau d’intégrité des produits et des architectures en attendant de constater les changements liés au nouveau règlement européen sur les données personnelles.

Opportunité RGPD

Le règlement européen sur les données personnelles (RGPD) va considérablement redistribuer les cartes du jeu. D’un point de vue utilisateur et fabricant cela  peut restaurer la relation de confiance que le marché attend pour exploser. Les obligations Européennes vont avoir un effet positif sur nos territoires, mais aussi à l’international pour les fabricants/éditeurs offrant des services dans le nuage pour les Européens.

Le gros avantage de ces obligations, sont qu’elles définissent des spécifications structurantes en termes de fonctionnalités génériques (Transfert, formats, portabilité, flux administratif …) et d’un point de vue « architecture technique » devrait amener plus de sécurité aux données personnelles.

Ce cadre réglementaire semble presque arriver au bon moment pour ceux en phase de conception d’un produit connecté au cloud, et un peu en retard pour ceux ayant déjà développé ces dernières années.

Le développement de ce marché nécessite inéluctablement des architectures « Cloud » dont l’universalité est aujourd’hui démontrée, et n’ayant pas d’alternative technologique simple pour l’instant.

Gageons que toutes ces années sans cadre normatif soient derrière nous, et attendons de voir les changements se mettre en place…

4. Préconisations, quelques bonnes pratiques

Restons positif, même s’il existe souvent des trous dans la passoire, il existe des dispositifs et des contre-mesures pour se protéger d’une grande partie des menaces et des vulnérabilités. L’important dans ce domaine est de s’informer et de corriger en permanence les risques potentiels.

Il existe un ensemble de mesures simple permettant de limiter facilement la surface d’exposition aux menaces (attaques). Il faut donc identifier les risques afin de mettre en place les modifications adaptées à votre Infrastructure numérique résidentielle.

Sans devenir un paranoïaque ou un expert en Cyber-sécurité gonflé à bloc, il est opportun de sensibiliser les utilisateurs aux enjeux et risques des failles dans nos systèmes numérique résidentiels.

Il va de soit que je ne peux vous proposer que des pistes de sécurisation, mais il est impossible de faire un tutoriel pour chaque solution proposée en raison de l’aspect hétérogène (Système d’exploitation) de nos infrastructures. Voici donc un ensemble de bonnes pratiques plus ou moins adaptées au contexte, à nos connaissances et nos compétences.

4.1. Les identifiant et mot de passe

La principale menace : Les attaques brute force

  • Renommez OBLIGATOIREMENT les comptes aux privilèges administrateur.
  • Pas de compte nommé d’origine (root, admin, administrator, administrateur…)
  • Désactiver les comptes invités (guest).
  • Pour l’identifiant vous pouvez aussi augmenter sa complexité au même titre que le mot de passe.
  • Ne pas utiliser systématiquement le même couple identifiant/mot de passe sur tous les services réseaux que vous exploitez.
  • Sécurisez vos mots de passe (voir recommandations de l’agence nationale de la sécurité des systèmes d’informations [ANSSI]).

Pour faire simple, deux méthodes pour choisir vos mots de passe :

  • La méthode phonétique : « J’ai acheté huit cd pour cent euros cet après-midi » deviendra ght8CD%E7am ;
  • La méthode des premières lettres : la citation « un tien vaut mieux que deux tu l’auras » donnera 1tvmQ2tl’A.

4.2. Les protections individuelles

Les protections individuelles sont les dispositifs hébergés par chaque machine/terminal. Voici un ensemble de règles qu’il faut impérativement s’imposer :

  • Toutes vos machines sur votre réseau ou vos sous-réseaux privés et en fonction de leurs usages, doivent disposer de leurs propres défenses et protections (Antivirus, et Anti-malware puis bien entendu un pare-feu limitant les accès entrant sur la machine, Anti-spam, Adblocker ….).
  • Toutes machines inconnues (invités, amis, famille) doivent se connecter un autre réseau (DMZ, LAN, VLAN) que votre cœur de réseau. Cette mise en quarantaine physique est nécessaire pour vous protéger des terminaux que vous ne maîtrisez pas en termes de sécurité.
  • Remarque pour les terminaux en contact direct avec internet : Par exemple, les smartphones avec un APN 3 ou 4 G logiques sont protégés partiellement d’une exposition directe par le backbone opérateur, mais les APN avec adressage publique (option opérateur) sont directement exposé au contact d’internet.

4.3. Interface de bordure (routeur de bordure)

C’est le dispositif recevant l’adresse IP publique de votre fournisseur d’accès à internet. Communément appelé « patte externe » ou « patte WAN » c’est la première interface réseau que vous gérez et la première au contact direct d’internet. C’est donc la carte réseau vue de l’extérieur. Cette interface doit disposer d’un maximum de défense face à internet.

  • Une des premières choses est de configurer cette interface externe de manière à ce qu’elle ne réponde pas au Ping ICMP (Option courante des routeurs FAI). En effet, il faut considérer que les robots d’attaques peuvent d’abord vérifier la présence de l’IP publique sur internet. Vous me direz qu’il est possible de faire un ping applicatif est découvrir que finalement une adresse IP publique peut répondre à des requêtes protocolaires diverses, et ainsi déterminer la présence de l’IP publique sur internet. Nous sommes bien d’accord et personnellement j’ai divisé par 300 le nombre d’attaques « Brute force » en faisant cela.
  • Une des actions les plus évidente et généralement configurer par défaut sur un routeur qui se respecte, est l’activation de la protection DDoS (Distributed Denial of Service attack). Ce n’est pas une option c’est obligatoire.
  • Activez le pare-feu et éviter de faire de la translation d’adresse entrante [NAT et Port forwarding]. Voir section « Gestion des flux » ci-dessous.
  • Ne pas activer les options d’administration à distance des routeurs de bordure (box internet FAI) que cela soit en HTTPS ou SSH. Les éléments actifs constituants votre infrastructures réseaux ne doivent jamais être accessible directement depuis l’extérieur (Ou alors ponctuellement pour une problématique particulière).
  • Désactivez les options de configuration du protocole Universal Plug n’ Play [UPnP].

4.4. Administration distante (SSH)

Bien que je ne sois pas favorable à l’exposition du port SSH (22) sur l’interface publique d’une machine (NAT ou pas), il y a des situations pouvant l’imposer (Hébergement Serveur dédié ou VPS …). Dans ce cas particuliers il va falloir mettre en place au moins deux défenses voir trois pour sécuriser cette situation dangereuse. Il existe dans le monde Linux et les autres mondes aussi des solutions que je citerais de manière générique. Voici les solutions élémentaires, mais il en existe d’autres. La logique de défense SSH doit-être mise en place quelques soit l’environnement ou le protocole à partir du moment où un accès avec privilèges élevés est mise en place et disponible sur l’interface publique d’une machine (RDP par exemple) :

  • Clé publique/Clé privé : Mettre en place la relation de confiance croisée sur la base de clés publique et privé.
  • Bastion SSH : Mettre en place une forteresse SSH pour disposer d’un point d’entrée unique sur tous les services « sshd »de votre réseau privé.
  • SSH Proxy ou reverse SSH : Mettre en place des tunnels montant de vos ressources SSH intérieures vers le bastion (ssh proxycommand).
  • Port Knocking : Mettre en place un code séquence « Toc To Toc » sur trois ports pour ouvrir à la demande et ponctuellement SSH sur le port 22.
  • Bannissement IP : Mettre en place un logiciel gardien de connexions, pour bannir les IP après X tentatives de connexions échouées (Fail2Ban par exemple).

Administration distante SSH - Bastion SSH - Port knocking

Dans le schéma ci-dessus est expliqué l’architecture mixant Clés publique et privé, le mode Bastion pour gérer d’autres machines dans votre réseau privé et le Port-Knocking (Code sessions : Toc Toc Toc, port1 port2 port3) pour autoriser ponctuellement le port 22.

4.5. Gestion des flux avec internet

Voici quelques petites règles évidentes à respecter le plus strictement possible.

4.5.1. Filtration entrante

  1. Dans la mesure du possible limitez un maximum l’ouverture de ports vers votre réseau privé.
  2. Si vous devez le faire n’utilisez pas les ports logiques « port/service » comme « 21/FTP » mais modifiez par exemple en 1021/FTP.
  3. Préférez les protocoles sécurisés comme « HTTPS » au lieu de « HTTP ».
  4. Jamais au grand jamais n’activez les fonctions UPNP (de vos routeurs/pare-feu/box-internet/ordinateur)

4.5.2 Filtration sortante

  1. Dans la mesure du possible limitez un maximum l’ouverture de ports vers internet. Pourquoi ? Me diriez-vous. Car par exemple les logiciels malicieux pourraient entrer simplement en communication Peer to Peer et donner la main sur vos fichiers à un pirate.
  2. Envisagez la filtration d’URL avec un « cache proxy » (Comme Squid Cache, mitmproxy  …  ), ou par filtration DNS externe (Comme OpenDNS).
  3. Bloquez le port 53 (DNS) en sortie afin de préserver les routes DNS que vous mettez en place depuis votre routeur/DHCP. Ainsi vous vous préservez des logiciels malveillants utilisant des resolveurs DNS racine (extérieur) malgré votre stratégie de sécurité.

filtration des flux

4.6. Accès sécurisé à votre réseau depuis l’extérieur

Accéder à son réseau local est parfois nécessaire pour effectuer des opérations d’administration système ou réseau à distance. Pour ce type d’usage n’utilisez que l’accès VPN. Ainsi une fois connecté de manière sécurisée et à l’abris dans un tunnel de communication chiffrés, vous pourrez utiliser tous les services locaux d’administration de vos machines (SSH, RPD, SCP, … ) comme si vous vous trouviez physiquement chez vous, sur le même réseau.

  1. Pas de port SSH entrant exposé sur internet (sans protections précisées en section 4.4).
  2. Mettez en place un accès sécurisé à votre réseau privé par l’utilisation d’un réseau privé virtuel (RPV = VPN). C’est la manière la plus efficace de préserver l’intégrité de votre réseau résidentiel.
  3. Préférez les protocoles robustes comme L2TP/IPSec (et authentification Radius) ou OpenVPN plutôt que PPTP.
  4. Optionnellement, mettez en place un VPN sortant pour anonymiser vos usages d’internet (The best VPN Review 2018).

Réseau privé virtuel

4.7. Le cloisonnement (ou segmentation)

  1. Un vieil adage nous dit : « Ne mettez pas tous vos œufs dans le même panier« . Il en va de même pour vos systèmes. Tant que faire se peut, catégorisez vos nœuds (appareils) par niveau de criticité (ex.: risques inconnu, risques faible, fiable ) et isolez les d’un contact direct sur le même sous-réseau en mettant en place une DMZ derrière votre routeur internet (Zone au niveau de risque supérieur ou les machines devront faire l’objet d’une configuration en sécurité accrue).
  2. Si vous disposez d’un serveur DHCP « multi-étendues » et d’un « switch administrable » compatible avec les VLANs, préférez la mise en place d’une segmentation par LANs virtuels (Comme le schéma ci-dessous).
  3. Mettez en place entre les zones (V/LAN) des polices pare-feu (entrantes/sortantes) et des routes adaptées aux usages et aux risques en fonction de vos zones.

cloisonnement par vlans

L’avantage est de permettre une configuration dédiée et adaptée avec pour chaque segment des stratégies de sécurité différentes.

Par exemple, le VLAN KIDS est aussi un accès Wifi dédié aux enfants. Au-delà du contrôle d’accès horaire (plage d’accès) pour les enfants, nous pouvons mettre en oeuvre une filtration par catégories de sites avec OpenDNS (Family/Home) pour éviter que vos enfants accèdent à des sites potentiellement dangereux ou aux contenus douteux. Dans ce cas : Bloquez le port 53 (DNS) en sortie afin de préserver les routes DNS que vous mettez en place depuis votre routeur/DHCP.

webfiltering opendns

4.8. Services Web hébergés chez vous

Si vous deviez vraiment publier des services en ligne de type Web :

  1. Préférez la mise en oeuvre du chiffrement « TLS/SSL » (443/HTTPS 80/HTTP) avec un certificat d’autorité publique (ex.: Let’s Encrypt), et si vraiment vous n’avez pas le choix un certificat auto-signé.
  2. N’utilisez plus les authentifications HTTP (BasicAuthentification) qui circule en clair (sans chiffrement) sur la toile.
  3. Configurez votre serveur avec le maximum de protection (Ne pas renvoyer de signature logiciel [système, serveur web], « .htaccess », IPTable, Fail2Ban)
  4. Mettez en oeuvre un ou plusieurs dispositifs de « sécurité et de redirection de services » avec une fonction « reverse proxy » (Configuration Ngnix, VirtualHost Apache, HAProxy …) pour ainsi rediriger les flux de services internes et éventuellement de l’équilibre de charge.

Gestion des redirections d’accès HTTPS

4.9. Interopérabilité « Extérieur/Intérieur »

Avec nos envies de « technophiles avertis (Mon article sur l’interopérabilité)« , il arrive souvent que nous testions et mettions en oeuvre des flux de communication entre objets, serveur local, contrôleur domotique afin d’augmenter des fonctions résidentielles (scènes) par l’interopérabilité des dispositifs intérieur et extérieur.

Il est totalement dénué de bon sens de mettre en relation ces appareils sans se prémunir d’un minimum de sécurité. Dès que cette interopérabilité nécessite une relation extérieure avec API, préférez les technologies sécurisées comme TLS/SSLOAuthOpenIDSAMLSW-Security. On voit couramment des tutoriels mettant en oeuvre des connexions directes de l’extérieur vers l’intérieur de votre réseau sans aucune sécurité. Évitez ce piège !

  1. De manière générale, limitez l’exposition logiciel entre extérieur et intérieur de votre réseau local.
  2. N’utilisez jamais les URL avec authentification dans la requête HTTP :
    http://user:password@192.168.1.x/
  3. Préférez les dispositifs IdO offrant une interface (IHM) locale, et une interface de communication locale aussi [API] (sur votre réseau).
  4. Limitez l’interopérabilité sur les interfaces externe ne disposant pas d’API sécurisées.
  5. Ne mettez pas en place de Webhook IFTTT vers l’intérieur de votre réseau sans accès SSL à votre réseau.

La vraie fausse bonne idée est de faire quelque chose parce qu’il n’y pas d’autre solution à votre portée. En ce domaine il vaut mieux rien que certaines configurations dénuées de défense. La vraie fausse bonne idée serait d’appliquer un tutoriel sans comprendre ce qu’on fait et les risques d’exposition auxquels on s’expose.

webhook ssl ifttt sur oauth2 ngrok

Le schéma ci-dessus explique une alternative à l’ouverture de ports sur votre routeur. Le dispositif Ngrok permet de déporter/projeter le point d’entrée d’un service web en dehors du réseau local avec un tunnel sortant sécurisé vers le service Ngrok. C’est l’infrastructure du service Ngrok qui va offrir le point d’entrée à la ressources intérieur de votre réseau. Qui plus est, l’infrastructure offrira une API d’authentification forte de type OAuth. Ainsi on peut mettre en place un webhook IFTTT sécurisé de bout en bout.

Dans le cas présent, le webhook provient d’IFTTT, mais cela pourrait très bien provenir du service cloud de l’objet connecté en question. Ce type de service est préjudiciable en entreprise mais l’est moins pour un particulier qui maîtrise son environnement système et réseau. En effet, il est évident que si des développeurs sans scrupule mettent en oeuvre cela en entreprise et sans que la DSI n’ait de filtre DNS sortant sur « ngrok.com », ils exposent une machine interne (qui peut devenir relais) à l’extérieur du SI de manière invisible pour l’entreprise.

Si maîtrisé, cela n’a donc rien de plus dangereux qu’un NAT 443 vers une machine interne, ou un reverse proxy qui redirige sur une machine interne de votre réseau. L’avantage est donc de ne pas ouvrir un port entrant sur notre routeur, et voir même de multiplier plusieurs points d’entrées en multi-domaines xxx.ngrok.org sans faire de Virtualhost Apache et/ou d’alias web (Free ou offres d’abonnements).

Par contre, dans le cas de requête venant du Cloud Google home (ou d’autres), cela peut prendre du sens, car on expose pas son routeur/Pare-feu, mais bien une machine qui va s’apparenter à un « DMZ Server ». Si en plus Ngrok s’exécute sur une VM ou un container Docker, On minimise encore les risques par cloisonnement.

Une alternative plus simple avec de l’huile de coude

Toujours dans la perspectives de trouver plus simple pour des codeurs, il existe d’autres méthodes, permettant de monter rapidement une interface applicative sécurisée avec encore une fois une authentification OAuth2 (SSL/433 avec ou sans reverse Proxy.).

Par exemple je veux que mon Google Home interagisse avec mon contrôleur domotique. Voici donc la chaîne de communication à mettre en oeuvre :

GH > Google Actions > Client Oauth2 > HTTPS/433 > API Restfull (Python + Flask + Librairie Oauth2) > API locale de la domotique

Un simple script python et deux librairies (flask, flask_oauth) permettent la mise en place d’une API sécurisée de bordure. C’est assez simple à mettre en oeuvre lorsque l’on maîtrise son infrastructure réseau et le code python. Veuillez trouver sur ce Git l’exemple expliqué : https://github.com/mitsuhiko/flask-oauth

4.10. Accès direct au réseau local

Au même titre que les ports qui sont des portes/fenêtres sur votre maison connectée, accéder à votre/vos réseau(x) parce que les portes ou les fenêtres ne sont pas verrouillés vous laisse encourir des risques. Pour éviter ces risques, vous devez verrouiller systématiquement l’accès direct à votre réseau.

« Diviser » pour mieux régner : Dans le même esprit que le cloisonnement par LAN virtuel vous pourrez par exemple mettre en place plusieurs réseaux Wifi SSID et isoler les terminaux invités/amis/famille sur un autre sous-réseau que votre cœur de réseau.

Pour l’Ethernet (Câcle réseau RJ45)

  • Pas d’accès physique et direct à vos switchs, routeurs et autres éléments actifs.
  • Privilégiez les authentifications Radius 802.1x si vous disposez de ces options sur vos switchs/routeurs/serveurs.
  • Réservez les relations port switch/MAC adresse (NAC) si vous disposez de ces options sur vos switchs.
  • N’attribuez des baux DHCP qu’aux machines connues.

Pour les sans-fil (WiFi)

  • Pas d’accès direct en mode Wifi Open.
  • Privilégiez l’authentification/chiffrement WPA2 (TKIP/AES/CCMP), oubliez WPA (TKIP/AES/CCMP).
  • Évitez le mode portail captif pour les invités sauf si vous louez ou prêtez votre maison connectée.

4.11. Maintien opérationnel

4.11.1 Mise à l’épreuve (Auto-évaluation)

Mettre à l’épreuve vos infrastructures est un moyen de mieux mesurer les risques auxquels vous vous exposez.

Sans entrer dans les spécificités d’un certain nombre de distributions Linux orientées Sécurité (comme Kali), sachez que ces distributions « Live CD » vous permettent d’effectuer des tests externe ou interne à vos infrastructures. Si vous n’avez pas l’énergie pour vous y mettre, vous pouvez déjà évaluer votre exposition publique avec des solutions en ligne comme :

Security Space Audit

4.11.2 Veiller

  • Afin de mettre en oeuvre un suivi régulier des vulnérabilités, il faut consulter régulièrement les alertes CERT-FR [gouvernemental](Computer Emergency Response Team)  Il existe des services d’abonnements et notifications.
  • Un CERT est un centre d’alerte et de réaction aux attaques informatiques, destiné aux entreprises ou aux administrations, mais dont les informations sont généralement accessibles à tous.
  • Cherchez et mettez à jour vos appareils régulièrement.

4.11.3 Surveiller

Maisons connectées et Cybersécurité - surveiller monitoring

Là, le sujet est assez fastidieux mais mérite quelques pistes tout de même. Surveiller quoi et avec quel outil ? Ce n’est pas évident de conseiller des outils en la matière. Je me cacherais donc derrière la même excuse que précédemment : Dans le cas présent l’hétérogénéité de nos installations ne permet pas d’élire les meilleurs outils pour chacun des systèmes d’exploitations que nous utilisons. Pour ma part, système et réseaux sont sur des plateformes Linux à 100% et seul les terminaux (Ordinateur, Smartphone, Tablette) sont iOS et Windows.

Mes outils favoris reste assez souvent des commandes terminal Linux comme :

  • netstat,
  • netcat (nc),
  • nmap, tcpdump,
  • mitmproxy

En mode graphique, Wireshark reste un incontournable.

Pour les aspects analyse de flux (Paquet) j’utilise les fonctions DPI (Deep Inspection Packet) d’« Unifi controler » [Demo en ligne] ce qui est très accessible graphiquement.

Analyse DPI

Nous pourrions aussi expliquer les outils comme Bro IDS, Suricata, Moloch, Pentestbox, P4wnP1, USB Rubber Ducky, Elasticsearch, Logstash, Kibana, Critical Stack, Tripwire, BriarIDS, Security Onion, ou encore SweetSecurity, mais un autre dossier serait nécessaire pour distinguer les différences entre ces puissants environnements logiciels de type IDS/IPS (Intrusion detection system ou Intrusion prevention system) ou de Pentesting.

pentesting ids ips

Ceux sont des solutions assez consistantes pour lesquels il faut déjà avoir une connaissance TCP/IP très approfondie. Pour ma part, j’ai utilisé plusieurs de ces solutions, et j’utilise finalement l’implémentation Bêta de l’UniFi Controller (A partir de la version UniFi 5.7.2 la fonction IPS apparaît en fonction bêta).

Lorsqu’une action anormale est détectée une alerte par mail ou une notification dans l’app mobile est envoyée :

Unifi Controller IDS / IPS

Cela sera donc à vous de définir vos logiciels favoris en fonction de votre contexte technique.

L’intelligence artificielle, une révolution pour la cybersécurité ?
Nul doute que l’analyse temps réel de centaines de logs nécessite un traitement réaction accéléré. Il semble donc plus que probable que IA trouve rapidement sa place parmi les futurs solutions IPS .

Face à une quantité toujours plus importante de données, identifier une activité illicite parmi un flot d’actions légitimes devient de plus en plus complexe. Le balayage manuel d’une telle quantité de données (ex : logs) n’est plus possible depuis longtemps. [Source]

Le miracle et mirage commercial

Quant aux solutions résidentielles clés en mains agrégeant box/routeur/wifi + VPN + IA pour protéger vos appareils à la maison, il me semble que ceux ne sont pour l’instant que des arguments commerciaux pour vendre des routeurs SOHO avec une refonte ergonomique les rendant plus accessible, mais paradoxe intéressant, ces « boxes » ont souvent moins d’options de configuration que des routeurs deux fois moins chers. De mon point de vue, Il n’y a à ce jour aucune vraie solution intégrée de protection résidentielle.

5. Conclusion

Si vous hébergez qu’un seul ou deux objets connectés, ou si votre pool d’adresses IP ne dépasse pas 10 nœuds (appareils), pas la peine de mettre en place des solutions surdimensionnées comme évoquées plus haut. Une bonne stratégies de filtration internet et quelques règles pare-feu peuvent faire l’affaire. A minima tenter de cloisonner/isoler les objets pour lesquels vous semblez avoir des doutes.

Ne comptez que sur vous-même, car les éditeurs et les constructeurs sont souvent trop discrets quand à leurs erreurs de développements. Les éditeurs et constructeurs de renommées internationales sont implicitement obligés de corriger leurs vulnérabilités en raison de leur forte exposition aux piratages de leur systèmes.

Un produit vendu à de grandes quantités reste l’objectif de choix des pirates. Microsoft en son temps était le symboles des failles dans tous les sens… Maintenant, Google/Androïd est au devant de la scène car c’est la plateforme connectée la plus représentative sur terre. Donc la cible la plus pertinente pour toucher le plus grand nombre de machines. Heureusement que ces grands éditeurs corrigent parfois leurs systèmes.

Par contre, on constate parfois beaucoup moins d’implication et de réactivité sur les aspects « sécurité » pour les éditeurs et fabricants à cycle de développement court. En effet, à ce jour que les produits mis sur le marché « rapidement » (opportunisme) sont assez souvent dépourvu de stratégies de sécurité. Il faut donc être très vigilant avec ces équipements et sociétés récentes qui répondent en priorité à la demande commerciale sans intégrer de spécifications dédiées à la sécurité.

  • Le règlement européen sur les données personnelles (RGPD) devrait lisser le niveau d’exigence attendu.
  • Et si un label cyber-responsable permettait d’identifier rapidement les constructeurs répondant à un minimum de qualité sécuritaire ?
  • Y a-t-il un moyen de savoir rapidement si un périphérique IoT domestique est sécurisé ?

Il existe une plateforme web indépendante (sur le papier) effectuant des évaluations de sécurité d’objets connectés. Cette plateforme se nomme https://www.iot-tests.org. La base de données est loin d’être exhaustive et le barème d’évaluation n’est pas d’une grande précision, mais les éléments d’analyse de l’objet sont intéressants.

La vérité est parfois douloureuse, mais dans certains cas, mieux vaut se rendre à l’évidence. C’est ce qu’a fait le Broadband Internet Technical Advisory Group (Bitag), qui, dans son dernier rapport, a décidé de regarder les choses en face au regard de l’Internet des Objets : non, les consommateurs ne vont pas mettre à jour le microcode de leurs appareils. « Il est plus raisonnable de supposer que la plupart des utilisateurs finaux ne prendront jamais les mesures nécessaires pour mettre à jour leurs logiciels », a ainsi déclaré le Bitag qui recommande, entre autres choses, aux fabricants de mettre en place des mécanismes de mises à jour automatiques et sécurisés.

« Par défaut, les périphériques IoT ne devraient pas être accessibles par des connexions réseau entrantes, y compris à partir de périphériques qui se trouvent dans la même maison, car ceux-là ont pu être compromis », déclare le Bitag qui rappelle qu’un pare-feu ne suffit pas pour bloquer les communications non sécurisées.

Source : Le Monde Informatique – Comment sécuriser l’IoT : en s’attendant au pire

Nous espérons que ce dossier vous aura permis d’assimiler les risques et vous sensibiliser à votre part de responsabilité dans vos choix et vos actes.

 

The post Maisons connectées et Cybersécurité appeared first on Domotique Info.

Viewing all 261 articles
Browse latest View live