Personnalisation de Domoticz: ajout d'un matériel

Posez ici vos questions d'utilisation, de configuration de DomoticZ, de bugs, de conseils sur le logiciel lui même dans son utilisation et son paramétrage.
Des forums spécifiques sont ouverts ci-dessous pour regrouper les différents sujets.
raymi
Messages : 11
Inscription : 23 janv. 2016, 17:35
Localisation : Montréal

Personnalisation de Domoticz: ajout d'un matériel

Message par raymi »

Salut a toute la communauté !

Je suis Rémi, 32 ans de Montréal et je travaille dans le monde du logiciel embarqué.

J'ai depuis un moment un projet domotique pour ma maison, dont le but est - pour l'instant - de contrôler certaines lumières et radiateurs suivant certaines stimulations (j'y reviens...). Toute mon installation est personnalisé puisque je ne travaille qu'avec des Arduino.

J'ai par exemple conçu:
- un simulateur d'aube pour mon fils (une lumière bleue douce la nuit et une blanche progressive qui s'allume la matin, à une heure programmée)
- un détecteur de mouvement nocturne (pour le passage à côté de ma maison) pour allumer la lumière quand il fait nuit et qu'un mouvement est détecté
- un concierge automatique (pour contrôler la lumière dans l'entrée de ma maison, la lumière extérieure de ma maison et un chauffage)
Chacun de tout ces contrôleurs dispose aussi de capteurs de températures/humidité et autres (LDR, radars, etc...)
Image
Ici on voit un montage de test: à gauche le contrôleur principal, et à droite le simulateur d'aube. Ici le MCP (contrôleur) envoie une commande pour déclencher un évènement sur celui de droite.

Dans mon projet, l'idée était d'Avoir des systèmes interconnectables entre eux. Et oui: pour le simulateur d'aube par exemple, je voulais un moyen pratique pour mettre l'heure d'aube la semaine à 7h00, et le week end à 11h pour pouvoir dormir plus longtemps :D
Idem: pour mon concierge: l'idée est d'avoir 3 modes pour chacun des éléments à contrôler: un OFF (tout éteint), un AUTO (déclenché suivant certaines stimulations: un mouvement, une ouverture de porte, etc...) et un ON (pour forcer l'allumage d'une lampe durant 1h par exemple)

Je me suis fabriqué tous mes shields Arduino et tout fonctionne bien aujourd'hui. Tout ce système repose sur un Arduino Maitre (doté d'un contrôleur RS485 et d'un Ethershield), qui envoie (et reçoit) les commandes aux (des) esclaves (je l'ai appellé le MCP (pour les amateurs de Tron)). En gros, c'est la passerelle RS-485-Ethernet

Maintenant, je voudrais une chouette interface pour commander tout ça: Domoticz !
l'Objectif ultime est de recycler une vieille tablette pour en faire mon "contrôleur" de maison.

Le concept de mon contrôleur principal est simple: je lui envoie une commande HTTP GET: ip?RNETcmd=1&emet=xx&dest=xx&com=xx&param....... et il se charge d'envoyer la commande à l'esclave concerné. Au besoin, l'esclave répond pour informer de l'état ou de l'info demandée.

Ce qui m'amène aujourd'hui est:
- je souhaite mieux comprendre (et utiliser Domoticz - j'utilise sous Windows pour tester) (Je me débrouille un peu en prog Web mais c'est pas mon domaine de prédilection)
- comprendre comment interfacer mon MCP avec Domoticz. Parmi les pistes:
- il faut scripter ?
- existe-t-il un composant générique pour communiquer avec Domoticz via Ethernet via Json ou un truc du genre ?
- il faut créer un nouveau composant ?

