La Domotique

Depuis quelques années, j’ai découvert l’arduino avec plein de possibilités de programmation et d’interfaces avec le monde extérieur, je comptais l’utiliser pour gerer le chauffage. La partie de chauffage concernée est faite de bandes de film mince à pistes de carbone (photo) disposé en 6 bandes de 6 mètres espacées de 20 cm chaque bande fait 100W par mètre, soit 600W par bande. Il y a aussi pour le moment, 4 bandes de 3 mètres non encore branchées, mais en place.
La consommation de ces 6 bandes avoisine les 4000W, elles sont branchées individuellement sur une multiprise (photo), je peux en débrancher ou pas sauf une qui porte la sonde de température du sol. Afin d’avoir un chauffage homogène, sans avoir toutes les bandes connectées, je comptais faire un système de chenillard qui mettrait en route une, 2 3 4 5 ou les 6 bandes alternativement avec par exemple une période de balayage de 10 minutes.
Après quelques galères de programmation en C++, (mes restes de BASIC des années 80 sont loin), j’ai découvert le raspebrry PI 3B+ avec ses broches GPIO (entrées/sorties), que je comptais programmer en python, ce que j’ai trouvé de plus proche du basic (j’adorais les poke et peek qui permettaient d’accéder directement à la mémoire et de faire ce que l’on veut). puis j’ai découvert Node red. Et là ça a pris une autre direction.

Le Rasperry PI 3 et node red

La première utilisation a été une recalbox pour les jeux anciens que j’aimais bien, bien que je jouais pas beaucoup, j’avais deux consoles pong, que j’ai retrouvées, plus une autoconstruite autour du circuit AY3 8500. je remettrai ça en route un jour.

Puis les travaux de la maison avançant, j’ai choisi de l’utiliser pour gérer les lumières du salon, pour le moment 7 rangées de 4 spots, plus une lampe décorative soit 29 points, que j’avais prévu de piloter avec un arduino mega qui comporte 54 E/S, mais j’ai eu du mal à l’interfacer avec le web du moins une interface pratique et pas trop compliquée. C’est en fait à ce moment-là que j’ai découvert node red, son tableau de bord, ses boutons, ses cadrans, sa gestion des gpio et son interface web qui se met à jour. Mes recherches m’ont conduit sur le site de Marc Silanus, http://silanus.fr/sin/?p=984, avec un tuto simple pour commencer , et surtout node red est natif sur RPI, on le trouve dans le menu « programmation » du pi et on peut l’installer sur PC pour les tests.

