Page 1 sur 2

Smooth Home

Publié : 05 janv. 2021, 23:47
par hestia
Bonjour,
Mon projet domotique… Il est en cours depuis plus de 3 ans…
Smooth, pas Smart ;-)

J’ai choisi domoticz car c’était un open source ne passant pas par internet et car j’ai trouvé un tuto pour piloter par chaudière : Contrôler sa chaudière Viessmann avec Domoticz via une interface infrarouge

En même temps je faisais des travaux pour ajouter un studio et donc je voulais piloter à distance le chauffage et le chauffe-eau de ce studio, donc sur cette partie, je suis un peu partie de rien.
L’autre « besoin » était aussi l’éclairage extérieur à automatiser avec des détecteurs de mouvements.
J’ai donc pris z-wave car il y avait des devices avec fil pilote pour les radiateurs électriques permettant de les piloter.
Pour le serveur, j’ai choisi le Raspberry car c’est la plateforme d’origine de domoticz, je me suis dit qu’il y aurait aussi moins de problèmes techniques à traiter et un PI c’est suffisant pas rapport à mes exigences en terme de SLA ! En clair un PI ça tombe rarement en panne et pour réparer, il suffit d’en mettre un autre à la place, donc simplement en un avoir en stock. Par contre j’utilise un SSD et non une carte SD. Pour mon usage, si la domotique est en panne pendant un jour ou 2, ce n’est pas grave et si mon SSD crache, je repars de la sauvegarde de la veille… pour se faire aucune fonction vitale n'est géré par domoticz.
Pour commencer, j’ai donc branché les devices un par un pour comprendre comment ça fonctionne, car ce n’est pas simple :
• Le serveur
• Le logiciel Domoticz et ses plugins
• Les protocoles : zwave…
• Les devices et leur installation et branchement
• Les scripts éventuels pour automatiser les usages ; pour les scripts, je suis parti avec dzVents qui est apparu au moment où je commençais.
Et quand, ça ne marche pas, difficile de savoir d’où ça vient…

Voici ce qui est fait, que je pourrais détailler :
Pour le studio :
• L’éclairage et le chauffage (2 radiateurs) en z-wave (Qubino) avec détecteur de présence et température pour pilotage + suivi de la consommation d’électricité et de l’eau avec un Eco Devices, VMC avec variateur de vitesse
Pour l’extérieur :
• Eclairage qui s’allume automatiquement, mais aussi manuellement et par zone et s’éteint en fonction de règles sur les durées (manuel, auto, luminosité, présence)
• Niveau de remplissage de la cuve d’eau (sonde hydrostatique sans hardware dans la cuve)
• Température
Pour le reste de l’habitation :
Quelques éclairages transformés avec du zwave pour être pilotés + Détecteur de présence pour éteindre les lumières inutiles
Température pour tuner le réglage de la chaudière
Brise soleil qui s’oriente en fonction de la position du soleil et de la température (été, hiver…)
Store qui se ferme ou s’ouvre en fonction du soleil et de la température
Réveil en 1 clic qui lance Logitech Media Server sur plusieurs playlists successives (musique, radio, musique) avec une alarme en cas de ko du LMS
Renvoi de la sonnette standard vers Domoticz (clignotement d’une lampe possible + alerte Telegram)
Détection d’absence (sur la base du pluging iDetect) pour passer la chaudière en mode ECO, peu utile depuis quelques mois 😉
Ce qui me resterait à faire :
• Piloter mes Velux : je ne sais pas encore comment!
• Avoir un appareil qui affiche les infos du réveil LMS au plafond comme un réveil Oregon que j’avais avant, mais je n’ai encore rien trouvé :-(
• Automatiser l’arrosage et maîtriser la consommation de l’eau de la cuve
• Mettre en place un écran pour visualiser et actionner la domotique : actuellement, rien n’est visible ; sur ce point je ne sais pas vers où aller ?!
• Améliorer, fiabiliser ce qui existe
A suivre…

Re: Smooth Home

Publié : 06 janv. 2021, 23:02
par Keros
Beau projet, bravo ;)
hestia a écrit : 05 janv. 2021, 23:47 Mettre en place un écran pour visualiser et actionner la domotique : actuellement, rien n’est visible ; sur ce point je ne sais pas vers où aller ?!
Un Magic Mirror peut-être ?
J'ai vu quelqu'un sur Youtube ajouter un cadre pour rendre le miroir tactile :mrgreen: Si seulement j'avais le temps :oops:

