Aller au contenu

Rechercher dans la communauté

Affichage des résultats pour les étiquettes 'tuto'.



Plus d’options de recherche

  • Rechercher par étiquettes

    Saisir les étiquettes en les séparant par une virgule.
  • Rechercher par auteur

Type du contenu


Forums

  • Bienvenue
    • Annonces et suggestions
    • Nouveau ? Présentez-vous
    • Le bistrot
    • Mon installation domotique
    • Autres Solutions Domotiques
  • La HC2 et ses périphériques
    • La Home Center pour les nuls
    • Home Center 2 & Lite
    • Modules Fibaro
    • Modules Z-wave
    • Périphériques et matériels autres
    • Plugins
    • Alarme & Vidéo-surveillance
    • Multimédia
    • Chauffage et Energie
    • Actionneurs & Ouvrants (Portail, volets...)
    • Eclairage
    • Applications Smartphones et Tablettes
    • English Section
  • Les objets connectés
    • Les Assistants Vocaux
  • Fibaro's Awards
    • Membre du mois
    • Jeux concours & Cadeaux
  • Les bonnes affaires
    • Sites internet
    • Petites annonces

Calendriers

Aucun résultat à afficher.


8 résultats trouvés

  1. Bonjour tous le monde, Chose promise chose due, voici le tant attendu "module" permettant de piloter un Xiaomi Vaccum, pour ceux qui ne le savent pas cet aspirateur robot v1 (la v2 est en pré-commande, elle dispose en plus de l'option lavage et quelques évolutions supplémentaires) concurrence les grands du marché tel que Neato ou encore iRobot. Et oui pour 230€ vous pouvez disposer de "Conchita" et celle-ci rivalise face aux aspirateurs de l'ordre de 600€ - 800€ des marques précédemment citées. Revenons à la domotique, tous démarra lorsque j'ai dis à madame que j'allais mettre 6€ (Plugin Jeedom) de plus au profit de "Conchita", et la scène de ménage , bon j'exagère mais j'ai quand même eu le droit à un : "Tu ne peux pas le faire avec ta Box Fibaro, 590€ et c'est pas capable de faire ça !" J'ai remballé mon porte monnaie et j'ai dis ok "challenge accepted" ! Et nous voici quelques semaines plus tard, après quelques claquage de tête sur les murs, avec quelque chose de fonctionnel, j'avoue c'est un peu l'usine à gaz mais j'ai pas trouvé plus simple avec les limitations que l'on a avec les Scènes et les VD... Pour Expliquer un peu le principe : Les produits Xiaomi dialogue via protocol UDP (port 54321 pour le Vaccum je ne sais pas ce qu'il en ai pour les autres objet de la marque), la construction de la trames UDP est expliquer ici ce dernier lien ma grandement servi et j'en remercie l'auteur sans lui je n'aurais jamais pu commencer. Sans entrée trop dans les détails, si l'on veut dialogué avec le robot on doit lui dire bonjour pour récupérer une séquence, ensuite on construite le paquet à lui transmettre en l'encryptant avec un Token propre à chaque aspirateur (AES128, MD5...) on lui transmet et on décrypte la réponse. Dans notre box voici comment le dialogue opère : Hello (VD ) ==> Encryptions du paquet (Scène) ==> Envoie de la trame au Robot (VD) ==> Description de la réponse (Scène) Fini le blabla, je vous invite à créer une nouvelle scène en lua en modifiant les propriétés User Params à savoir : Le token de votre robot. (Vous pouvez la récupérer à l'aide du Tuto de Cédric ici ) On reviendra remettre l'id du VD plutard Scène : Xiaomi Vaccum Scene.lua Virtual Device: Le virtual device à importer et à configurer comme suis (je vous conseille d'éditer le vfib avec le numéro de votre icône une fois celle-ci importé) : Entre l'adresse ip du Robot ainsi que le numéro de la Scène créer précédemment Virtual Device : Xiaomi_Vacuum.vfib N'oubliez pas de revenir sur votre scène pour y ajouter l'ID du VD. Attendez 30 secondes et en principe vous devriez avoir des informations dans le VD Icône :
  2. Bonjour à tous, Je suis à la recherche d'un tutoriel qui décrirait comment installer HomeBridge sur un NAS Synology. J'ai trouvé beaucoup de résultats quant à l'installation sur un Rasberry Pi, mais aucun décrivant la démarche sur un NAS Synology. Je possède un DS916+ avec 4 Disques Durs de 3To et il serait dommage de devoir investir dans un Rasberry alors que l'installation semble pouvoir se faire sur un Syno. J'ai donc pu trouver le plugin pour Fibaro HC2 ici. Et un tuto pour une installation pour Vera ici. Cependant, je n'en suis encore qu'à me premières heures d'utilisation et de compréhension de la domotique et je ne suis pas capable de mixer moi-même ces deux informations en étant certain du résultat. Je requiers donc votre aide, une fois de plus, pour éventuellement me guider, voire même me trouver un tutoriel que je n'aurai qu'à suivre pour ne pas commettre de bourde... Je vous remercie par avance de vos réponses !
  3. Salut à tous !!! Pour mon premier post, je partage avec vous quelques VD lié à l’univers Philips Hue. Ils sont inspirés de ce que j’ai pu glané ici et là sur le forum, notamment le VD de @Zorgonaute84 et le VD de @Moicphil. /!\ Avant de commencer : Créer un compte Développeur sur son bridge Connectez-vous au Bridge Hue depuis un navigateur internet via l'adresse suivante : http://<IPduBridgeHUE>/debug/clip.html Dans URL : vous tapez : /api Dans Message body : {"devicetype":"my_hue_app#newdevelopper"} Appuyez sur le bouton d'association de votre bridge HUE, puis vous cliquez sur POST Dans Command Response : recopier le username Récupérer la configuration de votre bridge Connectez-vous au Bridge Hue depuis un navigateur internet via l'adresse suivante : http://<IPduBridgeHUE>/debug/clip.html Dans URL : vous tapez : /api/VotreUsername/ Cliquez sur GET Dans Command Response : recopier et sauvegarder le texte afin de conserver sur le coude vos n° de lampe, n° de groupe, etc… Créer la variable globale VD_Hue_User Dans le panneau de Variables, ajouter, dans le tableau Variables prédéfinies, la variable VD_Hue_User. Donner lui la valeur de votre username récupéré sur le Bridge. Supprimer l’autre valeur, en lui donnant la même valeur. Du coup, pour la plupart des VD proposés, vous aurez plus qu’à renter l’adresse IP et le n° de l’ID (n° de la lampe, n° du groupe, etc…) dans le port TCP. Quelques liens utiles https://my.meethue.com/fr-fr/ https://developers.meethue.com/documentation/getting-started https://developers.meethue.com/philips-hue-api https://developers.meethue.com/documentation/supported-lights Logiciel WinHue 3 : https://hyrules.github.io/WinHue3/ Gamut - Espace Colorimétrique Philips utilise 3 Espaces de couleur : A, B et C. en fonction de la référence du produit. Les VD proposés sont optimiser pour un Gamut de type C. Pour le Gamut A, relativement proche, il ne devrait pas y avoir de soucis. Par contre pour le Gamut B, à cause de l'espace colorimétrique, les couleurs entre le jaune et le bleu (Lime, Vert, Jade, Cyan, Bleu ciel) devraient logiquement être presque blanche... Icônes : Pour chaque VD ou Scène, pour l'icône par défaut, j'utilise toujours une icône invalide (la rose avec ?). Cela me permet de savoir au premier coup d'œil si le VD ou la scène fonctionne correctement. --------------------------------------- VD Talwayseb - Bridge Philips Hue : - Renseigner l'adresse IP de votre bridge dans le champ "Adresse IP" du module - Renseigner le port 80 de votre bridge dans le champ "Port TCP" - Ajouter les 7 icônes pour le modèle de votre choix pour chaque état : Bridge V1 Bridge V2 - Dans la Boucle Principale (Main Loop), il faut également ajouter le numéro des icônes en fonction de chaque état. Téléchargement : Le ZIP : VD Talwayseb - Bridge Philips Hue V1.0.zip (Contient le .VFIB + les icônes) Mot de Passe : Talwayseb --------------------------------------- VD Talwayseb - Ampoule Philips en fonction du type : - Renseigner l'adresse IP de votre bridge dans le champ "Adresse IP" du module - Renseigner le n° ID de la lampe Hue à contrôler dans le champ "Port TCP" - Ajouter les 26 icônes pour la catégorie de votre choix pour chaque couleur : Ampoule E27 Ampoule GU10 Bandeau LED Ampoule blanche dimmable - Dans la Boucle Principale (Main Loop), il faut également ajouter le numéro des icônes en fonction de chaque couleur. Téléchargement : Le ZIP pour les ampoules de couleurs : VD Talwayseb - Ampoule Philips Hue Color V1.0.zip (Contient le .VFIB + les icônes) Le ZIP pour les ampoules de couleurs étendues : VD Talwayseb - Ampoule Philips Hue White & Color V1.1.zip (Contient le .VFIB + les icônes) Le ZIP pour les ampoules blanche d'ambiance : VD Talwayseb - Ampoule Philips Hue White Ambiance V1.0.zip (Contient le .VFIB + les icônes) Le ZIP pour les ampoules blanche dimmable : VD Talwayseb - Ampoule Philips Hue White V1.0.zip (Contient le .VFIB + les icônes) Mot de Passe : Talwayseb --------------------------------------- VD Talwayseb - Groupe Philips Hue White & Color : - Renseigner l'adresse IP de votre bridge dans le champ "Adresse IP" du module - Renseigner le n° ID du groupe Hue à contrôler dans le champ "Port TCP" - Ajouter les 26 icônes pour chaque couleur - Dans la Boucle Principale (Main Loop), il faut également ajouter le numéro des icônes en fonction de chaque couleur. Téléchargement : Le ZIP pour le groupe des ampoules de couleurs : A venir Le ZIP pour le groupe des ampoules de couleurs étendues : VD Talwayseb - Groupe Philips Hue White & Color V1.1.zip (Contient le .VFIB + les icônes) Le ZIP pour le groupe des ampoules blanche d'ambiance : A venir Le ZIP pour le groupe des ampoules blanche dimmable : A venir Mot de Passe : Talwayseb --------------------------------------- VD Talwayseb - Beyond Philips Hue : - Renseigner l'adresse IP de votre bridge dans le champ "Adresse IP" du module. - Renseigner le n° ID du groupe Hue par défaut à contrôler dans le champ "Port TCP". - Créer une variable globale unique pour chaque VD pour le mode. Dans mon VD, elle s'appelle VD_ModeHue_SAM. - Pour la plupart des Boutons et dans la Boucle Principale (Main Loop), il faut renseigner les groupes à gérer en fonction du mode choisi : NumGroupUp pour le N° du Groupe Beyond Up NumGroupDown pour le N° du Groupe Beyond Down - Ajouter les 96 icônes pour chaque couleur : Icônes communes Mode1 (gestion de l'Eclairage Bas en Blanc + Eclairage Haut en Couleur) Mode2 (gestion de l'Eclairage Bas en Couleur + Eclairage Haut en Blanc) Mode3 (Gestion des 2 sources lumineuses de façon identique) Mode4 (Gestion de la source lumineuse Haute) Mode5 (Gestion de la source lumineuse Basse) - Dans la Boucle Principale (Main Loop), il faut également ajouter le numéro des icônes en fonction de chaque couleur pour chaque mode. - Toujours dans la boucle, renseigner un n° ID d'une lampe comprise dans le groupe par défaut. Téléchargement : Le ZIP : VD Talwayseb - Beyond Philips Hue V1.2.zip (Contient le .VFIB + les icônes) Mot de Passe : Talwayseb --------------------------------------- VD Talwayseb - CMD Général Philips Hue White & Color (Groupe 0) : /!\ attention à la gestion des groupes, j'ai personnellement un groupe avec des informations différentes. j'ai fais en sorte de ne pas l'interroger. - Renseigner l'adresse IP de votre bridge dans le champ "Adresse IP" du module - Renseigner le n° ID du groupe Hue par défaut à contrôler dans le champ "Port TCP" - Ajouter les 26 icônes pour chaque couleur - Dans la Boucle Principale (Main Loop), il faut également ajouter le numéro des icônes en fonction de chaque couleur. - Sur certain Bouton et dans la Boucle Principale, il faut renseigner la variable CdeGroupMax avec le nombre de groupe que vous avez. Téléchargement : Le ZIP : VD Talwayseb - CMD Général Philips Hue White & Color (Groupe 0) V1.1.zip (Contient le .VFIB + les icônes) Mot de Passe : Talwayseb Voiloùuuuuu !!! C'est avec plaisir que je prendrai les suggestions d'amélioration !!!
  4. DYNHOST Voici un petit tuto pour ceux qui ont (ou vont) acheter un domaine chez OVH. Ceci propose un service pour mettre à jour un sous-domaine avec une ip dynamic via leur services dynhost. J'utilise un script fournit par OVH pour linux (debian pour moi) ou j'ai adapter les logs car je trouve que sa en foutait un peu partout. Configuration de la plate-forme OVH.Rendez-vous sur le manager ovh Allez dans l'onglet DynHost Ajoutez un DynHostSous-domaine: exemple.domotique-fibaro.com ip: Récupérez votre ip sur par exemple le site monip.org et valider Cliquez sur Gérer les accès et créez un identifiantssuffixe de l'identifiant: domotique-fibaro.com-ceciestmonexemple sous-domaine: exemple.domotique-fibaro.com Rentré un mot de passe alphanumériques: 12345678 et valider 2. Configuration de votre Debian Une fois sur votre debian, sur un terminal mkdir /opt/domotique-fibaro && cd /opt/domotique-fibaro && touch old.ip Mettez les fichiers de la pièce jointe dans le dossier créer et tappez Dans le fichier de configuration écrivez Sortez et faite Vous devriez voir que tous c'est bien passé. Maintenant on va faire tourner le script automatiquement toutes les 5 minutes et ajoutez avant la dernière ligne et quittez Maintenant vous avez votre sous domaine pour votre application fibaro. dynhost.zip
  5. Pluviométrie Avec Netatmo

    PLUVIOMETRIE (ET ARROSAGE) AVEC NETATMO firmware 4.x seulement Partie 1 : récupérer l'historique Netatmo est une station météo sur laquelle vous pouvez brancher un "pluviomètre" de la même marque. Afin d'exploiter les données de ce pluviomètre et vous pouvez utiliser l'application Netatmo ou son site web. Vous pouvez aussi installer le plugin Netatmo fourni par Fibaro. Ce dernier vous affichera uniquement les données à l'instant précis ou vous être entrain de le regarder. Nous, nous voulons allez plus loin, nous voulons connaitre les quantités de pluie ayant eu lieu depuis : 1 jour, 1 semaine, 1 mois, cela dans l'optique de pouvoir gérer correctement notre arrosage. Pour ce faire, il existe un grand nombre de script PHP, Google Script qui permet de gérer cela .. mais ... depuis la v4.x, Fibaro nous fait bénéficier de la librairie net.httpClient dans une scène et cette librairie nous permet de récupérer des données via HTTPS, ce qui auparavant n'était pas possible depuis notre HC2. Alors vu que nous avons, aujourd'hui, tout le nécessaire pour attaquer notre Netatmo directement depuis notre HC2, pourquoi s'en priver Les données recueillies par votre Netatmo sont mis à diposition via des API que vous pouvez interroger quand bon vous semble à la seul condition d'avoir un compte Développeur Netatmo (ne vous inquiéter pas, vous n'aurez pas beson de développer, ni de répondre à des questions étranges). Pour vous inscrire, c'est donc ici : https://auth.netatmo.com/fr-FR/access/signup Suite à votre enregistrement, vous allez obtenir : un id (exemple : 45b1931d19665803515b571c) un code secret (exemple : lyRkJXZLIM8xShACtmQjsCQV4U3djL08Zq1hUStbUJ4) Ces informations + votre login et mot de passe vont permettre d'accéder à vos informations. Voici donc le script nécessaire, à vous de l'importer dans une nouvelle scène et de modifier les 4 premières lignes. local n_client_id = "45b1931d19665803515b571c" local n_client_secret = "lyRkJXZLIM8xShACtmQjsCQV4U3djL08Zq1hUStbUJ4" local n_username = "______________@_____.com" local n_password = "password" local hc2_module_virtuel = 139 -- le module virtuel "Pluie" local debug = true -- affiche ou non les message dans la console local long_lat_adjust = 0.1 -- ajustement de la distance pour trouvé un pluviomètre local version = 2.0 -- ------------------------------------------------------------------------ -- NE PAS TOUCHER -- ------------------------------------------------------------------------ local force_use_rain_public = false local loc = api.get("/settings/location") local lat_ne = loc.latitude + long_lat_adjust local lon_ne = loc.longitude + long_lat_adjust local lat_sw = loc.latitude - long_lat_adjust local lon_sw = loc.longitude - long_lat_adjust local token = "" local int_id = "" local ext_id = "" local ext_bat = 0 local rain_id = "" local rain_bat = 0 local temperature_interieure = -1000 local temperature_exterieure = -1000 local co2 = -1000 local humidite_interne = -1000 local humidite_externe = -1000 local pression = -1000 local bruit = -1000 local rains = {hour = -1000, day = -1000, week = -1000, month = -1000} -- ------------------------------------------------------------------------ -- Exécuté après chaque requète HTTP -- ------------------------------------------------------------------------ function afterHttpRequest() if (temperature_interieure > -1000) then end if (temperature_exterieure > -1000) then end if (co2 > -1000) then end if (humidite_interne > -1000) then end if (humidite_externe > -1000) then end if (pression > -1000) then end if (bruit > -1000) then end if (rains["hour"] > -1000) then if (rains["hour"] == -1) then fibaro:call(hc2_module_virtuel, "setProperty", "ui.lblHeure.value", "n/a") else fibaro:call(hc2_module_virtuel, "setProperty", "ui.lblHeure.value", " "..rains["hour"]) end end if (rains["day"] > -1000) then if (rains["day"] == -1) then fibaro:call(hc2_module_virtuel, "setProperty", "ui.lblJour.value", "n/a") else fibaro:call(hc2_module_virtuel, "setProperty", "ui.lblJour.value", " "..rains["day"]) end end if (rains["week"] > -1000) then if (rains["week"] == -1) then fibaro:call(hc2_module_virtuel, "setProperty", "ui.lblSemaine.value", "n/a") else fibaro:call(hc2_module_virtuel, "setProperty", "ui.lblSemaine.value", " "..rains["week"]) end end if (rains["month"] > -1000) then if (rains["month"] == -1) then fibaro:call(hc2_module_virtuel, "setProperty", "ui.lblMois.value", "n/a") else fibaro:call(hc2_module_virtuel, "setProperty", "ui.lblMois.value", " "..rains["month"]) end end end -- ------------------------------------------------------------------------ -- Affichage dans la console -- ------------------------------------------------------------------------ function log(message, force) force = force or false if (debug or force) then print(__convertToString(message)) end end -- ------------------------------------------------------------------------ -- Retourne le niveau de batterie en pourcent -- ------------------------------------------------------------------------ function calcBat(bat, ext) local max = 6000 local min = 4200 if (ext) then max = 6000 min = 3600 end if (bat > max) then bat = max end return math.floor(bat * 100 / max) end -- ------------------------------------------------------------------------ -- Arrondi -- ------------------------------------------------------------------------ local function roundToNthDecimal(num, n) local mult = 10^(n or 0) return math.floor(num * mult + 0.5) / mult end -- ------------------------------------------------------------------------ -- Interrogation de l'API -- ------------------------------------------------------------------------ function getResponseData(url, body, func) local http = net.HTTPClient() http:request(url, { options = { method = 'POST', headers = { ["Content-Type"] = "application/x-www-form-urlencoded;charset=UTF-8" }, data = body }, success = function(response) func(json.decode(response.data)) afterHttpRequest() end, error = function(response) log(" ERROR !!! " .. url, true) end, }) end -- ------------------------------------------------------------------------ -- Mesures de l'unité interne -- ------------------------------------------------------------------------ function getMesuresInt() getResponseData("https://api.netatmo.net/api/getmeasure","access_token="..token.."&device_id="..int_id.."&scale=max&type=Temperature,CO2,Humidity,Pressure,Noise&date_end=last", function(data) log("----------========== Module intérieur ==========----------") temperature_interieure = data.body[1].value[1][1] co2 = data.body[1].value[1][2] humidite_interne = data.body[1].value[1][3] pression = data.body[1].value[1][4] bruit = data.body[1].value[1][5] log("temperature_interieure = " .. temperature_interieure) log("co2 = " .. co2) log("humidite_interne = " .. humidite_interne) log("pression = " .. pression) log("bruit = " .. bruit) end ) end -- ------------------------------------------------------------------------ -- Mesure de l'unité externe -- ------------------------------------------------------------------------ function getMesuresExt() getResponseData("https://api.netatmo.net/api/getmeasure","access_token="..token.."&device_id="..int_id.."&module_id="..ext_id.."&scale=max&type=Temperature,Humidity&date_end=last", function(data) log("----------========== Module extérieur ==========----------") temperature_exterieure = data.body[1].value[1][1] humidite_externe = data.body[1].value[1][2] log("temperature_exterieure = " .. temperature_exterieure) log("humidite_externe = " .. humidite_externe) end ) end -- ------------------------------------------------------------------------ -- Obtention des informations sur un pluviomètre proche -- ------------------------------------------------------------------------ function getRainNear() getResponseData("https://api.netatmo.net/api/getpublicdata","access_token="..token .. "&lat_ne="..lat_ne.."&lon_ne="..lon_ne.."&lat_sw="..lat_sw.."&lon_sw="..lon_sw, function(data) --log(data) rains["week"] = -1 rains["month"] = -1 rains["hour"] = -1 rains["day"] = -1 log("----------========== D e v i c e s =========----------") for _, v in pairs(data.body) do for l, w in pairs(v.measures) do if (type(w.rain_24h) ~= "nil") then rains["day"] = w.rain_24h rains["hour"] = w.rain_60min end end end if (rains["day"] == -1000) then log("Impossible de trouver un pluviomètre à proximité, augmentez [long_lat_adjust]", true) else log("Pluie jour : " .. rains["day"]) log("Pluie heure : " .. rains["hour"]) end end ) end -- ------------------------------------------------------------------------ -- Mesure du détecteur de pluie historique -- ------------------------------------------------------------------------ function getMesuresRain(duree, variable) local now = os.time(); getResponseData("https://api.netatmo.net/api/getmeasure","access_token="..token.."&device_id="..int_id.."&module_id="..rain_id.."&scale=1hour&type=sum_rain&real_time=true&date_begin="..os.date("!%c", (now - duree)), function(data) log("----------========== Pluie histo ==========----------") local cumul = 0 for k, v in pairs(data.body) do for l, w in pairs(v.value) do cumul = cumul + w[1] end end cumul = roundToNthDecimal(cumul, 2) rains[variable] = cumul log("rain["..variable.."] = " .. rains[variable]) end ) end -- ------------------------------------------------------------------------ -- Obtention des informations sur les devices -- ------------------------------------------------------------------------ function getDevices() getResponseData("https://api.netatmo.net/api/devicelist","access_token="..token, function(data) log("----------========== D e v i c e s =========----------") for _, v in pairs(data.body.modules) do if (v.data_type[1] == "Rain") then rain_id = v._id rain_bat = calcBat(v.battery_vp, true) else ext_id = v._id ext_bat = calcBat(v.battery_vp, true) end end int_id = data.body.devices[1]._id getMesuresInt() getMesuresExt() if (rain_id ~= "" and not force_use_rain_public) then getMesuresRain(60 * 60, "hour") getMesuresRain(60 * 60 * 24, "day") getMesuresRain(60 * 60 * 24 * 7, "week") getMesuresRain(60 * 60 * 24 * 30, "month") else getRainNear() end end ) end -- ------------------------------------------------------------------------ -- Authentification -- ------------------------------------------------------------------------ function auth(nextFunction) local request_body = "grant_type=password&client_id=" .. n_client_id .. "&client_secret=" .. n_client_secret .. "&username=" .. n_username .. "&password=" .. n_password .. "&scope=read_station" getResponseData("https://api.netatmo.net/oauth2/token", request_body, function(data) token = data.access_token log(token) nextFunction() end ) end auth(getDevices) log("Last request : " .. os.date("%x - %X"), true) si vous avez l'âme d'un développeur ou d'un aventurier, la méthode à modifier est afterHttpRequest() sinon, rendez-vous au post suivant. P.S. Merci à @PITP2 pour son support. Edit : nouvelle version du script. Si ce dernier détecte que vous n'avez pas de pluviomètre, il va rechercher un pluviomètre à proximité de chez vous (uniquement les relevés de la dernière heure et jour). La distance de recherche peux être adaptée en ajustant la variable long_lat_adjust (0.1 par défaut). Il s'agit du cercle de recherche en latitude/longitude autour de chez vous.
  6. Ce script consiste a envoyer un SMS via le plugin freesms de notre amis Krikroff que je remercie au passage pour son super boulot. A chaque ouverture ou fermeture d'une porte vous recevrez un Sms (Service Gratuit chez FREEMobile) Ce script peu bien sur être adapter pour d'autres modules 1 - Installation du plugin 2 - créé une instance et ajouter vos identifiant (il faut que le service soit activé sur votre compte freemobile c'est gratuit) 3 - faire un test pour voir si tout fonctionne parfaitement 4 - Crée un variable global FreeSmsID avec commme valeur l'ID de l'instance (J'utilise cette solution car a chaque mise a jour il faut ré installer le plugin puis re crée l'instance comme je suis pas trés courageur j' ai pas envie de modifier l'id dans toutes les scripts je modifie donc la variable global a chaque nouvelle installation du plugin, si vous avez plusieurs forfait il suffit d'utilisé un variable global par instance) 5 - Crée une nouvelle Scème LUA et ajouter ce code %% properties 35 value 39 value 152 value %% globals --]] local OrigineDeclenchement = fibaro:getSourceTrigger() -- on demande au système de récupérer (get) l'origine (Source) du déclenchement de la scène (Trigger) if OrigineDeclenchement['type'] == 'property' then -- si l'origine du déclenchement de la scène est la modification d'une propriété d'un module surveillée dans l'entête alors local id = OrigineDeclenchement['deviceID'] -- Récuperation de l'id du déclencheur local Name = fibaro:getName(id) -- Récuperation Nom du module déclencheur local MaPorte = fibaro:getValue(id, 'value' ) -- récuperation de la valeur de l'id déclencheur local IdSMS = fibaro:getGlobalValue("FreeSmsID") -- récuperation de la variable global instance freesms local MessageSms = ('La ' ..Name) fibaro:debug('id module = '..id) fibaro:debug('Nom du module = '..Name) fibaro:debug( 'ID Plugin SMS = ' .. IdSMS) fibaro:debug( 'value = ' .. MaPorte) if (MaPorte == '0') then fibaro:call(IdSMS, "send", MessageSms .." est Fermee") fibaro:debug( 'Fermer' ) else fibaro:call(IdSMS, "send", MessageSms .." est Ouverte") fibaro:debug( 'Ouverte' ) end elseif OrigineDeclenchement['type'] == 'other' then -- sinon si l'origine du déclenchement de la scène est autre alors fibaro:debug('La scène a été lancée manuellement') end - 6 Ajouter l id des modules pour lesquels vous voulez recevoir un SMS ex : pour un détecteur d'ouverture id 100 on peut en ajout comme bon vous semble . --[[ %% properties 100 value %% globals --]] C'est mon premier script que je post donc je demande a Mr Moicphil de bien vouloir être indulgent si j'ai mal posté mon post merci
  7. Je vous propose un module virtuel pour les amplificateurs audio/video de la marque DENON, en attendant la v4 et des bons plugins. Comme j'ai eu du mal à le créer, à trouver la façon de communiquer par IP (DENON ne dit rien nulle part à propos de ça) et qu'ici on aime partager... Basé sur le sujet suivant, du forum officiel de Fibaro (merci à boerremk pour la création du sujet et à ROBBshop pour le code plus léger): http://forum.fibaro.com/viewtopic.php?t=1755&postdays=0&postorder=asc&start=0 Les fonctions peuvent être utilisées pour d'autres modèles d'ampli. Les commandes spécifiques par modèles au lien suivant: http://www.denon.fr/fr/pages/home.aspx Chercher l'ampli par son nom, puis onglet telechargement et notice, puis protocole RS232. Consignes: Avant tout il faut permettre à l'ampli d'être contrôlé par IP (voir vos paramètres) 1) Importer le module virtuel au format vfib 2) Le nommer, lui assigner une pièce, indiquer son adresse IP sur votre réseau (ex 192.168.1.10) et le port d'ouverture de votre routeur (ex 80 pour la freebox v6) 3) Changer l'icône principale 4) Le port d'ouverture par défaut de l'ampli est 23, si le votre est différent il faudra le changer ligne 3 de chaque bouton 5) Vous pouvez renommer les labels ZONE1, ZONE2, Source ZONE 1 et Source ZONE 2 mais ne modifiez pas les ID des labels 6) Vous pouvez modifier les noms des boutons ⎋ ZONE 1 et ⎋ ZONE 2 ainsi que dans les lignes 23 et 31 du code correspondant Ces boutons sont pour mettre ON ou OFF chaque ZONE en fonction de l'état en cours. Cependant il n'est pas nécessaire d'allumer l'ampli avant de choisir une source, la sélection de la source d'entrée met automatiquement l'ampli en marche 7) Vous pouvez modifier les noms des boutons des sources sous les labels Source ZONE 1 et Source ZONE 2, pour indiquer ce que vous avez branché sur les entrées correspondantes ainsi que dans les lignes 22 et 23 du code correspondant 8) Vous pouvez modifier les noms des boutons 1 à 3 sous le label des stations favorites pour indiquer le nom de vos stations enregistrées ainsi que dans les lignes 22 et 23 du code correspondant 9) Vous pouvez modifier dans le code suivant, le nom des sources pour indiquer ce que vous avez branché sur les entrées correspondantes, aux lignes 73,75,77,79,87,95 et 97. Vous pouvez évidemment ajouter ou retirer des boutons. Attention toutefois si vous en retirez à modifier le main loop en conséquence. Par exemple il peut être intéressant d'enregistrer les réglages en cours (source d'entrée, volume, mode son...) quand vous regardez/écoutez la source branchée sur l'entrée MEDIA PLAYER de votre ampli, via le bouton QUICKMEMORY1, puis de remplacer dans les codes du boutons de sélection de la source MEDIA PLAYER, la commande SIMPLAY ligne 20, par la commande MSQUICK1. Quand vous appuierez sur ce bouton plus tard, vous retrouverez les réglages que vous aviez lorsque vous avez enregistré. --Virtual Device --v0.1 du 02/11/2014 --v0.2 du 05/11/2014 Erreur modifiée dans les boutons quickmemory DENON_AVR-X3000.v0.2.vfib
  8. Une petite mise en situation de ma future installation de sécurité du logement, en utilisant non pas de détecteurs de mouvement zwave mais en rendant zwave des détecteurs couramment utilisés dans les habitations pour allumer des lumières. Pour ma part il s'agit de détecteurs Legrand 3 fils. Ainsi ils rempliront 2 rôles: allumer les LED de la lumière indirecte du plafond de l'entrée et des couloirs (via le module RGBW de Fibaro), et surveiller le logement lorsque j'activerai l'alarme avec un clavier RFID. A. Pour l’intégration d’un clavier RFID Basé sur le tuto suivant : http://e-domotic.fr/blog/autres-devices/realisation-dun-lecteur-rfid-zwave/ S’inspirant lui-même de cette page : http://homeautomategorilla.blogspot.fr/2011/03/materiel-controle-dacces-rfid.html I) Matériel nécessaire : Un clavier RFID (acheté sur ebay en tapant « keypad rfid », le clavier benext RFID n'étant malheureusement pas (encore?) géré par le HC2... Des badges RFID 125kHz également achetés sur ebay Un transformateur AC 230V en DC 12V (ou 24V suivant le clavier RFID) Un module universel Fibaro FGBS-001 « Universal Sensor » chez votre revendeur préféré II) Branchements Le branchement à l'arrière du clavier RFID: 12V et GND pour alimenter la clavier, NC et COM vers l'universal sensor Fibaro Le branchement de l'universal sensor Fibaro: Alimentation électrique par le même transfo que le clavier ou un autre (le module Fibaro s'alimente de 9V à 30V DC). Une entrée (IN1 ou IN2) branché à la borne NC du clavier, et le fil GND branché à la borne COM du clavier. On voit également les fils bleu blanc et marron du module Fibaro reliés à des dominos pour l’intégration d’une sonde de température (je me demandais si on pouvait avoir en même temps une remontée de la température et l’utilisation du module en tant que capteur universel, car les schémas de la notice indique le montage pour l’une ou l’autre des situations mais n’indique nulle part si on peut combiner ces 2 utilisations, chose validée par ce test ) III) Réglages Un très bon tuto surtout pour la partie qui surveille les brouillages zwave :http://domotique-info.fr/2013/06/fibaro-mise-en-place-de-la-securite-du-logement/ Réglage du clavier RFID : s’agissant d’un clavier pour ouverture de porte, lorsque le bon code est rentré ou lorsque le badge est passé devant, une impulsion électrique est envoyée par le clavier pendant 5s par défaut pour que la gâche de la porte reste ouverte. Pensant cela j’ai acheté un relai bistable comme sur le premier tuto en haut de page (à souder soit même au passage…) mais en faisant mes tests je me suis aperçu que le relai collait une seconde fois, les 5s écoulée… Comme si une nouvelle impulsion était renvoyée pour la fermeture de la gâche. Je n’ai pas trop compris le principe de fonctionnement. Quoi qu’il en soit je n’avais pas besoin de ce relai bistable car j’avais la possibilité de mettre le temps d’ouverture de la gâche à 0 ! Une seule impulsion est donc envoyée par le clavier RFID au module Fibaro.Pour les réglages du module fibaro, l’entrée IN peut rester en Normalement Fermée (paramètre 3 ou 4) Chaque passage de badge ou entrée de mot de passe valide sur le clavier fera changer l’état du module Fibaro (Safe ou Breached) B. Pour l’intégration de capteur de mouvement Legrand (ou autre) I) Matériel nécessaire Des détecteurs de mouvements (3 fils pour mon cas, mais possible en 2 fils aussi, la différence est que sur le 2 fils il n’y a pas de neutre sur le détecteur). Le modèle Legrand 78451 est sensé ne pas faire de bruit au déclenchement, je dois encore l’acheter pour vérifier. Un module universel Fibaro FGBS-001 « Universal Sensor » Un transformateur pour alimenter le module Fibaro Un relai monostable 230V monté sur un support DIN pour l’installer dans le tableau électrique http://www.conrad.fr/ce/fr/product/503003/Relais-industriel-4-inverseurs-RT-7-A-Finder-553482300040?queryFromSuggest=true (celui ci permet de brancher jusque 4 circuit différents. Un circuit peut être composé de plusieurs détecteurs montés en parallèle) II) Branchements III) Réglages J’ai posté un message sur ce forum en bas de page pour poser une question à laquelle j’ai répondu peu après. http://www.touteladomotique.com/forum/viewtopic.php?f=18&t=11715 Avec un relai schneider (qui sera surement remplacé par un autre moins gros et moins bruyant) j'ai fait la liaison entre mon detecteur Legrand et le module universel Fibaro FGBS321. EDIT : le module finder reste un peu bruyant quand même. A voir si il existe des relai silencieux… Sur le relais SCHNEIDER: Neutre du réseau sur A1 Sortie 220V du détecteur de mouvement sur A2 IN1 du module fibaro sur 2 Fil bleu (commun) du module sur 1 Quand le détecteur capte un mouvement, le courant 220V est envoyé via le fil navette sur le relais, qui est relié de l'autre coté au neutre. Le courant passe alors dans le relais et sa bobine ferme le contact sec. Le circuit du module fibaro est alors fermé (aucun courant ne circule c'est un contact sec). Le module change alors d'état. Pensez à changer le paramètre 3 ou 4 (suivant si vous avez branché IN1 ou IN2) en normalement ouvert (normalement fermé par défaut) sinon vous aurez l'information à l'envers (safe quand vous déclenchez le capteur et breached quand il revient en pause)
×