Le RPI est limité en E/S (16), alors je gère mes lumières pour le moment par colonnes de 4 lampes, de 1à 7, la zéro n’étant pas encore utilisée, (le plafond n’est pas terminé). j’ai rajouté des sondes de température avec enclenchement du chauffage, mais ce n’est pas encore connecté tant que je n’aurai pas sécurisé la surchauffe (mon thermostat chinois est resté avec le relais collé toute une nuit, il faisait 40° dans la pièce le matin, le parquet flottant soit disant compatible sol chauffant a bougé, j’ai changé le thermostat et ajouté un contacteur 30A, et c’est un souci de moins.

La Domotique

Pour le moment juste les lumières du salon et la mesure des températures, le salon, l’extérieur et le cellier, appelé « la morgue » par les enfants car il y fait froid..

écran dashoard

Le flow des lumièresLe flow du chauffageLa gestion de GPIO

Le code correspondant partie chauffage

/code

[
{
"id": "5ee6ab3.7a1d254",
"type": "tab",
"label": "Chauffage RdC Sol",
"disabled": false,
"info": ""
},
{
"id": "6988ad48.521c84",
"type": "link in",
"z": "5ee6ab3.7a1d254",
"name": "",
"links": [
"2ff4d2eb.172cae"
],
"x": 195,
"y": 180,
"wires": [
[
"16e0b336.7c3ffd",
"5511046e.ab17bc"
]
]
},
{
"id": "16e0b336.7c3ffd",
"type": "function",
"z": "5ee6ab3.7a1d254",
"name": "si CH on/off",
"func": " var action;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\"CHAU\") >=0) && (chaine.indexOf(\"CHON\")>=0)) action = true; }\n{if ((sujet.indexOf(\"LUM\") >=0) && (chaine.indexOf(\"CHOFF\")>=0)) action = false;}\n \n \n\n msg.payload = action;\n\nreturn msg;",
"outputs": 1,
"noerr": 0,
"x": 350,
"y": 140,
"wires": [
[]
]
},
{
"id": "bc800588.13c878",
"type": "1-Wire",
"z": "5ee6ab3.7a1d254",
"identifier": "",
"name": "Temp du Sol",
"format": "1",
"x": 90,
"y": 1080,
"wires": [
[
"2d9dd0c0.41ffa",
"a917d96b.867cf8",
"311dcdf2.53e172"
]
]
},
{
"id": "8ae83c41.86d79",
"type": "1-Wire",
"z": "5ee6ab3.7a1d254",
"identifier": "",
"name": "temp Air Intérieure",
"format": "1",
"x": 110,
"y": 980,
"wires": [
[
"2d9dd0c0.41ffa",
"a917d96b.867cf8",
"311dcdf2.53e172"
]
]
},
{
"id": "4337eaeb.7c5884",
"type": "1-Wire",
"z": "5ee6ab3.7a1d254",
"identifier": "",
"name": "temp extérieure",
"format": "1",
"x": 100,
"y": 1020,
"wires": [
[
"2d9dd0c0.41ffa",
"a917d96b.867cf8",
"56e10871.cb81b8"
]
]
},
{
"id": "311dcdf2.53e172",
"type": "function",
"z": "5ee6ab3.7a1d254",
"name": "",
"func": "\nreturn msg;",
"outputs": 1,
"noerr": 0,
"x": 370,
"y": 900,
"wires": [
[
"e594916a.1cb46"
]
]
},
{
"id": "2d9dd0c0.41ffa",
"type": "ui_gauge",
"z": "5ee6ab3.7a1d254",
"name": "",
"group": "d05a05f3.4ba748",
"order": 8,
"width": 0,
"height": 0,
"gtype": "gage",
"title": "gauge",
"label": "units",
"format": "{{value}}",
"min": 0,
"max": "40",
"colors": [
"#00b500",
"#e6e600",
"#ca3838"
],
"seg1": "",
"seg2": "",
"x": 490,
"y": 1060,
"wires": []
},
{
"id": "a917d96b.867cf8",
"type": "ui_chart",
"z": "5ee6ab3.7a1d254",
"name": "",
"group": "d05a05f3.4ba748",
"order": 3,
"width": 0,
"height": 0,
"label": "chart",
"chartType": "line",
"legend": "false",
"xformat": "HH:mm:ss",
"interpolate": "linear",
"nodata": "",
"dot": false,
"ymin": "",
"ymax": "",
"removeOlder": 1,
"removeOlderPoints": "",
"removeOlderUnit": "604800",
"cutout": 0,
"useOneColor": false,
"colors": [
"#1f77b4",
"#aec7e8",
"#ff7f0e",
"#2ca02c",
"#98df8a",
"#d62728",
"#ff9896",
"#9467bd",
"#c5b0d5"
],
"useOldStyle": false,
"outputs": 1,
"x": 490,
"y": 1100,
"wires": [
[]
]
},
{
"id": "c2779a8e.392ac8",
"type": "ui_numeric",
"z": "5ee6ab3.7a1d254",
"name": "",
"label": "temp consigne",
"tooltip": "",
"group": "d05a05f3.4ba748",
"order": 10,
"width": 0,
"height": 0,
"passthru": true,
"topic": "",
"format": "{{value}}",
"min": "10",
"max": "30",
"step": 1,
"x": 100,
"y": 900,
"wires": [
[
"311dcdf2.53e172"
]
]
},
{
"id": "92e207f3.720118",
"type": "rpi-gpio out",
"z": "5ee6ab3.7a1d254",
"name": "pin37 tests",
"pin": "37",
"set": true,
"level": "0",
"freq": "",
"out": "out",
"x": 910,
"y": 920,
"wires": []
},
{
"id": "e594916a.1cb46",
"type": "change",
"z": "5ee6ab3.7a1d254",
"name": "inverse",
"rules": [
{
"t": "change",
"p": "payload",
"pt": "msg",
"from": "false",
"fromt": "bool",
"to": "1",
"tot": "num"
},
{
"t": "change",
"p": "payload",
"pt": "msg",
"from": "true",
"fromt": "bool",
"to": "0",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 520,
"y": 940,
"wires": [
[
"56e10871.cb81b8"
]
]
},
{
"id": "56e10871.cb81b8",
"type": "function",
"z": "5ee6ab3.7a1d254",
"name": "mode de fonctionnement",
"func": "\nreturn msg;",
"outputs": 1,
"noerr": 0,
"x": 750,
"y": 1000,
"wires": [
[
"92e207f3.720118"
]
]
},
{
"id": "13daf66b.e5283a",
"type": "comment",
"z": "5ee6ab3.7a1d254",
"name": "essais plusieurs entrées temp dallas",
"info": "",
"x": 500,
"y": 40,
"wires": []
},
{
"id": "327a73ec.1f1a0c",
"type": "debug",
"z": "5ee6ab3.7a1d254",
"name": "",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"x": 890,
"y": 160,
"wires": []
},
{
"id": "f3c587a4.d66068",
"type": "ui_chart",
"z": "5ee6ab3.7a1d254",
"name": "",
"group": "8ed235ef.7cc678",
"order": 2,
"width": 7,
"height": 7,
"label": "Températures Air",
"chartType": "line",
"legend": "true",
"xformat": "auto",
"interpolate": "linear",
"nodata": "",
"dot": false,
"ymin": "-10",
"ymax": "40",
"removeOlder": "4",
"removeOlderPoints": "",
"removeOlderUnit": "86400",
"cutout": 0,
"useOneColor": false,
"colors": [
"#1f77b4",
"#aec7e8",
"#ff7f0e",
"#2ca02c",
"#98df8a",
"#d62728",
"#ff9896",
"#9467bd",
"#c5b0d5"
],
"useOldStyle": false,
"outputs": 1,
"x": 710,
"y": 509,
"wires": [
[]
]
},
{
"id": "24a757cb.0cdf68",
"type": "rpi-gpio out",
"z": "5ee6ab3.7a1d254",
"name": "",
"pin": "38",
"set": true,
"level": "0",
"freq": "",
"out": "out",
"x": 1300,
"y": 420,
"wires": []
},
{
"id": "5ee63513.aa374c",
"type": "ui_numeric",
"z": "5ee6ab3.7a1d254",
"name": "Consigne",
"label": "temp de Consigne",
"tooltip": "",
"group": "8ed235ef.7cc678",
"order": 3,
"width": 4,
"height": 1,
"wrap": false,
"passthru": true,
"topic": "TempCons",
"format": "{{value}}",
"min": 0,
"max": "40",
"step": "0.5",
"x": 680,
"y": 200,
"wires": [
[
"327a73ec.1f1a0c",
"9a7365f3.6edea8",
"f644e955.5a04f8"
]
]
},
{
"id": "c8316f65.182fa",
"type": "ui_gauge",
"z": "5ee6ab3.7a1d254",
"name": "",
"group": "8ed235ef.7cc678",
"order": 1,
"width": 7,
"height": 5,
"gtype": "gage",
"title": "Temp Air Salon",
"label": "",
"format": "{{value | number:1}}°C",
"min": 0,
"max": "50",
"colors": [
"#095aff",
"#28f032",
"#ca3838"
],
"seg1": "19",
"seg2": "23",
"x": 698,
"y": 387,
"wires": []
},
{
"id": "1dbdc917.b7f2a7",
"type": "debug",
"z": "5ee6ab3.7a1d254",
"name": "",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"x": 1290,
"y": 380,
"wires": []
},
{
"id": "23dbf1ed.8a9ebe",
"type": "debug",
"z": "5ee6ab3.7a1d254",
"name": "",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"x": 690,
"y": 460,
"wires": []
},
{
"id": "402c0cfd.542a64",
"type": "comment",
"z": "5ee6ab3.7a1d254",
"name": "fonction simple",
"info": "",
"x": 941,
"y": 383,
"wires": []
},
{
"id": "9a7365f3.6edea8",
"type": "function",
"z": "5ee6ab3.7a1d254",
"name": "TInt=0) && (chaine.indexOf(\"CONS\")>=0)) \n // var positioncons = chaine.indexOf(\"CONS\");\n valeur = chaine.substr(chaine.indexOf(\"CONS\")+4, 2);\n\n\n//action = true; $substring(payload, 0, 4)\t\n}\n//{if ((sujet.indexOf(\"CONS\") >=0) && (chaine.indexOf(\"CHOFF\")>=0)) action = false;}\n \n \n\n msg.payload = valeur;\n msg.topic = 'TempCons'\n\nreturn msg;",
"outputs": 1,
"noerr": 0,
"x": 350,
"y": 200,
"wires": [
[
"5ee63513.aa374c",
"1438726b.3375be"
]
]
},
{
"id": "cfcb292a.4be498",
"type": "change",
"z": "5ee6ab3.7a1d254",
"name": "",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "$substring(payload, 0, 4)\t",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 700,
"y": 840,
"wires": [
[
"bf86f5dd.e1e1e8"
]
]
},
{
"id": "9e9d4008.efa2e",
"type": "inject",
"z": "5ee6ab3.7a1d254",
"name": "",
"topic": "",
"payload": "22.300000/tclrega.exe


BidCos-RF.MEQ0800939:4.ACTUAL_TEMPERATURE
",
"payloadType": "str",
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"x": 530,
"y": 840,
"wires": [
[
"cfcb292a.4be498"
]
]
},
{
"id": "bf86f5dd.e1e1e8",
"type": "debug",
"z": "5ee6ab3.7a1d254",
"name": "",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"x": 890,
"y": 840,
"wires": []
},
{
"id": "1438726b.3375be",
"type": "debug",
"z": "5ee6ab3.7a1d254",
"name": "",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"x": 550,
"y": 160,
"wires": []
},
{
"id": "bc93a42e.9e58d8",
"type": "comment",
"z": "5ee6ab3.7a1d254",
"name": "28-0000074b2ddc",
"info": "",
"x": 210,
"y": 460,
"wires": []
},
{
"id": "8564985c.18d028",
"type": "smooth",
"z": "5ee6ab3.7a1d254",
"name": "Max",
"property": "payload",
"action": "max",
"count": "1440",
"round": "1",
"mult": "single",
"x": 450,
"y": 300,
"wires": [
[
"10dec0ed.e1557f"
]
]
},
{
"id": "1923f442.9085dc",
"type": "smooth",
"z": "5ee6ab3.7a1d254",
"name": "Min",
"property": "payload",
"action": "min",
"count": "1440",
"round": "1",
"mult": "single",
"x": 450,
"y": 360,
"wires": [
[
"7f841dc8.06fbd4"
]
]
},
{
"id": "7f841dc8.06fbd4",
"type": "ui_text",
"z": "5ee6ab3.7a1d254",
"group": "8ed235ef.7cc678",
"order": 6,
"width": 3,
"height": 2,
"name": "Temp mini 1000 mesures",
"label": "Min",
"format": "{{msg.payload}}",
"layout": "col-center",
"x": 670,
"y": 340,
"wires": []
},
{
"id": "10dec0ed.e1557f",
"type": "ui_text",
"z": "5ee6ab3.7a1d254",
"group": "8ed235ef.7cc678",
"order": 8,
"width": 3,
"height": 2,
"name": "Temp maxi 1000 mesures",
"label": "max",
"format": "{{msg.payload}}",
"layout": "col-center",
"x": 670,
"y": 300,
"wires": []
},
{
"id": "96cd86d4.14ef38",
"type": "link out",
"z": "5ee6ab3.7a1d254",
"name": "vers mail Domo2",
"links": [
"c4e77535.10e1e8"
],
"x": 1075,
"y": 200,
"wires": []
},
{
"id": "ca216530.4d5e58",
"type": "comment",
"z": "5ee6ab3.7a1d254",
"name": "vers mail Domo2 flow1",
"info": "",
"x": 1140,
"y": 160,
"wires": []
},
{
"id": "f644e955.5a04f8",
"type": "function",
"z": "5ee6ab3.7a1d254",
"name": "mise en forme mail",
"func": "{msg.consigne = 'Consigne RdC';\nif (msg.payload === true) msg.payload = 'Allumée';\nif (msg.payload === false) msg.payload = 'Éteinte';\nmsg.topic = msg.consigne + ' est ' + msg.payload}\nreturn msg;",
"outputs": 1,
"noerr": 0,
"x": 910,
"y": 200,
"wires": [
[
"96cd86d4.14ef38"
]
]
},
{
"id": "4b58d3d0.f272ec",
"type": "comment",
"z": "5ee6ab3.7a1d254",
"name": "28.0116001afff",
"info": "",
"x": 200,
"y": 560,
"wires": []
},
{
"id": "ee249672.24a9e8",
"type": "change",
"z": "5ee6ab3.7a1d254",
"name": "msg.topic = Salon",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "Salon",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 461,
"y": 463,
"wires": [
[
"f3c587a4.d66068"
]
]
},
{
"id": "d05a05f3.4ba748",
"type": "ui_group",
"z": "",
"name": "le groupe",
"tab": "a90dc0c2.01a29",
"disp": true,
"width": "6",
"collapse": false
},
{
"id": "8ed235ef.7cc678",
"type": "ui_group",
"z": "",
"name": "chauffage_RdC",
"tab": "5c56315f.8c567",
"order": 2,
"disp": true,
"width": "18",
"collapse": false
},
{
"id": "a90dc0c2.01a29",
"type": "ui_tab",
"z": "",
"name": "test",
"icon": "dashboard",
"order": 5,
"disabled": true,
"hidden": true
},
{
"id": "5c56315f.8c567",
"type": "ui_tab",
"z": "",
"name": "Domotique",
"icon": "dashboard",
"order": 1,
"disabled": false,
"hidden": false
}
]

listing du flow1 lumières

[
{
« id »: « 73ee6f5f.4d69b »,
« type »: « tab »,
« label »: « Flow 1 »,
« disabled »: false,
« info »: «  »
},
{
« id »: « f2209dbf.5863d »,
« type »: « ui_switch »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« label »: « switch1 »,
« tooltip »: « Première colonne côté ascenseur »,
« group »: « ae3eaf24.38897 »,
« order »: 2,
« width »: 0,
« height »: 0,
« passthru »: true,
« decouple »: « false »,
« topic »: «  »,
« style »: «  »,
« onvalue »: « true »,
« onvalueType »: « bool »,
« onicon »: «  »,
« oncolor »: «  »,
« offvalue »: « false »,
« offvalueType »: « bool »,
« officon »: «  »,
« offcolor »: «  »,
« x »: 1100,
« y »: 160,
« wires »: [
[
« 915e6b9c.ea86a8 »,
« ed6f5c20.a3fec »
]
]
},
{
« id »: « 76a87fe6.20fe3 »,
« type »: « ui_switch »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« label »: « switch2 »,
« tooltip »: « Deuxième colonne côté ascenseur »,
« group »: « ae3eaf24.38897 »,
« order »: 3,
« width »: 0,
« height »: 0,
« passthru »: true,
« decouple »: « false »,
« topic »: «  »,
« style »: «  »,
« onvalue »: « true »,
« onvalueType »: « bool »,
« onicon »: «  »,
« oncolor »: «  »,
« offvalue »: « false »,
« offvalueType »: « bool »,
« officon »: «  »,
« offcolor »: «  »,
« x »: 1100,
« y »: 220,
« wires »: [
[
« fadeff1f.741b3 »,
« 65426b63.d25194 »
]
]
},
{
« id »: « ae7e7e56.3f3e2 »,
« type »: « ui_switch »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« label »: « switch3 »,
« tooltip »: « Troisième colonne côté ascenseur »,
« group »: « ae3eaf24.38897 »,
« order »: 4,
« width »: 0,
« height »: 0,
« passthru »: true,
« decouple »: « false »,
« topic »: «  »,
« style »: «  »,
« onvalue »: « true »,
« onvalueType »: « bool »,
« onicon »: «  »,
« oncolor »: «  »,
« offvalue »: « false »,
« offvalueType »: « bool »,
« officon »: «  »,
« offcolor »: «  »,
« x »: 1100,
« y »: 280,
« wires »: [
[
« afc1a43.dff6458 »,
« fdb73e4.d2bfcc »
]
]
},
{
« id »: « 5ae3d305.109a0c »,
« type »: « ui_switch »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« label »: « switch4 »,
« tooltip »: « colonne du milieu »,
« group »: « ae3eaf24.38897 »,
« order »: 5,
« width »: 0,
« height »: 0,
« passthru »: true,
« decouple »: « false »,
« topic »: «  »,
« style »: «  »,
« onvalue »: « true »,
« onvalueType »: « bool »,
« onicon »: «  »,
« oncolor »: «  »,
« offvalue »: « false »,
« offvalueType »: « bool »,
« officon »: «  »,
« offcolor »: «  »,
« x »: 1100,
« y »: 340,
« wires »: [
[
« a43e3111.61d78 »,
« ba2e8d14.45dbe »
]
]
},
{
« id »: « 2bbecfbf.1a729 »,
« type »: « ui_switch »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« label »: « switch5 »,
« tooltip »: « troisième colonne côté Sophie »,
« group »: « ae3eaf24.38897 »,
« order »: 6,
« width »: 0,
« height »: 0,
« passthru »: true,
« decouple »: « false »,
« topic »: «  »,
« style »: «  »,
« onvalue »: « true »,
« onvalueType »: « bool »,
« onicon »: «  »,
« oncolor »: «  »,
« offvalue »: « false »,
« offvalueType »: « bool »,
« officon »: «  »,
« offcolor »: «  »,
« x »: 1103,
« y »: 398,
« wires »: [
[
« d1578996.ac3688 »,
« 4cbc35f3.46676c »
]
]
},
{
« id »: « 6e1adc3f.21d564 »,
« type »: « ui_switch »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« label »: « switch6 »,
« tooltip »: « Deuxième colonne côté Sophie »,
« group »: « ae3eaf24.38897 »,
« order »: 7,
« width »: 0,
« height »: 0,
« passthru »: true,
« decouple »: « false »,
« topic »: «  »,
« style »: «  »,
« onvalue »: « true »,
« onvalueType »: « bool »,
« onicon »: «  »,
« oncolor »: «  »,
« offvalue »: « false »,
« offvalueType »: « bool »,
« officon »: «  »,
« offcolor »: «  »,
« x »: 1103,
« y »: 458,
« wires »: [
[
« 532b46ed.6bb028 »,
« 9865fede.5614c »
]
]
},
{
« id »: « 43bb180c.fa9768 »,
« type »: « rpi-gpio out »,
« z »: « 73ee6f5f.4d69b »,
« name »: « gpio1 »,
« pin »: « 12 »,
« set »: true,
« level »: « 0 »,
« freq »: «  »,
« out »: « out »,
« x »: 1530,
« y »: 160,
« wires »: []
},
{
« id »: « 3021dc3b.cffbb4 »,
« type »: « rpi-gpio out »,
« z »: « 73ee6f5f.4d69b »,
« name »: « gpio2 »,
« pin »: « 13 »,
« set »: «  »,
« level »: « 0 »,
« freq »: «  »,
« out »: « out »,
« x »: 1530,
« y »: 220,
« wires »: []
},
{
« id »: « 44791c70.834a14 »,
« type »: « rpi-gpio out »,
« z »: « 73ee6f5f.4d69b »,
« name »: « gpio3 »,
« pin »: « 15 »,
« set »: «  »,
« level »: « 0 »,
« freq »: «  »,
« out »: « out »,
« x »: 1530,
« y »: 280,
« wires »: []
},
{
« id »: « 1affecde.332d73 »,
« type »: « rpi-gpio out »,
« z »: « 73ee6f5f.4d69b »,
« name »: « gpio4 »,
« pin »: « 16 »,
« set »: true,
« level »: « 0 »,
« freq »: «  »,
« out »: « out »,
« x »: 1530,
« y »: 340,
« wires »: []
},
{
« id »: « 1571e898.d8fcd7 »,
« type »: « rpi-gpio out »,
« z »: « 73ee6f5f.4d69b »,
« name »: « gpio5 »,
« pin »: « 18 »,
« set »: true,
« level »: « 1 »,
« freq »: «  »,
« out »: « out »,
« x »: 1530,
« y »: 400,
« wires »: []
},
{
« id »: « b71f3d71.6b5eb »,
« type »: « rpi-gpio out »,
« z »: « 73ee6f5f.4d69b »,
« name »: « gpio6 »,
« pin »: « 22 »,
« set »: true,
« level »: « 0 »,
« freq »: «  »,
« out »: « out »,
« x »: 1530,
« y »: 460,
« wires »: []
},
{
« id »: « 4ed815da.1e4a2c »,
« type »: « rpi-gpio out »,
« z »: « 73ee6f5f.4d69b »,
« name »: « gpio7 »,
« pin »: « 29 »,
« set »: «  »,
« level »: « 0 »,
« freq »: «  »,
« out »: « out »,
« x »: 1530,
« y »: 520,
« wires »: []
},
{
« id »: « 6c6b6f2b.ec0b7 »,
« type »: « ui_button »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« group »: « ae3eaf24.38897 »,
« order »: 9,
« width »: 0,
« height »: 0,
« passthru »: true,
« label »: « Global ON »,
« tooltip »: « Allume toutes les lumières »,
« color »: «  »,
« bgcolor »: « green »,
« icon »: «  »,
« payload »: « true »,
« payloadType »: « bool »,
« topic »: «  »,
« x »: 390,
« y »: 300,
« wires »: [
[
« f2209dbf.5863d »,
« 76a87fe6.20fe3 »,
« ae7e7e56.3f3e2 »,
« 5ae3d305.109a0c »,
« 2bbecfbf.1a729 »,
« 6e1adc3f.21d564 »,
« 29eec6eb.fca0da »,
« 6572ecf3.ef3964 »,
« 89c713e8.de2228 »
]
]
},
{
« id »: « 3016c026.1b406 »,
« type »: « ui_button »,
« z »: « 73ee6f5f.4d69b »,
« name »: « GLOBAL OFF »,
« group »: « ae3eaf24.38897 »,
« order »: 10,
« width »: 0,
« height »: 0,
« passthru »: true,
« label »: « Global OFF »,
« tooltip »: « Éteint toutes les lumières »,
« color »: «  »,
« bgcolor »: « red »,
« icon »: «  »,
« payload »: « false »,
« payloadType »: « bool »,
« topic »: «  »,
« x »: 400,
« y »: 200,
« wires »: [
[
« f2209dbf.5863d »,
« 76a87fe6.20fe3 »,
« ae7e7e56.3f3e2 »,
« 5ae3d305.109a0c »,
« 2bbecfbf.1a729 »,
« 6e1adc3f.21d564 »,
« 29eec6eb.fca0da »,
« 6572ecf3.ef3964 »,
« 89c713e8.de2228 »
]
]
},
{
« id »: « 29eec6eb.fca0da »,
« type »: « ui_switch »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« label »: « switch0 »,
« tooltip »: « Lumière cuisine »,
« group »: « ae3eaf24.38897 »,
« order »: 1,
« width »: 0,
« height »: 0,
« passthru »: true,
« decouple »: « false »,
« topic »: «  »,
« style »: «  »,
« onvalue »: « true »,
« onvalueType »: « bool »,
« onicon »: «  »,
« oncolor »: «  »,
« offvalue »: « false »,
« offvalueType »: « bool »,
« officon »: «  »,
« offcolor »: «  »,
« x »: 1103,
« y »: 98,
« wires »: [
[
« 293cc9b3.136d26 »,
« fec1175e.19fa98 »
]
]
},
{
« id »: « 483db0a4.43378 »,
« type »: « rpi-gpio out »,
« z »: « 73ee6f5f.4d69b »,
« name »: « gpio0 »,
« pin »: « 11 »,
« set »: true,
« level »: « 0 »,
« freq »: «  »,
« out »: « out »,
« x »: 1530,
« y »: 100,
« wires »: []
},
{
« id »: « 22bd1a32.c8dd06 »,
« type »: « e-mail in »,
« z »: « 73ee6f5f.4d69b »,
« name »: « Domotique@dudus »,
« protocol »: « IMAP »,
« server »: « mail.dudus-company.com »,
« useSSL »: true,
« port »: « 993 »,
« box »: « INBOX »,
« disposition »: « Read »,
« criteria »: « UNSEEN »,
« repeat »: « 10 »,
« fetch »: « auto »,
« inputs »: 0,
« x »: 110,
« y »: 500,
« wires »: [
[
« 350cb555.3d26da »,
« 2d39c0f4.561d6 »,
« 23565e77.a2f922 »,
« 571170b3.a6c0a »,
« 2cd708b1.f36178 »,
« d990ab44.d44ca8 »,
« ce124456.b432a8 »,
« 62ea327a.24379c »,
« 80ecc258.a8d7b »,
« 87b926e6.7645d8 »,
« 2ff4d2eb.172cae »,
« 66337a69.f108f4 »,
« 4e8a65bd.bc02cc »
]
]
},
{
« id »: « 9ef865a5.eba268 »,
« type »: « debug »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« active »: true,
« tosidebar »: true,
« console »: false,
« tostatus »: false,
« complete »: « payload »,
« targetType »: « msg »,
« x »: 1630,
« y »: 780,
« wires »: []
},
{
« id »: « 39fc090c.385526 »,
« type »: « e-mail »,
« z »: « 73ee6f5f.4d69b »,
« server »: « mail.dudus-company.com »,
« port »: « 465 »,
« secure »: true,
« tls »: false,
« name »: « domo2@dudus-company.com »,
« dname »: « vers domo2 »,
« x »: 2310,
« y »: 300,
« wires »: []
},
{
« id »: « 71788784.67d618 »,
« type »: « bigtimer »,
« z »: « 73ee6f5f.4d69b »,
« outtopic »: «  »,
« outpayload1 »: «  »,
« outpayload2 »: «  »,
« name »: « Big Timer lum1 »,
« comment »: « testallumer lum 1 au crpuscule jusqu’a 23:45 »,
« lat »: « 48.91 »,
« lon »: « 2.18 »,
« starttime »: « 5001 »,
« endtime »: 1425,
« starttime2 »: 0,
« endtime2 »: 0,
« startoff »: « -30 »,
« endoff »: 0,
« startoff2 »: 0,
« endoff2 »: 0,
« offs »: « 1 »,
« outtext1 »: « teste ON »,
« outtext2 »: « tsxte off »,
« timeout »: 1440,
« sun »: true,
« mon »: true,
« tue »: true,
« wed »: true,
« thu »: true,
« fri »: true,
« sat »: true,
« jan »: true,
« feb »: true,
« mar »: true,
« apr »: true,
« may »: true,
« jun »: true,
« jul »: true,
« aug »: true,
« sep »: true,
« oct »: true,
« nov »: true,
« dec »: true,
« day1 »: 0,
« month1 »: 0,
« day2 »: 0,
« month2 »: 0,
« day3 »: 0,
« month3 »: 0,
« day4 »: 0,
« month4 »: 0,
« day5 »: 0,
« month5 »: 0,
« day6 »: 0,
« month6 »: 0,
« d1 »: 0,
« w1 »: 0,
« d2 »: 0,
« w2 »: 0,
« d3 »: 0,
« w3 »: 0,
« d4 »: 0,
« w4 »: 0,
« d5 »: 0,
« w5 »: 0,
« d6 »: 0,
« w6 »: 0,
« xday1 »: 0,
« xmonth1 »: 0,
« xday2 »: 0,
« xmonth2 »: 0,
« xday3 »: 0,
« xmonth3 »: 0,
« xday4 »: 0,
« xmonth4 »: 0,
« xday5 »: 0,
« xmonth5 »: 0,
« xday6 »: 0,
« xmonth6 »: 0,
« xd1 »: 0,
« xw1 »: 0,
« xd2 »: 0,
« xw2 »: 0,
« xd3 »: 0,
« xw3 »: 0,
« xd4 »: 0,
« xw4 »: 0,
« xd5 »: 0,
« xw5 »: 0,
« xd6 »: 0,
« xw6 »: 0,
« suspend »: false,
« random »: false,
« repeat »: true,
« atstart »: true,
« odd »: false,
« even »: false,
« x »: 280,
« y »: 860,
« wires »: [
[
« e1c1c5db.2461e8 »,
« 76a87fe6.20fe3 »,
« 2bbecfbf.1a729 »
],
[
« 4ebfc3a5.397b3c »
],
[
« 33e71139.fe9abe »
]
]
},
{
« id »: « 7d3a55bf.b2bebc »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« rules »: [
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « 0 »,
« fromt »: « num »,
« to »: « true »,
« tot »: « bool »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « 1 »,
« fromt »: « num »,
« to »: « false »,
« tot »: « bool »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 760,
« y »: 1060,
« wires »: [
[]
]
},
{
« id »: « e1c1c5db.2461e8 »,
« type »: « debug »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« active »: false,
« tosidebar »: true,
« console »: false,
« tostatus »: false,
« complete »: « true »,
« targetType »: « full »,
« x »: 810,
« y »: 800,
« wires »: []
},
{
« id »: « 4ebfc3a5.397b3c »,
« type »: « debug »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« active »: false,
« tosidebar »: true,
« console »: false,
« tostatus »: false,
« complete »: « time »,
« targetType »: « msg »,
« x »: 800,
« y »: 900,
« wires »: []
},
{
« id »: « 33e71139.fe9abe »,
« type »: « debug »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« active »: false,
« tosidebar »: true,
« console »: false,
« tostatus »: false,
« complete »: « true »,
« targetType »: « full »,
« x »: 810,
« y »: 940,
« wires »: []
},
{
« id »: « 617fdc38.ece024 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« rules »: [
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « 0 »,
« fromt »: « num »,
« to »: « true »,
« tot »: « bool »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « 1 »,
« fromt »: « num »,
« to »: « false »,
« tot »: « bool »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 1240,
« y »: 820,
« wires »: [
[]
]
},
{
« id »: « 66337a69.f108f4 »,
« type »: « debug »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« active »: false,
« tosidebar »: true,
« console »: false,
« tostatus »: false,
« complete »: « true »,
« targetType »: « full »,
« x »: 390,
« y »: 741.8181762695312,
« wires »: []
},
{
« id »: « 92ea5f2b.bb0b2 »,
« type »: « inject »,
« z »: « 73ee6f5f.4d69b »,
« name »: « Global ON »,
« topic »: «  »,
« payload »: « true »,
« payloadType »: « bool »,
« repeat »: «  »,
« crontab »: «  »,
« once »: false,
« onceDelay »: 0.1,
« x »: 1480,
« y »: 40,
« wires »: [
[
« 6c6b6f2b.ec0b7 »
]
]
},
{
« id »: « be577295.5e03c »,
« type »: « inject »,
« z »: « 73ee6f5f.4d69b »,
« name »: « Global OFF »,
« topic »: «  »,
« payload »: « false »,
« payloadType »: « bool »,
« repeat »: «  »,
« crontab »: «  »,
« once »: false,
« onceDelay »: 0.1,
« x »: 1670,
« y »: 40,
« wires »: [
[
« 3016c026.1b406 »
]
]
},
{
« id »: « a43e3111.61d78 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: « inverse »,
« rules »: [
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « false »,
« fromt »: « bool »,
« to »: « 1 »,
« tot »: « num »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « true »,
« fromt »: « bool »,
« to »: « 0 »,
« tot »: « num »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 1260,
« y »: 340,
« wires »: [
[
« 1affecde.332d73 »
]
]
},
{
« id »: « d1578996.ac3688 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: « inverse »,
« rules »: [
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « false »,
« fromt »: « bool »,
« to »: « 1 »,
« tot »: « num »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « true »,
« fromt »: « bool »,
« to »: « 0 »,
« tot »: « num »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 1260,
« y »: 400,
« wires »: [
[
« 1571e898.d8fcd7 »
]
]
},
{
« id »: « fadeff1f.741b3 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: « inverse »,
« rules »: [
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « false »,
« fromt »: « bool »,
« to »: « 1 »,
« tot »: « num »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « true »,
« fromt »: « bool »,
« to »: « 0 »,
« tot »: « num »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 1260,
« y »: 220,
« wires »: [
[
« 3021dc3b.cffbb4 »
]
]
},
{
« id »: « afc1a43.dff6458 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: « inverse »,
« rules »: [
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « false »,
« fromt »: « bool »,
« to »: « 1 »,
« tot »: « num »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « true »,
« fromt »: « bool »,
« to »: « 0 »,
« tot »: « num »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 1260,
« y »: 280,
« wires »: [
[
« 44791c70.834a14 »
]
]
},
{
« id »: « 293cc9b3.136d26 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: « inverse »,
« rules »: [
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « false »,
« fromt »: « bool »,
« to »: « 1 »,
« tot »: « num »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « true »,
« fromt »: « bool »,
« to »: « 0 »,
« tot »: « num »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 1260,
« y »: 100,
« wires »: [
[
« 483db0a4.43378 »
]
]
},
{
« id »: « c48f060.041b8f8 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: « inverse »,
« rules »: [
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « false »,
« fromt »: « bool »,
« to »: « 1 »,
« tot »: « num »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « true »,
« fromt »: « bool »,
« to »: « 0 »,
« tot »: « num »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 1260,
« y »: 520,
« wires »: [
[
« 4ed815da.1e4a2c »
]
]
},
{
« id »: « 532b46ed.6bb028 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: « inverse »,
« rules »: [
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « false »,
« fromt »: « bool »,
« to »: « 1 »,
« tot »: « num »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « true »,
« fromt »: « bool »,
« to »: « 0 »,
« tot »: « num »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 1260,
« y »: 460,
« wires »: [
[
« b71f3d71.6b5eb »
]
]
},
{
« id »: « 915e6b9c.ea86a8 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: « inverse »,
« rules »: [
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « false »,
« fromt »: « bool »,
« to »: « 1 »,
« tot »: « num »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « true »,
« fromt »: « bool »,
« to »: « 0 »,
« tot »: « num »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 1260,
« y »: 160,
« wires »: [
[
« 43bb180c.fa9768 »
]
]
},
{
« id »: « 131985a3.c67a0a »,
« type »: « debug »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« active »: true,
« tosidebar »: true,
« console »: false,
« tostatus »: false,
« complete »: « false »,
« x »: 2190,
« y »: 720,
« wires »: []
},
{
« id »: « c1dfa287.6e3b9 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« rules »: [
{
« t »: « set »,
« p »: « topic »,
« pt »: « msg »,
« to »: « Lumière 7 »,
« tot »: « str »
},
{
« t »: « set »,
« p »: « state »,
« pt »: « msg »,
« to »: « payload »,
« tot »: « msg »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « true »,
« fromt »: « bool »,
« to »: « Allumée »,
« tot »: « str »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « false »,
« fromt »: « bool »,
« to »: « Éteinte »,
« tot »: « str »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 2140,
« y »: 940,
« wires »: [
[]
]
},
{
« id »: « 3ff5e3db.27656c »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« func »: « \nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 1450,
« y »: 800,
« wires »: [
[]
]
},
{
« id »: « fdb73e4.d2bfcc »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « mise en forme mail »,
« func »: « {msg.lampe = ‘Lumière 3’;\nif (msg.payload === true) msg.payload = ‘Allumée’;\nif (msg.payload === false) msg.payload = ‘Éteinte’;\nmsg.topic = msg.lampe + ‘ est ‘ + msg.payload}\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 1730,
« y »: 300,
« wires »: [
[
« 55028ed3.7936e »
]
]
},
{
« id »: « ba2e8d14.45dbe »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « mise en forme mail »,
« func »: « {msg.lampe = ‘Lumière 4’;\nif (msg.payload === true) msg.payload = ‘Allumée’;\nif (msg.payload === false) msg.payload = ‘Éteinte’;\nmsg.topic = msg.lampe + ‘ est ‘ + msg.payload}\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 1730,
« y »: 360,
« wires »: [
[
« 55028ed3.7936e »
]
]
},
{
« id »: « 4cbc35f3.46676c »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « mise en forme mail »,
« func »: « {msg.lampe = ‘Lumière 5’;\nif (msg.payload === true) msg.payload = ‘Allumée’;\nif (msg.payload === false) msg.payload = ‘Éteinte’;\nmsg.topic = msg.lampe + ‘ est ‘ + msg.payload}\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 1730,
« y »: 420,
« wires »: [
[
« 55028ed3.7936e »
]
]
},
{
« id »: « 9865fede.5614c »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « mise en forme mail »,
« func »: « {msg.lampe = ‘Lumière 6’;\nif (msg.payload === true) msg.payload = ‘Allumée’;\nif (msg.payload === false) msg.payload = ‘Éteinte’;\nmsg.topic = msg.lampe + ‘ est ‘ + msg.payload}\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 1730,
« y »: 480,
« wires »: [
[
« 55028ed3.7936e »
]
]
},
{
« id »: « 65426b63.d25194 »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « mise en forme mail »,
« func »: « {msg.lampe = ‘Lumière 2’;\nif (msg.payload === true) msg.payload = ‘Allumée’;\nif (msg.payload === false) msg.payload = ‘Éteinte’;\nmsg.topic = msg.lampe + ‘ est ‘ + msg.payload}\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 1730,
« y »: 240,
« wires »: [
[]
]
},
{
« id »: « ed6f5c20.a3fec »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « mise en forme mail »,
« func »: « {msg.lampe = ‘Lumière 1’;\nif (msg.payload === true) msg.payload = ‘Allumée’;\nif (msg.payload === false) msg.payload = ‘Éteinte’;\nmsg.topic = msg.lampe + ‘ est ‘ + msg.payload}\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 1730,
« y »: 180,
« wires »: [
[
« 55028ed3.7936e »
]
]
},
{
« id »: « bca23e69.61f7c »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « mise en forme mail »,
« func »: « {msg.lampe = ‘Lumière 7’;\nif (msg.payload === true) msg.payload = ‘Allumée’;\nif (msg.payload === false) msg.payload = ‘Éteinte’;\nmsg.topic = msg.lampe + ‘ est ‘ + msg.payload}\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 1730,
« y »: 540,
« wires »: [
[
« 55028ed3.7936e »
]
]
},
{
« id »: « fec1175e.19fa98 »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « mise en forme mail »,
« func »: « {msg.lampe = ‘Lumière 0’;\nif (msg.payload === true) msg.payload = ‘Allumée’;\nif (msg.payload === false) msg.payload = ‘Éteinte’;\nmsg.topic = msg.lampe + ‘ est ‘ + msg.payload}\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 1730,
« y »: 120,
« wires »: [
[
« 55028ed3.7936e »
]
]
},
{
« id »: « 61f4f447.ce03fc »,
« type »: « rpi-gpio in »,
« z »: « 73ee6f5f.4d69b »,
« name »: « gpio pin40 IN global off »,
« pin »: « 40 »,
« intype »: « up »,
« debounce »: « 25 »,
« read »: false,
« x »: 140,
« y »: 120,
« wires »: [
[
« 3016c026.1b406 »
]
]
},
{
« id »: « 350cb555.3d26da »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « si L2 »,
« func »:  » var action;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L2ON\ »)>=0)) action = true; }\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L2OFF\ »)>=0)) action = false;}\n \n \n\n msg.payload = action;\n\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 390,
« y »: 460,
« wires »: [
[
« 76a87fe6.20fe3 »
]
]
},
{
« id »: « 2d39c0f4.561d6 »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « si L1 »,
« func »:  » var action;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L1ON\ »)>=0)) action = true; }\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L1OFF\ »)>=0)) action = false;}\n \n \n\n msg.payload = action;\n\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 390,
« y »: 420,
« wires »: [
[
« f2209dbf.5863d »
]
]
},
{
« id »: « 23565e77.a2f922 »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « si L03 »,
« func »:  » var action;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L3ON\ »)>=0)) action = true; }\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L3OFF\ »)>=0)) action = false;}\n \n \n\n msg.payload = action;\n\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 390,
« y »: 500,
« wires »: [
[
« ae7e7e56.3f3e2 »
]
]
},
{
« id »: « 571170b3.a6c0a »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « si L04 »,
« func »:  » var action;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L4ON\ »)>=0)) action = true; }\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L4OFF\ »)>=0)) action = false;}\n \n \n\n msg.payload = action;\n\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 390,
« y »: 540,
« wires »: [
[
« 5ae3d305.109a0c »
]
]
},
{
« id »: « 2cd708b1.f36178 »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « si L05 »,
« func »:  » var action;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L5ON\ »)>=0)) action = true; }\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L5OFF\ »)>=0)) action = false;}\n \n \n\n msg.payload = action;\n\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 390,
« y »: 580,
« wires »: [
[
« 2bbecfbf.1a729 »
]
]
},
{
« id »: « d990ab44.d44ca8 »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « si L06 »,
« func »:  » var action;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L6ON\ »)>=0)) action = true; }\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L6OFF\ »)>=0)) action = false;}\n \n \n\n msg.payload = action;\n\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 390,
« y »: 620,
« wires »: [
[
« 6e1adc3f.21d564 »
]
]
},
{
« id »: « 87b926e6.7645d8 »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « si L07 »,
« func »:  » var action;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L7ON\ »)>=0)) action = true; }\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L7OFF\ »)>=0)) action = false;}\n \n \n\n msg.payload = action;\n\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 390,
« y »: 660,
« wires »: [
[
« 6572ecf3.ef3964 »
]
]
},
{
« id »: « 62ea327a.24379c »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « si GOFF »,
« func »:  » var action = false;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »GLOBALOFF\ »)>=0)) { action = true; \n\n \n\n msg.payload = action;\n\nreturn msg;}} »,
« outputs »: 1,
« noerr »: 0,
« x »: 140,
« y »: 240,
« wires »: [
[
« 3016c026.1b406 »
]
]
},
{
« id »: « ce124456.b432a8 »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « si L0 »,
« func »:  » var action;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L0ON\ »)>=0)) action = true; }\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »L0OFF\ »)>=0)) action = false;}\n \n \n\n msg.payload = action;\n\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 390,
« y »: 380,
« wires »: [
[
« 29eec6eb.fca0da »
]
]
},
{
« id »: « 80ecc258.a8d7b »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « si GON »,
« func »:  » var action = false;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »GLOBALON\ »)>=0)) { action = true; \n\n \n\n msg.payload = action;\n\nreturn msg;}} »,
« outputs »: 1,
« noerr »: 0,
« x »: 200,
« y »: 300,
« wires »: [
[
« 6c6b6f2b.ec0b7 »
]
]
},
{
« id »: « da3bad29.afdd4 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: « set msg.pauload global »,
« rules »: [
{
« t »: « set »,
« p »: « payload »,
« pt »: « msg »,
« to »: « payload »,
« tot »: « global »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 200,
« y »: 760,
« wires »: [
[]
]
},
{
« id »: « 2ff4d2eb.172cae »,
« type »: « link out »,
« z »: « 73ee6f5f.4d69b »,
« name »: « Label 1 »,
« links »: [
« 6988ad48.521c84 »
],
« x »: 115,
« y »: 640,
« wires »: []
},
{
« id »: « 890537cd.36b558 »,
« type »: « get media tags »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« filename »: «  »,
« x »: 2160,
« y »: 880,
« wires »: [
[]
]
},
{
« id »: « 5cf2218a.f642a »,
« type »: « ui_media »,
« z »: « 73ee6f5f.4d69b »,
« group »: « d05a05f3.4ba748 »,
« name »: «  »,
« width »: « 6 »,
« height »: « 4 »,
« order »: 26,
« category »: «  »,
« file »: «  »,
« layout »: « adjust »,
« showcontrols »: true,
« loop »: true,
« onstart »: false,
« scope »: « local »,
« tooltip »: «  »,
« x »: 2030,
« y »: 720,
« wires »: [
[
« 131985a3.c67a0a »
]
]
},
{
« id »: « 402a952c.7ba86c »,
« type »: « file »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« filename »: «  »,
« appendNewline »: true,
« createDir »: false,
« overwriteFile »: « false »,
« encoding »: « none »,
« x »: 1890,
« y »: 720,
« wires »: [
[
« 5cf2218a.f642a »
]
]
},
{
« id »: « 6572ecf3.ef3964 »,
« type »: « ui_switch »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« label »: « switch7 »,
« tooltip »: « Première colonne côté Sophie »,
« group »: « ae3eaf24.38897 »,
« order »: 8,
« width »: 0,
« height »: 0,
« passthru »: true,
« decouple »: « false »,
« topic »: «  »,
« style »: «  »,
« onvalue »: « true »,
« onvalueType »: « bool »,
« onicon »: «  »,
« oncolor »: «  »,
« offvalue »: « false »,
« offvalueType »: « bool »,
« officon »: «  »,
« offcolor »: «  »,
« x »: 1100,
« y »: 520,
« wires »: [
[
« c48f060.041b8f8 »,
« bca23e69.61f7c »
]
]
},
{
« id »: « c4e77535.10e1e8 »,
« type »: « link in »,
« z »: « 73ee6f5f.4d69b »,
« name »: « vers mail domo2 »,
« links »: [
« 96cd86d4.14ef38 »
],
« x »: 1995,
« y »: 80,
« wires »: [
[
« 55028ed3.7936e »
]
]
},
{
« id »: « 55028ed3.7936e »,
« type »: « delay »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« pauseType »: « rate »,
« timeout »: « 5 »,
« timeoutUnits »: « seconds »,
« rate »: « 1 »,
« nbRateUnits »: « 5 »,
« rateUnits »: « second »,
« randomFirst »: « 1 »,
« randomLast »: « 5 »,
« randomUnits »: « seconds »,
« drop »: false,
« x »: 2150,
« y »: 300,
« wires »: [
[
« 39fc090c.385526 »
]
]
},
{
« id »: « aa6bb188.f09398 »,
« type »: « rpi-gpio out »,
« z »: « 73ee6f5f.4d69b »,
« name »: « gpio37 arbre »,
« pin »: « 37 »,
« set »: false,
« level »: « 0 »,
« freq »: «  »,
« out »: « out »,
« x »: 1526.7877807617188,
« y »: 603.0757446289062,
« wires »: []
},
{
« id »: « 12c054e2.5c9863 »,
« type »: « change »,
« z »: « 73ee6f5f.4d69b »,
« name »: « inverse »,
« rules »: [
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « false »,
« fromt »: « bool »,
« to »: « 1 »,
« tot »: « num »
},
{
« t »: « change »,
« p »: « payload »,
« pt »: « msg »,
« from »: « true »,
« fromt »: « bool »,
« to »: « 0 »,
« tot »: « num »
}
],
« action »: «  »,
« property »: «  »,
« from »: «  »,
« to »: «  »,
« reg »: false,
« x »: 1255.8787841796875,
« y »: 615.8030395507812,
« wires »: [
[
« aa6bb188.f09398 »
]
]
},
{
« id »: « 2b97773d.8f465 »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « mise en forme mail »,
« func »: « {msg.lampe = ‘Lumière 7’;\nif (msg.payload === true) msg.payload = ‘Allumée’;\nif (msg.payload === false) msg.payload = ‘Éteinte’;\nmsg.topic = msg.lampe + ‘ est ‘ + msg.payload}\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 1725.8787841796875,
« y »: 635.8030395507812,
« wires »: [
[
« 55028ed3.7936e »
]
]
},
{
« id »: « 89c713e8.de2228 »,
« type »: « ui_switch »,
« z »: « 73ee6f5f.4d69b »,
« name »: «  »,
« label »: « Arbre »,
« tooltip »: « Arbre de manu et Anne-Sophie »,
« group »: « ae3eaf24.38897 »,
« order »: 8,
« width »: 0,
« height »: 0,
« passthru »: true,
« decouple »: « false »,
« topic »: «  »,
« style »: «  »,
« onvalue »: « true »,
« onvalueType »: « bool »,
« onicon »: «  »,
« oncolor »: «  »,
« offvalue »: « false »,
« offvalueType »: « bool »,
« officon »: «  »,
« offcolor »: «  »,
« x »: 1085.8787841796875,
« y »: 615.8030395507812,
« wires »: [
[
« 12c054e2.5c9863 »,
« 2b97773d.8f465 »
]
]
},
{
« id »: « 4e8a65bd.bc02cc »,
« type »: « function »,
« z »: « 73ee6f5f.4d69b »,
« name »: « si Arbre »,
« func »:  » var action;\n var chaine=msg.payload.toUpperCase();\n var sujet=msg.topic.toUpperCase();\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »ARBREON\ »)>=0)) action = true; }\n{if ((sujet.indexOf(\ »LUM\ ») >=0) && (chaine.indexOf(\ »ARBREOFF\ »)>=0)) action = false;}\n \n \n\n msg.payload = action;\n\nreturn msg; »,
« outputs »: 1,
« noerr »: 0,
« x »: 399.8787841796875,
« y »: 701.0302734375,
« wires »: [
[
« 89c713e8.de2228 »
]
]
},
{
« id »: « ae3eaf24.38897 »,
« type »: « ui_group »,
« z »: «  »,
« name »: « Lumières »,
« tab »: « 5c56315f.8c567 »,
« order »: 1,
« disp »: true,
« width »: 5,
« collapse »: false
},
{
« id »: « d05a05f3.4ba748 »,
« type »: « ui_group »,
« z »: «  »,
« name »: « le groupe »,
« tab »: « a90dc0c2.01a29 »,
« disp »: true,
« width »: « 6 »,
« collapse »: false
},
{
« id »: « 5c56315f.8c567 »,
« type »: « ui_tab »,
« z »: «  »,
« name »: « Domotique »,
« icon »: « dashboard »,
« order »: 1,
« disabled »: false,
« hidden »: false
},
{
« id »: « a90dc0c2.01a29 »,
« type »: « ui_tab »,
« z »: «  »,
« name »: « test »,
« icon »: « dashboard »,
« order »: 5,
« disabled »: true,
« hidden »: true
}
]

Vous pouver faire copier/import flow pour voir ce que ça donne, s’il manque des nodes, vous devrez les installer.

j’ai pris conscience hier soir que tous mes interrupteurs et prises et me points lumineux ainsi que tout mon electro menager étaient déjà connectés!!! connectés à quoi?? mais à mon réseau électrique bien sûr!!!

à suivre