Re: Smooth Home

Publié : 06 janv. 2021, 23:17
par hestia
Merci pour ton retour
le magic miror me semble un chantier un peu long à mettre en oeuvre.
Je serais plus pour garder l'ihm standard dans un premier temps et la mettre sur une tablette... qui ne soit pas mon ipad ;-)
Je n'ai pas vu beaucoup d'info sur des recommandations de tablettes adaptées à Domoticz

Re: Smooth Home

Publié : 07 janv. 2021, 10:10
par DomoTiBI
Bonjour,

Ton projet est déjà bien abouti : félicitations.

Pour la gestion de tes brise soleil, quelle solution as-tu trouvé pour gérer l'inclinaison des lattes ? Pour mes Somfy en RTS 433 mhhz je le fais en enchaînant des commandes ouvrir + stop après un délai. Ça marche correctement si c'est programmé (et dzevent est super pour ça) en revanche manuellement (par action sur les interrupteurs venitian blinds) c'est très imprécis du fait des temps de réaction assez variables ?

Bonne journée.

Thierry

Re: Smooth Home

Publié : 07 janv. 2021, 10:28
par hestia
Salut,
pour le brise soleil, c'est un aussi script dzVents qui fait .close().afterSec(x) et qui est exécuté en fonction des changements de position du soleil et des autres conditions (température extérieure en attendant une info d'ensoleillement).
Pas de retour d'état car Somfy en RTS 433 aussi, mais il n'y a pas vraiment de perte de message donc l'inclinaison des lames se fait correctement (expérience sur une partie de l'été).
Du coup, il ne faut pas utiliser le bouton physique, ni le venitian blinds sinon on perturbe la progression... c'est pourquoi, j'ai un switch qui regroupe le tout
Screenshot 2021-01-07 102234.png
Screenshot 2021-01-07 102234.png (22.26 Kio) Consulté 5794 fois
Pour le suivi du soleil, c'est plutôt pour l'été, pour l'hiver c'est un mode inverse: fermé le soir, ouvert le jour ;-)
Il y a aussi un mode "Warm" pour entre les 2.
Détail ici store et brise-soleil

Re: Smooth Home

Publié : 07 janv. 2021, 20:00
par hestia
Un peu plus fun un luminaire extérieur à base de ruban LED (7 m environ) entouré sur une plaque de plastique
LED_Table.png
LED_Table.png (617.3 Kio) Consulté 5782 fois
Avec un FIBARO FGRGBWM441 RGBW pour les couleurs et les programmes dans un boiter étanche
boitierExt.png
boitierExt.png (580.33 Kio) Consulté 5724 fois
et des boutons (pas vraiment utilisés en fait!) / on voit le ruban LED pas encore collé!
inter1.png
inter1.png (362.81 Kio) Consulté 5724 fois
inter2.png
inter2.png (836.17 Kio) Consulté 5724 fois
le transfo est chaud dans le garage...
boitierInt.png
boitierInt.png (413.06 Kio) Consulté 5724 fois
et un selecteur pour choisir le programme
Screenshot 2021-01-07 195442.png
Screenshot 2021-01-07 195442.png (57.33 Kio) Consulté 5782 fois
et enfin un petit script

Code : Tout sélectionner