Je ne parviens pas a trouver d'infos précise là dessus. Quelqu'un a-t-il déjà tenté ça ?
Pour info, je ne veux pas changer tout ce que j'ai déjà créé, j'aime pas le sans-fil (trop cher, besoin de batterie, je suis propriétaire de ma maison, alors je fais des trous partout ou j'ai envie). Pour moi c'est inutile le sans fil: je fais arriver un fil 12V pour l'alimentation, j'ai juste à faire passer 4 fils de data pour la communication filaire et c'est dans la poche !)

Merci tout le monde !
Évitez le gens négatifs, ils ont un problème pour chaque solution
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: Personnalisation de Domoticz: ajout d'un matériel

Message par patrice »

raymi a écrit :Salut a toute la communauté !

Je suis Rémi, 32 ans de Montréal et je travaille dans le monde du logiciel embarqué.
Bienvenue cousin de là bas !

Merci de cette jolie description et félicitation pour le boulot déjà effectué.

Pour répondre à 2 aspects , celui du dialogue et celui de la tablette tu devrais trouver ton choix dans Domoticz.

Le coté dialogue peut être envisagé de plusieurs façons :
Soit en implémentant dans tes arduino des protocoles existants , soit en utilisant les fonction de l'API JSON Domoticz

Concernant le monde de l'Arduino il faut savoir que Domoticz supporte les protocoles Rflink http://sourceforge.net/projects/rflink/ et quelque chose d'assez proche de ce que tu as fait avec ton MCP et tes satellites à savoir le protocole MySensors http://easydomoticz.com/domoticz-raspbe ... -partie-1/

Il faudra que tu implémentes cela dans tes Arduino, mais cela ne devrait pas te poser de problèmes, je pense.

Sinon sans coder ces protocoles dans les arduino, tu peux utiliser JSON

Pour l'API JSON de Domoticz tu trouveras l'intégralité décrite ici https://www.domoticz.com/wiki/Domoticz_API/JSON_URL's

Ces appels http peuvent être fait dans n'importe quel langage sachant faire du http et et décortiquer du JSON, sous Windows on peut utiliser Powershell en natif ou un autre langage (python/php/perl...)

Tu trouveras des exemples d'utilisation de l'API sur le blog ou dans ce forum sans soucis.

L''appel de ton URL GET: ip?RNETcmd=1&emet=xx&dest=xx&com=xx&param.pourra être encapsulée dans un script déclenché par le passage à ON/OFF d'un interrupteur soit manuellement soit automatiquement suivant un agenda quotidien par exemle, un agenda google ...

L'info renvoyée par ton MCP pourra être formatée pour attaquer ipdomoticz:8080?type=command&param=switchlight&idx=99&switchcmd=On qui mettra à jour le périphérique concerné.

Il n'y a pas (sauf à coder et compiler depuis les sources) de modules à créer.



Concernant l’affichage sur tablettes nous avons ici le spécialiste mondial (oui, oui mondial) d'un outil destiné à cet usage que sont les 'custom pages" Domoticz infos ici viewtopic.php?f=17&t=331

Patrice, prosélyte patenté.

Bonne soirée (pour nous en France)
et bonne fin d’après midi pour toi
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
raymi
Messages : 11
Inscription : 23 janv. 2016, 17:35
Localisation : Montréal

Re: Personnalisation de Domoticz: ajout d'un matériel

Message par raymi »

Salut Patrick !

Merci pour ta réponse. En réalité, je ne suis pas vraiment cousin puisque je suis français au départ, mais je vis au Québec maintenant depuis quelques années, et surement pour quelques années encore.

OK donc pour la tablette, je regarderai les interfaces customizable plus tard.

Je suis encore tout récent avec Domoticz, je ne sais pas encore l'utiliser et j'ai un peu de mal avec certaines notions de la doc, puisque je ne connais pas véritablement le fonctionnement de tous les appareils avec lesquels Domoticz est compatible. MAis en gros, parmis ces deux options:
  1. JSON
Je crois comprendre qu'il s'agit simplement d'associer à un évènement (bouton ON/OFF) un message http. Sur un clic, j'envoie, et c'est tout.
  • MySensor
J'avais écarté cette idée car par intéresse par le sans fil, mais comme tu le décris, je réalise qu'en fait, c'est la même chose, sauf que moi c'est pas du sans-fil, c'est du RS485: la même chose en fin de compte.

En tout cas, je vais me pencher sur Json - un de mes collègues m'en avait déjà parlé. Faut vraiment que je lise toute la doc en détail :)

Quand tu dis:
Il n'y a pas (sauf à coder et compiler depuis les sources) de modules à créer.
Parle-tu de code Arduino ou de code Domoticz ? Ma crainte est de devoir mettre les mains dans le serveur Domoticz pour modifier le code pour l'adapter à mes besoins, je ne veux/peux pas faire ça.

Merci pour tes éclaircissements (et bonne matinée :) )
Évitez le gens négatifs, ils ont un problème pour chaque solution
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: Personnalisation de Domoticz: ajout d'un matériel

Message par patrice »

Bonjour
Je parlais du code de domoticz
Je pense que avec l'API JSON et les composants existants tu dois pouvoir gérer l'ensemble sans soucis et sans mettre les mains dans le moteur
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
Répondre