local LED_SELECTOR_ID = 887 -- dummy selector to manage the LED with predefined choices
local LED_COLOR_ID = 876 -- LED Color device to activate
local LED_LEVEL_ID = 877 -- LED Level device
local LED_ZW_INT_NODE = 106 -- LED node (internal id see: https://www.domoticz.com/forum/viewtopic.php?t=8605)

local LED_ANIMATION_AURORA = 10
local LED_ANIMATION_RAINBOW = 20
local LED_ANIMATION_STORM = 30
local LED_ANIMATION_FIREPLACE = 40
local LED_ANIMATION_LPD = 50
local LED_ANIMATION_PAUSE = 60

--hestia / 05/04/2020: prerequisite: dzVents Version: 3.0.2

return {
     logging =   {   level   =   
                    domoticz.LOG_ERROR, --select one to override system log level normal = LOG_ERROR
                    --domoticz.LOG_DEBUG,
                    --domoticz.LOG_INFO,
                    --domoticz.LOG_ERROR,
                    --domoticz.LOG_FORCE
    },
    on = {
    	devices = {LED_SELECTOR_ID},
    },

    execute = function(dz, device)
    _G.logMarker =  dz.moduleLabel -- set logmarker to scriptname  
    local LOG_LEVEL = dz.LOG_INFO  -- LOG_INFO, LOG_DEBUG, LOG_ERROR, LOG_FORCE  - normal = LOG_INFO

    dz.log("LED_SELECTOR " .. device.state .. " " .. tostring(device.level) .. " nValue: " .. device.nValue, LOG_LEVEL)

-----< BEG FUNCTIONS > ----------------------------------------------------------------------------------------


	local function setRGBWAnimation(rgbAnimation)
		--  Add the number 6-10 to query string, base64- and URL encoded (??)
		local url = dz.settings['Domoticz url']..'/json.htm?type=command&param=applyzwavenodeconfig&idx='..LED_ZW_INT_NODE..'&valuelist=72_'

		if rgbAnimation == LED_ANIMATION_PAUSE then
    		dz.openURL(url..'MQ%3D%3D')
    	else
    		local delay = 1
    	    dz.openURL(url..'MQ%3D%3D') -- pause to ease the change of animation (18/08/2020)
    		if rgbAnimation == LED_ANIMATION_FIREPLACE then
    			dz.openURL(url..'Ng%3D%3D').afterSec(delay)
    		elseif rgbAnimation == LED_ANIMATION_STORM then
    			dz.openURL(url..'Nw%3D%3D').afterSec(delay)
    		elseif rgbAnimation == LED_ANIMATION_RAINBOW then
    			dz.openURL(url..'OA%3D%3D').afterSec(delay)
    		elseif rgbAnimation == LED_ANIMATION_AURORA then
    			dz.openURL(url..'OQ%3D%3D').afterSec(delay)
    		elseif rgbAnimation == LED_ANIMATION_LPD then
    			dz.openURL(url..'MTA%3D').afterSec(delay)
    		end
		end
	end

   
-----< END FUNCTIONS > ----------------------------------------------------------------------------------------

	if  device.level == 0 or dz.devices(LED_SELECTOR_ID).nValue == 0 then
	    
        dz.devices(LED_COLOR_ID).setColor(0, 0, 0, 0, 0, 0, 4).silent()
        dz.devices(LED_COLOR_ID).switchOff().silent()
        dz.devices(LED_SELECTOR_ID).switchSelector(0).silent()
	    dz.devices(LED_SELECTOR_ID).switchOff().silent()
    
    -- animation
	elseif device.level <= 60 then
	    
	    --dz.devices(LED_COLOR_ID).switchOn().checkFirst().silent() -- to keep it synchronise (on : off)
		setRGBWAnimation(device.level)
		
	-- static color
    --setColor(r, g, b, br, cw, ww, m, t):
   	-- r: Red level: 0-255
   	-- g: Green level: 0-255
   	-- b: Blue level: 0-255
    --br: Brightness: 0-100
    --cw: Cold white level: 0-255 -> 0
   	--ww: Warm white level: 0-255
    -- m: Mode: 1 w ; 3 rgb ; 4 rbgw   	
   	-- t: Color temperature (warm / cold ratio, 0 is coldest, 255 is warmest) -> nil
	elseif  device.level == 70 then -- warm white
	    dz.devices(LED_COLOR_ID).setColor(255, 255, 255, 100, 0, 255, 4).silent()
	elseif  device.level == 80 then -- candle / bougie
	    dz.devices(LED_COLOR_ID).setColor(255, 165, 0, 100, 0, 50, 3).silent()
	elseif  device.level == 90 then -- violet
	    dz.devices(LED_COLOR_ID).setColor(238, 130, 238, 100, 0, 0, 3).silent()
  	elseif  device.level == 100 then -- indigo
	    dz.devices(LED_COLOR_ID).setColor(75, 0, 13, 100, 0, 0, 3).silent()  
	elseif  device.level == 110 then -- bleu
        dz.devices(LED_COLOR_ID).setColor(0, 0, 255, 100, 0, 0, 3).silent()
	elseif  device.level == 120 then -- vert
        dz.devices(LED_COLOR_ID).setColor(0, 128, 0, 100, 0, 0, 3).silent()
	elseif  device.level == 130 then -- jaune
        dz.devices(LED_COLOR_ID).setColor(255, 255, 0, 100, 0, 0, 3).silent()
	elseif  device.level == 140 then -- orange
        dz.devices(LED_COLOR_ID).setColor(255, 70, 0, 100, 0, 0, 3).silent()
	elseif  device.level == 150 then -- rouge
        dz.devices(LED_COLOR_ID).setColor(255, 0, 0, 100, 0, 0, 3).silent()
	end

end
}
Ca fonctionne depuis quelques mois...

Re: Smooth Home

Publié : 08 janv. 2021, 10:31
par Terrible45
Sympa ton luminaire ;)

Re: Smooth Home

Publié : 08 janv. 2021, 22:07
par hestia
merci!
ce n'est pas moi qui ai fait la partie métallique...

Re: Smooth Home

Publié : 08 janv. 2021, 22:19
par hestia
un petit DIY:
comme j'en avais marre de changer les piles qui durent soi-disant plusieurs années...
Screenshot 2021-01-08 221420.png
Screenshot 2021-01-08 221420.png (378.79 Kio) Consulté 5739 fois
/ je ne suis pas le pro de la soudure ;-) /
j'ai remplacé la pile par un câble USB soudé que j'ai relayé à un port USB pas loin (mon accès wifi).
J'ai pu augmenter la fréquence d'envoi de la température et de réveil (pour les nouvelles config).
C'est un Fibaro Motion Sensor FGMS-001-ZW5. C'est une pile de 3V, alors qu'un USB envoie 5V, mais il y a de la marge.
Opérationnel depuis plusieurs mois dans mon salon.
Nota: il vaut mieux faire le trou de passage de fil un peu vers le bas du cache car le poids du fil fait basculer le détecteur.

Smooth Home

Publié : 03 janv. 2022, 20:51
par hestia
Je poursuis la description de ma domotique avec quelques photos pour débuter l'année.
Car au début je ne savais pas comment faire :D
20170901_231718.jpg
20170901_231718.jpg (1.73 Mio) Consulté 3620 fois
Ensuite je me suis amélioré :lol:
IMG_20220103_203104.jpg
IMG_20220103_203104.jpg (1.91 Mio) Consulté 3620 fois
Pour le serveur domoticz, j'ai utilisé une boîte accrochée au fond d'un placard qui est placée bien centralement par rapport aux modules prévus
IMG_20210824_115016.jpg
IMG_20210824_115016.jpg (1.59 Mio) Consulté 3620 fois
avec un RPI sur un Suptronics X720 pour sécuriser l'alim, un SSD, un dongle zwave, un dongle rfxcom
Je ne suis jamais allé jusqu'au bout de fixer le RPI... c'est fiable comme cela depuis plusieurs années, comme le coffret est fermé