iotredloop/flows/K.Thermostat.json

6736 lines
123 KiB
JSON
Raw Normal View History

2024-04-27 16:59:38 +00:00
[
{
"id": "80f2ffd4953c67e9",
"type": "tab",
"label": "K.Thermostat",
"disabled": false,
"info": "",
"env": []
},
{
"id": "f12560e95cd346d2",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - bucket",
"style": {
"fill": "#ffC000",
"fill-opacity": "0.05",
"label": true,
"stroke": "#ffC000"
},
"nodes": [
"f0bd4b1ffe5da318",
"5c64177e3bbfd337",
"4f0f1c286cdfedcd"
],
"x": 94,
"y": 19,
"w": 342,
"h": 82
},
2024-04-27 17:09:53 +00:00
{
"id": "dbf491fd689e7cd2",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat",
"style": {
"fill": "#777777",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"ccc78d495cbd8f7d",
"e57e9c900c787424",
"8206912d2f9bab36",
"0af18fd6cc155518",
"c311204f22191fa2",
"868902cdeaa428fe",
"467ec12f292b2573",
"6c4b12585b58300e"
],
"x": 68,
"y": 2213,
2024-04-27 17:09:53 +00:00
"w": 2204,
"h": 1874
},
{
"id": "7e9cff1699c061ec",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - compute heat request",
"style": {
"stroke": "#92d04f",
"fill": "#92d04f",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"1452439e0c937126",
"15d8d0ba06961e4b",
"4b342483a51b0f93"
],
"x": 94,
"y": 1879,
2024-04-27 17:09:53 +00:00
"w": 522,
"h": 82
},
{
"id": "93075511ad056e6d",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - update - outdoor temperature (customized to my needs)",
"style": {
"label": true,
"fill": "#92d04f",
"fill-opacity": "0.05"
},
"nodes": [
"8bbf52c2a83e09ea",
"0a9cb3219b03ca53",
"de7ea9b615e052e6",
"37844601d21c6184",
"e3dc3f877be31d77",
"6fbdfc1ab44f9754",
"85f9e2ad24cb8a5a",
"818c3dadf81b379e"
2024-04-27 17:09:53 +00:00
],
"x": 94,
"y": 4159,
"w": 1402,
"h": 142
2024-04-27 17:09:53 +00:00
},
{
"id": "e653f3ec3dc88a8f",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - update - indoor temperature",
"style": {
"fill": "#92d04f",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"3099e4a17fd21410",
"a2b07c98d61de126",
"d09ad27d05d54698",
"4c169fc26f833802",
"a21c6a2db7aeab09",
"c7d315d762524494",
"e2c388ba43ec89f0",
"9eb8cf78caf3141d",
"313fbd5fc01985a5",
"b7ffd39578f29c8b",
"c3b17da928d7afba"
2024-04-27 17:09:53 +00:00
],
"x": 94,
"y": 4339,
"w": 2052,
"h": 142
2024-04-27 17:09:53 +00:00
},
{
"id": "6f1f772c23d57e24",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - update - offloading",
"style": {
"fill": "#92d04f",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"5cb2a229a6fec1aa",
"1c4fbd9e3d313b43",
"2aaf95392a970167",
"e78638ee35b8c069",
"2cb92368cb319c65",
"1dd82f8d7e2ccd52",
"4b2f0c80863bf5e7",
"91ee9f04019a9999",
"53f044d01f2d18b2",
"2df7aa160cbf3a71",
"db3681610a5d90d9",
"7869c56dce3123ed",
"ea0c6cadf1d594c3",
"285a0091abda1f58",
"96e92d4bad3792d3",
"3de9c88ac7ce9a77",
"6e120320180e5cfd",
"d237415ac7c1b47b",
"808426e9258cd024",
"3b539d9347f6bb28",
"f6875e4f57839bc7"
2024-04-27 17:09:53 +00:00
],
"x": 94,
"y": 4519,
"w": 3832,
"h": 142
2024-04-27 17:09:53 +00:00
},
{
"id": "c3cbb2a2dd06d1bb",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - ui - test",
"style": {
"fill": "#6f2fa0",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"659f9752db0967bc",
"9caafb8c1719d275",
"515b0c184c8a3628",
"13697bbd73295b46",
"c6fdc57a80266f04",
"b7bc73260cea8570",
"d60c017a8962d3f8",
"dc37631fe73fce2a",
"c932311ec07112b5",
"67e91e753d3708e2",
"a86e51fee3e3458d",
"f974a627497b4b7d",
"809635d5f2efc402",
"c9291360c0f0b490",
"f10733a435dc7390",
"f81152d8df61c845",
"bc4771242d5d3bd8",
"135b7546018ecfba",
"6bf593bd1612dbde",
"64405bce10cccde1",
"bf5b9cb6fe9e3550",
"6e4f87c323cc4659"
],
"x": 94,
"y": 5959,
2024-04-27 17:09:53 +00:00
"w": 1752,
"h": 502
},
2024-04-27 16:59:38 +00:00
{
"id": "1338205554153fa8",
2024-04-27 16:59:38 +00:00
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "catch error",
2024-04-27 16:59:38 +00:00
"style": {
"fill": "#ff0000",
2024-04-27 16:59:38 +00:00
"fill-opacity": "0.05",
"label": true,
"stroke": "#ff0000"
2024-04-27 16:59:38 +00:00
},
"nodes": [
"104783a075f279a3",
"225fbec54fe689f8",
"efdfaa2b7173a43a"
2024-04-27 16:59:38 +00:00
],
"x": 534,
"y": 19,
"w": 422,
"h": 82
2024-04-27 16:59:38 +00:00
},
2024-05-13 18:54:03 +00:00
{
"id": "e6edd4684b272434",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - device",
"style": {
"label": true,
"fill": "#ffC000",
"fill-opacity": "0.05"
},
"nodes": [
"949a8ee5f18f108a",
"fae8eb23e8443ee5",
"c2589545c2409827",
"8f85c87887c020c4",
"55333767f9209bca",
"c5b547a57eb368ad",
"958bbeb30de3eada",
"9ca9625cd3f893dc",
"4efebf9bfd65df96",
"96d26c543c5fcf13",
"5f1e10e5657e3138",
"2039bf8bb21c10d1",
"21d8e3e1da7313ff",
"657fe886d2a3f59f",
"f513b11976d16bb9",
"73c382176ddebc2b",
"a900585cd904a957",
"873ead3b33da82c9",
"e069a71e517cb7ea",
"834fc1d89a1493b3",
"c79982618f4e3345",
"cb222ce1c4c3d7dc",
"3006243d30270236",
"1707bc7a4bb0daa5",
"ea848cdc88365d9a",
"e875ef56fb60ac9c",
"0c919f0ee88983ad",
"780cf693ea55249b",
"fb20d3e29fc3092d",
"2b4f4116011a9ca6",
"07b7d259f0949e49",
"a895f0ea053086fe",
"3683e8f63f0dc5aa",
"bae9495793960012"
],
"x": 94,
"y": 199,
"w": 1142,
"h": 1642
},
{
"id": "8ecd405cd0a1e5ac",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - update - aperture opened",
"style": {
"fill": "#92d04f",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"7837b5fcc1432bfa",
"6632e88ee0633e4c",
"3905527e91730097",
"01c20d4c1e5db317",
"87b35783671bc785",
"c52bde31f64b30dd",
"748b1f355c0e00f8",
"86cb7c12e7bccf56",
"c8d72dec2ba2b842",
"a91a6950282e40e0",
"7cc8434ffb22fe29"
],
"x": 94,
"y": 4699,
"w": 2272,
"h": 164.5
},
2024-04-27 16:59:38 +00:00
{
"id": "ccc78d495cbd8f7d",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - update - pilot",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"cfeaa3a9e12b40eb",
"2b98ac8845853557",
"1b79850c96d3d208",
"014df3b24c891646",
"d67d4a70e837c744",
"b809a2344b2a162c",
"b5123d0e6886505f",
"2311d66d2d2f1a5a",
"d2ded0d940485aa7",
"80b02c9d206eb796",
"e50f34cde29f1023",
"502bf87b213069c7",
"4e6ed9498ff4530e",
"12cadcc5d1bee95b",
"b54dd8d3915e207f",
"06abf52a6249bd22",
"93d2b581d45d7631"
],
"x": 94,
"y": 3619,
2024-04-27 16:59:38 +00:00
"w": 2152,
"h": 262
},
{
"id": "e57e9c900c787424",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - update - status",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"cd96635eddc7da1f",
"4fc3e55ddfdaa010",
"529ee15b89c1a59a",
"559221227a779f47",
"5473623028666410",
"61a83a7757b78adc",
"889157da2139e8ff",
"503a81673f2d7fb0",
"a4c6172c4c4737ac",
"4cdca41467e84399",
"6335a0ba7e4fd02e",
"ffdbc6f74f0bd44a",
"1ff0b0648a927b0f",
"f0e65595e5827e60",
"54a377fdde983cc9"
],
"x": 94,
"y": 3259,
2024-04-27 16:59:38 +00:00
"w": 1952,
"h": 322
},
{
"id": "8206912d2f9bab36",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - update - offloading",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"f3335edf661bfc8d",
"82489d3f8ae606cf",
"c91c042b412afd7f",
"8a7f5acb317722bc",
"aa80f7b58c825d6d",
"cbb6f339addc057f",
"772937ddeb3e1b72",
"1b11e45ef3e9f02f",
"3bc159f186c762cd",
"0ea437f46160f0e5"
],
"x": 94,
"y": 3019,
2024-04-27 16:59:38 +00:00
"w": 1632,
"h": 202
},
{
"id": "0af18fd6cc155518",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - udpate - temperature setpoint",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"e7a80893daf9f5cd",
"85d6369076d887c9",
"1164fe72097e884c",
"0eb756ee244751a4",
"3a3af17d95ca520a",
"70c27df7cb0add1d",
"64754ad76b3561d6",
"f9fad454dec37bc7",
"55660ec49f882e13"
],
"x": 94,
"y": 2779,
2024-04-27 16:59:38 +00:00
"w": 1412,
"h": 202
},
{
"id": "c311204f22191fa2",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - update - delayed aperture",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"f1240da189a60ba8",
"ecda411603ebcccf",
"f3eb2e8c09f67e89",
"f305bda7c25657e5",
"6a726c7db415e700",
"4658e2323b1a287a",
"37b31a14146e2a3f",
"92add418b3868c54",
"6893398018de38e9"
],
"x": 94,
"y": 2599,
2024-04-27 16:59:38 +00:00
"w": 1592,
"h": 142
},
{
"id": "868902cdeaa428fe",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - metric - input",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"266e831763ed3b77",
"ed42e96a79df8e09",
"7b43ab1cda2d8f3f",
"ff4225d872a9a0d3",
"623975efd8e9bbcd",
"be58e8ac1e1b6eb1"
],
"x": 94,
"y": 2239,
2024-04-27 16:59:38 +00:00
"w": 972,
"h": 142
},
{
"id": "467ec12f292b2573",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - update - heat request",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"1ed6b5ff63020d07",
"69fda60f897db5fd",
"d75bdce71118a56f",
"5f6fd378f40e4c81",
"0fb59058d3aa9663",
"0998eafda2346961"
],
"x": 94,
"y": 2419,
2024-04-27 16:59:38 +00:00
"w": 1172,
"h": 157
},
{
"id": "6c4b12585b58300e",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - metric - output",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"a091b2e84a4e89e6",
"34e6817c2f435667",
"9ba0a97276e93540",
"147aa94543fa77cb"
],
"x": 94,
"y": 3919,
2024-04-27 16:59:38 +00:00
"w": 592,
"h": 142
},
2024-07-21 19:50:04 +00:00
{
"id": "b3bc1717c16dc7dc",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - update - operating mode",
"style": {
"stroke": "#a4a4a4",
"fill": "#92d04f",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"048bc1e501b0f9f2",
"3b8d8924bdb03f80",
"3e40fc1c77ed372a",
"b461040a6c998b61",
"3c808f997ae66a1c",
"069ab711c0c089a6",
"c20295d9b0ac3419",
"34992e101a5f7e1c",
"36eb92fa692e166c",
"d4c1d964e9c56e01",
"abd02925c2597211",
"e267a0404a5c5d6c",
"758acb218148a1d7",
"0728c8c3564e6e93",
"d1c7f4810b12afe2",
"35ea643afefc732d",
"6764b95646ec77db",
"45bd2f5743776c20",
"d6ec98126b0438ab",
"84f1bb54c15f032d",
"f05d34dd5ff9746b"
],
"x": 94,
"y": 4899,
"w": 3172,
"h": 262
},
2024-04-27 16:59:38 +00:00
{
"id": "f0bd4b1ffe5da318",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "f12560e95cd346d2",
"name": "bucket",
"rules": [
{
"t": "set",
"p": "bucket",
"pt": "msg",
"to": "thermostat",
"tot": "str"
},
{
"t": "set",
"p": "bucket",
"pt": "flow",
"to": "bucket",
"tot": "msg"
},
{
"t": "set",
"p": "thermostats",
"pt": "flow",
"to": "{}",
"tot": "jsonata"
},
{
"t": "set",
"p": "offloading",
"pt": "flow",
"to": "0",
"tot": "num"
},
{
"t": "set",
"p": "sort",
"pt": "flow",
"to": "[]",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 270,
"y": 60,
"wires": [
[
"4f0f1c286cdfedcd"
]
]
},
{
"id": "5c64177e3bbfd337",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "f12560e95cd346d2",
"name": "thermostat - bucket",
"links": [
"25445f5a9b787a0a"
],
"x": 135,
"y": 60,
"wires": [
[
"f0bd4b1ffe5da318"
]
]
},
{
"id": "4f0f1c286cdfedcd",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "f12560e95cd346d2",
"name": "thermostat - bucket",
"mode": "link",
"links": [
"4aab252764e96897"
],
"x": 395,
"y": 60,
"wires": []
},
{
"id": "cfeaa3a9e12b40eb",
"type": "link out",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat - update - pilot metric",
"mode": "link",
2024-04-27 16:59:38 +00:00
"links": [
"206c1fb4a48067df"
2024-04-27 16:59:38 +00:00
],
"x": 2055,
"y": 3780,
"wires": []
},
{
"id": "2b98ac8845853557",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "trigger",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "status",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 270,
"y": 3720,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1b79850c96d3d208"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "1b79850c96d3d208",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "status",
"property": "payload",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "powered",
"vt": "str"
2024-04-27 16:59:38 +00:00
},
{
"t": "eq",
"v": "reached",
"vt": "str"
2024-04-27 16:59:38 +00:00
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 3,
"x": 430,
"y": 3720,
"wires": [
[
"b809a2344b2a162c"
],
[
"d67d4a70e837c744"
],
[
"d67d4a70e837c744"
]
]
},
{
"id": "014df3b24c891646",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "to true",
"rules": [
2024-04-27 16:59:38 +00:00
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "true",
"tot": "bool"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 830,
"y": 3780,
2024-04-27 16:59:38 +00:00
"wires": [
[
"4e6ed9498ff4530e",
"12cadcc5d1bee95b",
"b5123d0e6886505f"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "d67d4a70e837c744",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "to false",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "false",
"tot": "bool"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 840,
"y": 3720,
2024-04-27 16:59:38 +00:00
"wires": [
[
"12cadcc5d1bee95b",
"4e6ed9498ff4530e",
"b5123d0e6886505f"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "b809a2344b2a162c",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "system offloaded",
"property": "metrics.system.mode.offloading",
"propertyType": "global",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "offloaded",
2024-04-27 16:59:38 +00:00
"vt": "str"
},
{
"t": "else"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 630,
"y": 3660,
2024-04-27 16:59:38 +00:00
"wires": [
[
"b54dd8d3915e207f"
2024-04-27 16:59:38 +00:00
],
[
"014df3b24c891646"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "b5123d0e6886505f",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "cycle time",
"rules": [
{
"t": "set",
"p": "tc",
"pt": "msg",
"to": "th['cycle time']",
"tot": "msg"
},
{
"t": "set",
"p": "delay",
"pt": "msg",
"to": "msg.tc * 60000",
"tot": "jsonata"
},
{
"t": "delete",
"p": "tc",
"pt": "msg"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1020,
"y": 3840,
2024-04-27 16:59:38 +00:00
"wires": [
[
"d2ded0d940485aa7"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "2311d66d2d2f1a5a",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat / offloading",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "offloading",
2024-04-27 16:59:38 +00:00
"tot": "str"
},
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "true",
"tot": "bool"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1060,
"y": 3660,
"wires": [
[
"502bf87b213069c7"
]
]
},
{
"id": "d2ded0d940485aa7",
"type": "trigger",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "wait delay then send false, reset on false",
"op1": "",
"op2": "false",
"op1type": "nul",
"op2type": "bool",
"duration": "30",
"extend": false,
"overrideDelay": true,
"units": "min",
"reset": "false",
"bytopic": "topic",
"topic": "th.bucket",
"outputs": 1,
"x": 1300,
"y": 3840,
"wires": [
[
"4e6ed9498ff4530e",
"12cadcc5d1bee95b"
]
]
},
{
"id": "80b02c9d206eb796",
"type": "trigger",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "wait 1 min then send last",
"op1": "",
"op2": "",
"op1type": "nul",
"op2type": "payl",
"duration": "1",
"extend": true,
"overrideDelay": false,
"units": "min",
"reset": "",
"bytopic": "topic",
"topic": "bucket",
"outputs": 1,
"x": 1870,
"y": 3840,
2024-04-27 16:59:38 +00:00
"wires": [
[
"cfeaa3a9e12b40eb",
"93d2b581d45d7631"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "e50f34cde29f1023",
2024-04-27 16:59:38 +00:00
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat - update - pilot",
2024-04-27 16:59:38 +00:00
"links": [
"be58e8ac1e1b6eb1"
2024-04-27 16:59:38 +00:00
],
"x": 135,
"y": 3720,
2024-04-27 16:59:38 +00:00
"wires": [
[
"2b98ac8845853557"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "502bf87b213069c7",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat - update - pilot",
"mode": "link",
"links": [
"147aa94543fa77cb"
],
"x": 1795,
"y": 3660,
"wires": []
},
{
"id": "4e6ed9498ff4530e",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat / last pilot",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "last pilot",
"tot": "str"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "",
"tot": "date"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1620,
"y": 3720,
2024-04-27 16:59:38 +00:00
"wires": [
[
"502bf87b213069c7",
"06abf52a6249bd22"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "12cadcc5d1bee95b",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "metric cible / pilot",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "bucket",
"pt": "msg",
"to": "th.bucket",
"tot": "msg"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "measurement",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "cible",
"tot": "str"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "pilot",
2024-04-27 16:59:38 +00:00
"tot": "str"
},
{
"t": "delete",
"p": "th",
"pt": "msg"
},
{
"t": "set",
"p": "repeat",
"pt": "msg",
"to": "true",
"tot": "bool"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1610,
"y": 3780,
2024-04-27 16:59:38 +00:00
"wires": [
[
"80b02c9d206eb796",
"cfeaa3a9e12b40eb",
"93d2b581d45d7631"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "b54dd8d3915e207f",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "to false",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "false",
"tot": "bool"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 840,
"y": 3660,
2024-04-27 16:59:38 +00:00
"wires": [
[
"2311d66d2d2f1a5a",
"b5123d0e6886505f"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "06abf52a6249bd22",
"type": "debug",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat / last pilot",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1880,
"y": 3720,
"wires": []
},
{
"id": "93d2b581d45d7631",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "xxx / cible / pilot",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 2120,
"y": 3840,
"wires": []
},
{
"id": "cd96635eddc7da1f",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "operating mode",
"property": "th['operating mode']",
2024-04-27 16:59:38 +00:00
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "off",
2024-04-27 16:59:38 +00:00
"vt": "str"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 460,
"y": 3300,
2024-04-27 16:59:38 +00:00
"wires": [
[
"5473623028666410"
2024-04-27 16:59:38 +00:00
],
[
"4fc3e55ddfdaa010"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "4fc3e55ddfdaa010",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "offloading",
"property": "th.offloading",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "true"
},
{
"t": "else"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 660,
"y": 3360,
2024-04-27 16:59:38 +00:00
"wires": [
[
"61a83a7757b78adc"
],
[
"529ee15b89c1a59a"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "529ee15b89c1a59a",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "delayed aperture",
"property": "th['delayed aperture']",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "true"
},
{
"t": "else"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 870,
"y": 3420,
2024-04-27 16:59:38 +00:00
"wires": [
[
"889157da2139e8ff"
],
[
"559221227a779f47"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "559221227a779f47",
2024-04-27 16:59:38 +00:00
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "heat request",
"property": "th['heat request']",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "true"
2024-04-27 16:59:38 +00:00
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 1090,
"y": 3480,
2024-04-27 16:59:38 +00:00
"wires": [
[
"503a81673f2d7fb0"
2024-04-27 16:59:38 +00:00
],
[
"54a377fdde983cc9"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "5473623028666410",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "stopped",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "stopped",
"tot": "str"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1460,
"y": 3300,
2024-04-27 16:59:38 +00:00
"wires": [
[
"4cdca41467e84399"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "61a83a7757b78adc",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "offloaded",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "offloaded",
"tot": "str"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1460,
"y": 3360,
2024-04-27 16:59:38 +00:00
"wires": [
[
"4cdca41467e84399"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "889157da2139e8ff",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "suspended",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "suspended",
"tot": "str"
}
2024-04-27 16:59:38 +00:00
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1470,
"y": 3420,
2024-04-27 16:59:38 +00:00
"wires": [
[
"4cdca41467e84399"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "503a81673f2d7fb0",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "powered",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "powered",
"tot": "str"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1460,
2024-04-27 16:59:38 +00:00
"y": 3480,
"wires": [
[
"4cdca41467e84399"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "a4c6172c4c4737ac",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "reached",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "reached",
2024-04-27 16:59:38 +00:00
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1460,
2024-04-27 16:59:38 +00:00
"y": 3540,
"wires": [
[
"4cdca41467e84399"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "4cdca41467e84399",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "thermostat / status",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "status",
"tot": "str"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1670,
"y": 3360,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1ff0b0648a927b0f",
"f0e65595e5827e60"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "6335a0ba7e4fd02e",
2024-04-27 16:59:38 +00:00
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "trigger",
"property": "field",
2024-04-27 16:59:38 +00:00
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "heat request",
2024-04-27 16:59:38 +00:00
"vt": "str"
},
{
"t": "eq",
"v": "operating mode",
"vt": "str"
},
{
"t": "eq",
"v": "offloading",
"vt": "str"
},
{
"t": "eq",
"v": "delayed aperture",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 4,
"x": 270,
"y": 3360,
2024-04-27 16:59:38 +00:00
"wires": [
[
"cd96635eddc7da1f"
2024-04-27 16:59:38 +00:00
],
[
"cd96635eddc7da1f"
],
[
"cd96635eddc7da1f"
],
[
"cd96635eddc7da1f"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "ffdbc6f74f0bd44a",
"type": "link in",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "thermostat - update - status",
"links": [
"be58e8ac1e1b6eb1"
2024-04-27 16:59:38 +00:00
],
"x": 135,
"y": 3360,
2024-04-27 16:59:38 +00:00
"wires": [
[
"6335a0ba7e4fd02e"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "1ff0b0648a927b0f",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "thermostat - update - status",
"mode": "link",
"links": [
"147aa94543fa77cb"
],
"x": 1835,
"y": 3360,
"wires": []
},
{
"id": "f0e65595e5827e60",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "thermostat / status",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1910,
"y": 3300,
"wires": []
},
{
"id": "54a377fdde983cc9",
2024-04-27 16:59:38 +00:00
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "cycle time",
"property": "th['last pilot']",
2024-04-27 16:59:38 +00:00
"propertyType": "msg",
"rules": [
{
"t": "lt",
"v": "$millis() - ($number(msg.th.'cycle time') * 60000)",
"vt": "jsonata"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 1280,
"y": 3540,
2024-04-27 16:59:38 +00:00
"wires": [
[
"a4c6172c4c4737ac"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "f3335edf661bfc8d",
2024-04-27 16:59:38 +00:00
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "trigger",
"property": "field",
2024-04-27 16:59:38 +00:00
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "offloading",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 270,
"y": 3120,
2024-04-27 16:59:38 +00:00
"wires": [
[
"82489d3f8ae606cf"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "82489d3f8ae606cf",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "is true",
"property": "payload",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "true"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 430,
"y": 3120,
2024-04-27 16:59:38 +00:00
"wires": [
[
"c91c042b412afd7f",
"cbb6f339addc057f",
"772937ddeb3e1b72"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "c91c042b412afd7f",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "set delay",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "delay",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "metrics.thermostat.config['offloading delay']",
"tot": "global"
},
{
"t": "set",
"p": "delay",
"pt": "msg",
"to": "$number(msg.delay) * 60000",
"tot": "jsonata"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 600,
"y": 3180,
2024-04-27 16:59:38 +00:00
"wires": [
[
"8a7f5acb317722bc"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "8a7f5acb317722bc",
"type": "trigger",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "wait delay then false",
"op1": "",
"op2": "false",
"op1type": "nul",
"op2type": "bool",
"duration": "1",
"extend": true,
"overrideDelay": true,
"units": "min",
"reset": "",
"bytopic": "topic",
"topic": "th.bucket",
"outputs": 1,
"x": 820,
"y": 3180,
"wires": [
[
"aa80f7b58c825d6d"
]
]
},
{
"id": "aa80f7b58c825d6d",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "system offloaded",
"property": "metrics.system.mode.offloading",
"propertyType": "global",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "offloaded",
"vt": "str"
},
{
"t": "else"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 1070,
2024-04-27 16:59:38 +00:00
"y": 3180,
"wires": [
[
"c91c042b412afd7f"
],
[
"cbb6f339addc057f"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "cbb6f339addc057f",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "thermostat / offloading",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "offloading",
2024-04-27 16:59:38 +00:00
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1320,
"y": 3120,
2024-04-27 16:59:38 +00:00
"wires": [
[
"3bc159f186c762cd",
"0ea437f46160f0e5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "772937ddeb3e1b72",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "thermostat / offloading count",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "offloading count",
2024-04-27 16:59:38 +00:00
"tot": "str"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "th['offloading count']",
"tot": "msg"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "$number(msg.payload) + 1",
"tot": "jsonata"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 660,
"y": 3060,
2024-04-27 16:59:38 +00:00
"wires": [
[
"3bc159f186c762cd"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "1b11e45ef3e9f02f",
2024-04-27 16:59:38 +00:00
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "thermostat - update - offloading",
2024-04-27 16:59:38 +00:00
"links": [
"be58e8ac1e1b6eb1"
],
"x": 135,
2024-04-27 16:59:38 +00:00
"y": 3120,
"wires": [
[
"f3335edf661bfc8d"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "3bc159f186c762cd",
2024-04-27 16:59:38 +00:00
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "thermostat - update - offloading",
2024-04-27 16:59:38 +00:00
"mode": "link",
"links": [
"147aa94543fa77cb"
],
"x": 1495,
"y": 3060,
2024-04-27 16:59:38 +00:00
"wires": []
},
{
"id": "0ea437f46160f0e5",
2024-04-27 16:59:38 +00:00
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "thermostat / offloading",
2024-04-27 16:59:38 +00:00
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1580,
"y": 3120,
2024-04-27 16:59:38 +00:00
"wires": []
},
{
"id": "e7a80893daf9f5cd",
2024-04-27 16:59:38 +00:00
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "trigger",
"property": "field",
2024-04-27 16:59:38 +00:00
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "operating mode",
"vt": "str"
},
{
"t": "eq",
"v": "confort setpoint",
"vt": "str"
},
{
"t": "eq",
"v": "eco setpoint",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 3,
"x": 270,
"y": 2880,
2024-04-27 16:59:38 +00:00
"wires": [
[
"85d6369076d887c9"
],
[
"85d6369076d887c9"
],
[
"85d6369076d887c9"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "85d6369076d887c9",
2024-04-27 16:59:38 +00:00
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "check operating mode",
"property": "th['operating mode']",
2024-04-27 16:59:38 +00:00
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "confort",
"vt": "str"
},
{
"t": "eq",
"v": "eco",
"vt": "str"
},
{
"t": "eq",
"v": "anti-freeze",
2024-04-27 16:59:38 +00:00
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 3,
"x": 480,
2024-04-27 16:59:38 +00:00
"y": 2880,
"wires": [
[
"1164fe72097e884c"
],
[
"0eb756ee244751a4"
],
[
"3a3af17d95ca520a"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "1164fe72097e884c",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "confort",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "th['confort setpoint']",
"tot": "msg"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 690,
"y": 2820,
2024-04-27 16:59:38 +00:00
"wires": [
[
"70c27df7cb0add1d"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "0eb756ee244751a4",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "eco",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "th['eco setpoint']",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 690,
"y": 2880,
"wires": [
[
"70c27df7cb0add1d"
]
]
},
{
"id": "3a3af17d95ca520a",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "anti-freeze",
"rules": [
2024-04-27 16:59:38 +00:00
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "7",
"tot": "num"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 710,
2024-04-27 16:59:38 +00:00
"y": 2940,
"wires": [
[
"70c27df7cb0add1d"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "70c27df7cb0add1d",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "thermostat / temperature setpoint",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "temperature setpoint",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 980,
"y": 2880,
2024-04-27 16:59:38 +00:00
"wires": [
[
"f9fad454dec37bc7",
"55660ec49f882e13"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "64754ad76b3561d6",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "thermostat - update - temperature setpoint",
"links": [
"be58e8ac1e1b6eb1"
],
"x": 135,
"y": 2880,
"wires": [
[
"e7a80893daf9f5cd"
]
]
},
{
"id": "f9fad454dec37bc7",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "thermostat - update - tempearture setpoint",
"mode": "link",
"links": [
"147aa94543fa77cb"
],
"x": 1195,
"y": 2880,
"wires": []
},
{
"id": "55660ec49f882e13",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "thermostat / temperature setpoint",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1320,
"y": 2820,
"wires": []
},
{
"id": "f1240da189a60ba8",
2024-04-27 16:59:38 +00:00
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "trigger",
"property": "field",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "aperture opened",
2024-04-27 16:59:38 +00:00
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 270,
"y": 2700,
2024-04-27 16:59:38 +00:00
"wires": [
[
"ecda411603ebcccf"
]
]
},
{
"id": "ecda411603ebcccf",
"type": "delay",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "delay 250 ms",
"pauseType": "delay",
"timeout": "250",
"timeoutUnits": "milliseconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 450,
"y": 2700,
"wires": [
2024-04-27 16:59:38 +00:00
[
"4658e2323b1a287a"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "f3eb2e8c09f67e89",
"type": "trigger",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "wait delay then false, reset on true",
"op1": "",
"op2": "false",
"op1type": "nul",
"op2type": "bool",
"duration": "2",
"extend": false,
"overrideDelay": true,
"units": "min",
"reset": "true",
"bytopic": "topic",
"topic": "th.bucket",
"outputs": 1,
"x": 900,
"y": 2640,
"wires": [
[
"6a726c7db415e700"
]
]
},
{
"id": "f305bda7c25657e5",
"type": "trigger",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "wait delay then true, reset on false",
"op1": "",
"op2": "true",
"op1type": "nul",
"op2type": "bool",
"duration": "2",
"extend": false,
"overrideDelay": true,
"units": "min",
"reset": "false",
"bytopic": "topic",
"topic": "th.bucket",
"outputs": 1,
"x": 900,
"y": 2700,
"wires": [
[
"6a726c7db415e700"
]
]
},
{
"id": "6a726c7db415e700",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "thermostat / delayed aperture",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "delayed aperture",
2024-04-27 16:59:38 +00:00
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1220,
"y": 2700,
2024-04-27 16:59:38 +00:00
"wires": [
[
"92add418b3868c54",
"6893398018de38e9"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "4658e2323b1a287a",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "set delay",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "$boolean(msg.th.'aperture opened')",
"tot": "jsonata"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "delay",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "metrics.thermostat.config['aperture delay']",
"tot": "global"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "delay",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "msg.delay * 60000",
2024-04-27 16:59:38 +00:00
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 640,
"y": 2700,
2024-04-27 16:59:38 +00:00
"wires": [
[
"f3eb2e8c09f67e89",
"f305bda7c25657e5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "37b31a14146e2a3f",
2024-04-27 16:59:38 +00:00
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "thermostat - update - delayed aperture",
2024-04-27 16:59:38 +00:00
"links": [
"be58e8ac1e1b6eb1"
],
"x": 135,
"y": 2700,
2024-04-27 16:59:38 +00:00
"wires": [
[
"f1240da189a60ba8"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "92add418b3868c54",
2024-04-27 16:59:38 +00:00
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "thermostat - update - delayed aperture",
2024-04-27 16:59:38 +00:00
"mode": "link",
"links": [
"147aa94543fa77cb"
],
"x": 1405,
"y": 2700,
2024-04-27 16:59:38 +00:00
"wires": []
},
{
"id": "6893398018de38e9",
2024-04-27 16:59:38 +00:00
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "thermostat / delayed aperture",
2024-04-27 16:59:38 +00:00
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1520,
"y": 2640,
2024-04-27 16:59:38 +00:00
"wires": []
},
{
"id": "266e831763ed3b77",
"type": "link in",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "thermostat - metric - input",
"links": [
"031a6afd8300356a"
2024-04-27 16:59:38 +00:00
],
"x": 135,
"y": 2340,
2024-04-27 16:59:38 +00:00
"wires": [
[
"ed42e96a79df8e09"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "ed42e96a79df8e09",
2024-04-27 16:59:38 +00:00
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "measurement",
"property": "measurement",
2024-04-27 16:59:38 +00:00
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "thermostat",
2024-04-27 16:59:38 +00:00
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 300,
"y": 2340,
2024-04-27 16:59:38 +00:00
"wires": [
[
"7b43ab1cda2d8f3f"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "7b43ab1cda2d8f3f",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "bucket",
"property": "thermostats",
"propertyType": "flow",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "hask",
"v": "bucket",
"vt": "msg"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 490,
"y": 2340,
2024-04-27 16:59:38 +00:00
"wires": [
[
"ff4225d872a9a0d3"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "ff4225d872a9a0d3",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "from global",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "th",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "metrics[msg.bucket]thermostat",
"tot": "global"
},
{
"t": "set",
"p": "th.bucket",
"pt": "msg",
"to": "bucket",
2024-04-27 16:59:38 +00:00
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 2340,
2024-04-27 16:59:38 +00:00
"wires": [
[
"623975efd8e9bbcd",
"be58e8ac1e1b6eb1"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "623975efd8e9bbcd",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "thermostat - metric - input",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 910,
"y": 2280,
"wires": []
},
{
"id": "be58e8ac1e1b6eb1",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "thermostat - update - metric",
"mode": "link",
"links": [
"0998eafda2346961",
"1b11e45ef3e9f02f",
"37b31a14146e2a3f",
"64754ad76b3561d6",
"e50f34cde29f1023",
"ffdbc6f74f0bd44a"
],
"x": 815,
"y": 2340,
"wires": []
},
{
"id": "1ed6b5ff63020d07",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "thermostat / heat request",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "heat request",
"tot": "str"
},
2024-04-27 16:59:38 +00:00
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "msg.th.compute>0",
"tot": "jsonata"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 830,
"y": 2520,
2024-04-27 16:59:38 +00:00
"wires": [
[
"0fb59058d3aa9663",
"5f6fd378f40e4c81"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "69fda60f897db5fd",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "trigger",
"property": "field",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "temperature setpoint",
"vt": "str"
},
{
"t": "eq",
"v": "indoor temperature",
"vt": "str"
},
{
"t": "eq",
"v": "outdoor temperature",
"vt": "str"
},
{
"t": "eq",
"v": "operating mode",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 4,
"x": 270,
"y": 2520,
2024-04-27 16:59:38 +00:00
"wires": [
[
"d75bdce71118a56f"
],
[
"d75bdce71118a56f"
],
[
"d75bdce71118a56f"
],
[
"d75bdce71118a56f"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "d75bdce71118a56f",
"type": "link call",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "",
2024-04-27 16:59:38 +00:00
"links": [
"1452439e0c937126"
2024-04-27 16:59:38 +00:00
],
"linkType": "static",
"timeout": "30",
"x": 520,
"y": 2520,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1ed6b5ff63020d07"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "5f6fd378f40e4c81",
2024-04-27 16:59:38 +00:00
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "thermostat / heat request",
2024-04-27 16:59:38 +00:00
"active": false,
"tosidebar": true,
"console": false,
"tostatus": true,
2024-04-27 16:59:38 +00:00
"complete": "true",
"targetType": "full",
"statusVal": "th.compute",
"statusType": "msg",
"x": 1110,
"y": 2460,
2024-04-27 16:59:38 +00:00
"wires": []
},
{
"id": "0fb59058d3aa9663",
"type": "link out",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "thermostat - update - heat request",
"mode": "link",
"links": [
"147aa94543fa77cb"
2024-04-27 16:59:38 +00:00
],
"x": 1015,
"y": 2520,
"wires": []
2024-04-27 16:59:38 +00:00
},
{
"id": "0998eafda2346961",
"type": "link in",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "thermostat - update - heat request",
"links": [
"be58e8ac1e1b6eb1"
2024-04-27 16:59:38 +00:00
],
"x": 135,
"y": 2520,
2024-04-27 16:59:38 +00:00
"wires": [
[
"69fda60f897db5fd"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "a091b2e84a4e89e6",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6c4b12585b58300e",
"name": "set metric",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "bucket",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "th.bucket",
"tot": "msg"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "measurement",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "thermostat",
"tot": "str"
2024-04-27 16:59:38 +00:00
},
{
"t": "delete",
"p": "th",
"pt": "msg"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 280,
"y": 4020,
2024-04-27 16:59:38 +00:00
"wires": [
[
"34e6817c2f435667",
"9ba0a97276e93540"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "34e6817c2f435667",
2024-04-27 16:59:38 +00:00
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "6c4b12585b58300e",
"name": "thermostat - metric - output",
2024-04-27 16:59:38 +00:00
"mode": "link",
"links": [
"206c1fb4a48067df"
2024-04-27 16:59:38 +00:00
],
"x": 415,
"y": 4020,
2024-04-27 16:59:38 +00:00
"wires": []
},
{
"id": "9ba0a97276e93540",
2024-04-27 16:59:38 +00:00
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "6c4b12585b58300e",
"name": "thermostat - metric - output",
2024-04-27 16:59:38 +00:00
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 520,
"y": 3960,
2024-04-27 16:59:38 +00:00
"wires": []
},
{
"id": "147aa94543fa77cb",
2024-04-27 16:59:38 +00:00
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "6c4b12585b58300e",
"name": "thermostat - update - metric",
2024-04-27 16:59:38 +00:00
"links": [
"0fb59058d3aa9663",
"1ff0b0648a927b0f",
"3bc159f186c762cd",
"502bf87b213069c7",
"92add418b3868c54",
"f9fad454dec37bc7"
2024-04-27 16:59:38 +00:00
],
"x": 135,
"y": 4020,
2024-04-27 16:59:38 +00:00
"wires": [
[
"a091b2e84a4e89e6"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "1452439e0c937126",
"type": "link in",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "7e9cff1699c061ec",
"name": "thermostat - compute heat request",
"links": [],
"x": 135,
"y": 1920,
2024-04-27 16:59:38 +00:00
"wires": [
[
"15d8d0ba06961e4b"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "15d8d0ba06961e4b",
"type": "function",
"z": "80f2ffd4953c67e9",
"g": "7e9cff1699c061ec",
"name": "thermostat compute heat request",
"func": "var txt = '';\nvar souscalcul = ((msg.th['temperature setpoint'] - msg.th['indoor temperature']) * msg.th['indoor coefficient']) + ((msg.th['indoor temperature'] - msg.th['outdoor temperature']) * msg.th['outdoor coefficient']);\nvar calculb = (souscalcul / 100 * msg.th['cycle time']);\nvar calculc = (msg.th['cycle time'] * msg.th['preheat time'] / 100);\ncalculb = calculb.toFixed(1);\ncalculc = calculc.toFixed(1);\n\n// positive result for heat request\nmsg.th.compute = calculb - calculc;\n\nreturn msg;",
"outputs": 1,
"timeout": "",
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 360,
"y": 1920,
"wires": [
[
"4b342483a51b0f93"
]
]
},
{
"id": "4b342483a51b0f93",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "7e9cff1699c061ec",
"name": "thermostat - compute heat request",
"mode": "return",
"links": [],
"x": 575,
"y": 1920,
"wires": []
},
{
"id": "8bbf52c2a83e09ea",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "thermostat - update - outdoor temperature",
"links": [
"031a6afd8300356a"
],
"x": 135,
"y": 4260,
"wires": [
[
"0a9cb3219b03ca53"
]
]
},
{
"id": "0a9cb3219b03ca53",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "trigger",
"property": "path",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "parking/temperature/probe",
"vt": "str"
},
{
"t": "eq",
"v": "jardin/temperature/probe",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 270,
"y": 4260,
2024-04-27 16:59:38 +00:00
"wires": [
[
"85f9e2ad24cb8a5a"
],
[
"85f9e2ad24cb8a5a"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "de7ea9b615e052e6",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "buckets",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "old_payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "payload",
"tot": "msg"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "thermostats",
"tot": "flow"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 680,
"y": 4260,
2024-04-27 16:59:38 +00:00
"wires": [
[
"37844601d21c6184"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "37844601d21c6184",
"type": "split",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "bucket",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "bucket",
"x": 850,
"y": 4260,
"wires": [
[
"e3dc3f877be31d77"
]
]
2024-04-27 16:59:38 +00:00
},
{
"id": "e3dc3f877be31d77",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "set metric",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "measurement",
"pt": "msg",
"to": "thermostat",
"tot": "str"
},
2024-04-27 16:59:38 +00:00
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "outdoor temperature",
2024-04-27 16:59:38 +00:00
"tot": "str"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "old_payload",
"tot": "msg"
},
{
"t": "set",
"p": "repeat",
"pt": "msg",
"to": "true",
"tot": "bool"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1020,
"y": 4260,
2024-04-27 16:59:38 +00:00
"wires": [
[
"6fbdfc1ab44f9754",
"818c3dadf81b379e"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "6fbdfc1ab44f9754",
"type": "link out",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "thermostat - update - outdoor temperature",
"mode": "link",
"links": [
"206c1fb4a48067df"
],
"x": 1155,
"y": 4260,
"wires": []
},
{
"id": "85f9e2ad24cb8a5a",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "ponderation",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "jardin",
"pt": "msg",
"to": "metrics.jardin.temperature.probe",
"tot": "global"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "parking",
"pt": "msg",
"to": "metrics.parking.temperature.probe",
"tot": "global"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "$round(($number(msg.jardin)+$number(msg.parking)*2)/3, 1)",
"tot": "jsonata"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 490,
"y": 4260,
2024-04-27 16:59:38 +00:00
"wires": [
[
"de7ea9b615e052e6"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "3099e4a17fd21410",
"type": "link in",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "thermostat - update - indoor temperature",
2024-04-27 16:59:38 +00:00
"links": [
"031a6afd8300356a"
2024-04-27 16:59:38 +00:00
],
"x": 135,
"y": 4440,
2024-04-27 16:59:38 +00:00
"wires": [
[
"4c169fc26f833802"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "a2b07c98d61de126",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
2024-04-27 16:59:38 +00:00
"name": "set metric",
"rules": [
{
"t": "set",
"p": "measurement",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "thermostat",
"tot": "str"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "indoor temperature",
2024-04-27 16:59:38 +00:00
"tot": "str"
},
{
"t": "set",
"p": "repeat",
"pt": "msg",
"to": "true",
"tot": "bool"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1660,
"y": 4440,
2024-04-27 16:59:38 +00:00
"wires": [
[
"d09ad27d05d54698",
"c3b17da928d7afba"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "d09ad27d05d54698",
2024-04-27 16:59:38 +00:00
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "thermostat - update - indoor temperature",
2024-04-27 16:59:38 +00:00
"mode": "link",
"links": [
"206c1fb4a48067df"
],
"x": 1795,
"y": 4440,
2024-04-27 16:59:38 +00:00
"wires": []
},
{
"id": "4c169fc26f833802",
2024-04-27 16:59:38 +00:00
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "measurement",
"property": "measurement",
2024-04-27 16:59:38 +00:00
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "temperature",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 300,
"y": 4440,
2024-04-27 16:59:38 +00:00
"wires": [
[
"a21c6a2db7aeab09"
]
2024-04-27 16:59:38 +00:00
]
},
{
"id": "a21c6a2db7aeab09",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "buckets",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "old_payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "payload",
"tot": "msg"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "thermostats",
"tot": "flow"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "scene.bucket",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "bucket",
"tot": "msg"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 500,
"y": 4440,
2024-04-27 16:59:38 +00:00
"wires": [
[
"e2c388ba43ec89f0"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "c7d315d762524494",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "exists",
"property": "scene.bucket",
"propertyType": "msg",
"rules": [
2024-04-27 16:59:38 +00:00
{
"t": "eq",
"v": "bucket",
"vt": "msg"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 830,
"y": 4440,
2024-04-27 16:59:38 +00:00
"wires": [
[
"9eb8cf78caf3141d"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "e2c388ba43ec89f0",
"type": "split",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "bucket",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "bucket",
"x": 670,
"y": 4440,
2024-04-27 16:59:38 +00:00
"wires": [
[
"c7d315d762524494"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "9eb8cf78caf3141d",
"type": "link call",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "",
"links": [
"ddd39f991efd9d31"
2024-04-27 16:59:38 +00:00
],
"linkType": "static",
"timeout": "30",
"x": 1030,
"y": 4440,
2024-04-27 16:59:38 +00:00
"wires": [
[
"313fbd5fc01985a5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "313fbd5fc01985a5",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "rsp",
"property": "search.response",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "1",
"vt": "num"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 1230,
"y": 4440,
2024-04-27 16:59:38 +00:00
"wires": [
[
"b7ffd39578f29c8b"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "b7ffd39578f29c8b",
"type": "delay",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "limit 1 msg / s / topic",
"pauseType": "queue",
"timeout": "5",
"timeoutUnits": "seconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": true,
"allowrate": false,
"outputs": 1,
"x": 1440,
"y": 4440,
2024-04-27 16:59:38 +00:00
"wires": [
[
"a2b07c98d61de126"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "5cb2a229a6fec1aa",
"type": "link in",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "thermostat - update - offloading",
"links": [
"031a6afd8300356a"
2024-04-27 16:59:38 +00:00
],
"x": 135,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1c4fbd9e3d313b43"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "1c4fbd9e3d313b43",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "trigger",
"property": "path",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "system/mode/offloading",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 270,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"e78638ee35b8c069"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "2aaf95392a970167",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "mode offloading",
"property": "payload",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "offloaded",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 880,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1dd82f8d7e2ccd52"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "e78638ee35b8c069",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "mode master",
"property": "metrics.system.mode.master",
"propertyType": "global",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "about.automate",
"vt": "global"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 450,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"2cb92368cb319c65"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "2cb92368cb319c65",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "mode automate",
"property": "metrics.system.mode.automate",
"propertyType": "global",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "automatic",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 660,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"2aaf95392a970167"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "1dd82f8d7e2ccd52",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "thermostats",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "thermostats",
"tot": "flow"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "offloading",
"pt": "flow",
"to": "0",
"tot": "num"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "sort",
"pt": "flow",
"to": "[]",
"tot": "json"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1090,
"y": 4620,
"wires": [
[
"4b2f0c80863bf5e7"
]
]
},
{
"id": "4b2f0c80863bf5e7",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "split thermostats",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "bucket",
"x": 1300,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"d237415ac7c1b47b"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "91ee9f04019a9999",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "load thermostat",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "th",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "metrics[msg.payload.bucket]thermostat",
"tot": "global"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "th.bucket",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "payload.bucket",
"tot": "msg"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2900,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"53f044d01f2d18b2"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "53f044d01f2d18b2",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "state offloading",
"property": "th.offloading",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "false"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 3120,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"db3681610a5d90d9"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "2df7aa160cbf3a71",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "set metric",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "bucket",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "th.bucket",
"tot": "msg"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "measurement",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "thermostat",
2024-04-27 16:59:38 +00:00
"tot": "str"
},
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading",
"tot": "str"
},
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "true",
"tot": "bool"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "tmp",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "offloading",
"tot": "flow"
},
2024-04-27 16:59:38 +00:00
{
"t": "set",
"p": "offloading",
"pt": "flow",
"to": "$number(msg.tmp) + 1",
"tot": "jsonata"
2024-04-27 16:59:38 +00:00
},
{
"t": "delete",
"p": "parts",
"pt": "msg"
2024-04-27 16:59:38 +00:00
},
{
"t": "delete",
"p": "th",
"pt": "msg"
},
{
"t": "delete",
"p": "tmp",
"pt": "msg"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 3500,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"7869c56dce3123ed",
"3b539d9347f6bb28"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "db3681610a5d90d9",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "state pilot",
"property": "th.pilot",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "true"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 3320,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"2df7aa160cbf3a71"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "7869c56dce3123ed",
2024-04-27 16:59:38 +00:00
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "thermostat - update - offloading",
2024-04-27 16:59:38 +00:00
"mode": "link",
"links": [
"206c1fb4a48067df"
2024-04-27 16:59:38 +00:00
],
"x": 3635,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": []
},
{
"id": "ea0c6cadf1d594c3",
2024-04-27 16:59:38 +00:00
"type": "delay",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
2024-04-27 16:59:38 +00:00
"name": "delay 50 ms",
"pauseType": "delay",
"timeout": "50",
"timeoutUnits": "milliseconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 2530,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"285a0091abda1f58"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "285a0091abda1f58",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "limit",
"property": "offloading",
"propertyType": "flow",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "lt",
"v": "2",
"vt": "num"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "true",
2024-04-27 16:59:38 +00:00
"repair": false,
"outputs": 1,
"x": 2710,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"91ee9f04019a9999"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "96e92d4bad3792d3",
2024-04-27 16:59:38 +00:00
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "",
2024-04-27 16:59:38 +00:00
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "",
"x": 2350,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"ea0c6cadf1d594c3"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "3de9c88ac7ce9a77",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "sort offloading count",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "sort",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "sort",
"tot": "flow"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "$sort(msg.sort, function($l, $r) {\t $l.nb > $r.nb\t})",
"tot": "jsonata"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2140,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"96e92d4bad3792d3"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "6e120320180e5cfd",
"type": "join",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "",
"mode": "auto",
"build": "object",
"property": "payload",
"propertyType": "msg",
"key": "topic",
"joiner": "\\n",
"joinerType": "str",
"accumulate": true,
"timeout": "",
"count": "",
"reduceRight": false,
"reduceExp": "",
"reduceInit": "",
"reduceInitType": "",
"reduceFixup": "",
"x": 1730,
"y": 4620,
"wires": [
[
"808426e9258cd024"
]
]
2024-04-27 16:59:38 +00:00
},
{
"id": "d237415ac7c1b47b",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "get offloading count",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "tmp",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "metrics[msg.bucket]thermostat['offloading count']",
2024-04-27 16:59:38 +00:00
"tot": "global"
},
{
"t": "set",
"p": "sort[msg.parts.index]",
"pt": "flow",
"to": "{\t \"bucket\":msg.bucket,\t \"nb\":msg.tmp\t }",
2024-04-27 16:59:38 +00:00
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1530,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"6e120320180e5cfd"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "808426e9258cd024",
"type": "delay",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "delay 50 ms",
"pauseType": "delay",
"timeout": "50",
"timeoutUnits": "milliseconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 1910,
"y": 4620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"3de9c88ac7ce9a77"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "659f9752db0967bc",
"type": "ui-slider",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "indoor temperature",
"label": "Température intèrieur",
"tooltip": "",
"order": 2,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "indoor temperature",
"topicType": "str",
"thumbLabel": true,
"min": 0,
"max": "30",
"step": 1,
"className": "",
"x": 870,
"y": 6120,
2024-04-27 16:59:38 +00:00
"wires": [
[
"d60c017a8962d3f8"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "9caafb8c1719d275",
"type": "ui-slider",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "outdoor temperature",
"label": "Température extèrieur",
"tooltip": "",
"order": 4,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "outdoor temperature",
"topicType": "str",
"thumbLabel": true,
"min": 0,
"max": "30",
"step": 1,
"className": "",
"x": 880,
"y": 6240,
"wires": [
[
"d60c017a8962d3f8"
]
]
2024-04-27 16:59:38 +00:00
},
{
"id": "515b0c184c8a3628",
"type": "ui-slider",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "temperature setpoint",
"label": "Température consigne",
"tooltip": "",
"order": 1,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "temperature setpoint",
"topicType": "str",
"thumbLabel": true,
"min": 0,
"max": "30",
"step": 1,
"className": "",
"x": 880,
"y": 6060,
2024-04-27 16:59:38 +00:00
"wires": [
[
"d60c017a8962d3f8"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "13697bbd73295b46",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "indoor coefficient",
"label": "Coefficient intèrieur",
"tooltip": "",
"order": 3,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "indoor coefficient",
"topicType": "str",
"thumbLabel": true,
"min": "1",
"max": "200",
"step": 1,
"className": "",
"x": 870,
"y": 6180,
"wires": [
[
"d60c017a8962d3f8"
]
]
},
{
"id": "c6fdc57a80266f04",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "preheat time",
"label": "Temps de chauffe",
"tooltip": "",
"order": 7,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "preheat time",
"topicType": "str",
"thumbLabel": true,
"min": "5",
"max": "60",
"step": "5",
"className": "",
"x": 850,
"y": 6420,
"wires": [
[
"d60c017a8962d3f8"
]
]
},
{
"id": "b7bc73260cea8570",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "cycle time",
"label": "Temps de cycle",
"tooltip": "",
"order": 6,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "cycle time",
"topicType": "str",
"thumbLabel": true,
"min": "5",
"max": "90",
"step": "5",
"className": "",
"x": 840,
"y": 6360,
"wires": [
[
"d60c017a8962d3f8"
]
]
},
{
"id": "d60c017a8962d3f8",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "field",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "th",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "thermostattest",
"tot": "flow"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "th[msg.topic]",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "payload",
"tot": "msg"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "thermostattest",
"pt": "flow",
"to": "th",
2024-04-27 16:59:38 +00:00
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1090,
"y": 6060,
2024-04-27 16:59:38 +00:00
"wires": [
[
"6e4f87c323cc4659"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "dc37631fe73fce2a",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "reset",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "th",
"pt": "msg",
"to": "{\t 'indoor temperature':20,\t 'outdoor temperature':20,\t 'temperature setpoint':20,\t 'indoor coefficient':5,\t 'outdoor coefficient':5,\t 'preheat time':10,\t 'cycle time':30\t }",
"tot": "jsonata"
},
{
"t": "set",
"p": "thermostattest",
"pt": "flow",
"to": "th",
"tot": "msg"
}
2024-04-27 16:59:38 +00:00
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 330,
"y": 6000,
2024-04-27 16:59:38 +00:00
"wires": [
[
"67e91e753d3708e2",
"6e4f87c323cc4659"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "c932311ec07112b5",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['indoor temperature']",
"tot": "flow"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6120,
2024-04-27 16:59:38 +00:00
"wires": [
[
"659f9752db0967bc"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "67e91e753d3708e2",
2024-04-27 16:59:38 +00:00
"type": "delay",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "100 ms",
"pauseType": "delay",
"timeout": "100",
"timeoutUnits": "milliseconds",
2024-04-27 16:59:38 +00:00
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
2024-04-27 16:59:38 +00:00
"allowrate": false,
"outputs": 1,
"x": 500,
"y": 6060,
2024-04-27 16:59:38 +00:00
"wires": [
[
"c932311ec07112b5",
"f974a627497b4b7d",
"f81152d8df61c845",
"bc4771242d5d3bd8",
"135b7546018ecfba",
"6bf593bd1612dbde",
"64405bce10cccde1"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "a86e51fee3e3458d",
2024-04-27 16:59:38 +00:00
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "thermostat - ui - test",
"links": [],
2024-04-27 16:59:38 +00:00
"x": 135,
"y": 6000,
2024-04-27 16:59:38 +00:00
"wires": [
[
"dc37631fe73fce2a"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "f974a627497b4b7d",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['outdoor temperature']",
"tot": "flow"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6240,
2024-04-27 16:59:38 +00:00
"wires": [
[
"9caafb8c1719d275"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "809635d5f2efc402",
"type": "ui-button",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "reset",
"label": "RAZ",
"order": 8,
"width": "6",
"height": "1",
"tooltip": "",
"color": "",
"bgcolor": "",
"className": "",
"icon": "",
"iconPosition": "left",
"payload": "",
"payloadType": "str",
"topic": "topic",
"topicType": "msg",
"x": 170,
"y": 6060,
2024-04-27 16:59:38 +00:00
"wires": [
[
"dc37631fe73fce2a"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "c9291360c0f0b490",
"type": "ui-text",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"order": 9,
"width": "6",
"height": "1",
"name": "calcul",
"label": "Résultat",
"format": "{{msg.payload}}",
"layout": "row-spread",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 1770,
"y": 6000,
"wires": []
2024-04-27 16:59:38 +00:00
},
{
"id": "f10733a435dc7390",
"type": "ui-slider",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "outdoor coefficient",
"label": "Coefficient extèrieur",
"tooltip": "",
"order": 5,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "outdoor coefficient",
"topicType": "str",
"thumbLabel": true,
"min": "1",
"max": "200",
"step": 1,
"className": "",
"x": 870,
"y": 6300,
2024-04-27 16:59:38 +00:00
"wires": [
[
"d60c017a8962d3f8"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "f81152d8df61c845",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['temperature setpoint']",
2024-04-27 16:59:38 +00:00
"tot": "flow"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6060,
2024-04-27 16:59:38 +00:00
"wires": [
[
"515b0c184c8a3628"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "bc4771242d5d3bd8",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['indoor coefficient']",
"tot": "flow"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6180,
2024-04-27 16:59:38 +00:00
"wires": [
[
"13697bbd73295b46"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "135b7546018ecfba",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "thermostattest['outdoor coefficient']",
"tot": "flow"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6300,
2024-04-27 16:59:38 +00:00
"wires": [
[
"f10733a435dc7390"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "6bf593bd1612dbde",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['preheat time']",
"tot": "flow"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6420,
2024-04-27 16:59:38 +00:00
"wires": [
[
"c6fdc57a80266f04"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "64405bce10cccde1",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['cycle time']",
2024-04-27 16:59:38 +00:00
"tot": "flow"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6360,
2024-04-27 16:59:38 +00:00
"wires": [
[
"b7bc73260cea8570"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "bf5b9cb6fe9e3550",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "payload",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "th.compute",
"tot": "msg"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1600,
"y": 6000,
2024-04-27 16:59:38 +00:00
"wires": [
[
"c9291360c0f0b490"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "6e4f87c323cc4659",
"type": "link call",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "",
2024-04-27 16:59:38 +00:00
"links": [
"1452439e0c937126"
2024-04-27 16:59:38 +00:00
],
"linkType": "static",
"timeout": "30",
"x": 1340,
"y": 6000,
"wires": [
[
"bf5b9cb6fe9e3550"
]
]
2024-04-27 16:59:38 +00:00
},
{
"id": "104783a075f279a3",
"type": "catch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "1338205554153fa8",
"name": "catch error",
"scope": null,
"uncaught": false,
"x": 620,
"y": 60,
2024-04-27 16:59:38 +00:00
"wires": [
[
"225fbec54fe689f8"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "225fbec54fe689f8",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "1338205554153fa8",
"name": "topic",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "thermostat",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 790,
"y": 60,
"wires": [
[
"efdfaa2b7173a43a"
]
]
},
{
"id": "efdfaa2b7173a43a",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "1338205554153fa8",
"name": "catch error",
"mode": "link",
"links": [
"a52f0e788cd4dca3"
],
"x": 915,
"y": 60,
"wires": []
},
{
"id": "949a8ee5f18f108a",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat - kernel - device - catch",
"links": [
"f1898b7dbc641cd6"
],
"x": 135,
"y": 240,
"wires": [
[
"fae8eb23e8443ee5"
]
]
},
{
"id": "fae8eb23e8443ee5",
2024-04-27 16:59:38 +00:00
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "field",
"property": "field",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "pilot",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
2024-04-27 16:59:38 +00:00
"repair": false,
"outputs": 1,
"x": 270,
"y": 240,
2024-04-27 16:59:38 +00:00
"wires": [
[
"c2589545c2409827"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "c2589545c2409827",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "measurement",
"property": "measurement",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "thermostat",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 460,
"y": 240,
2024-04-27 16:59:38 +00:00
"wires": [
[
"e875ef56fb60ac9c",
"9ca9625cd3f893dc",
"55333767f9209bca",
"c5b547a57eb368ad",
"c79982618f4e3345",
"958bbeb30de3eada",
"4efebf9bfd65df96",
"96d26c543c5fcf13",
"73c382176ddebc2b",
"a900585cd904a957",
"873ead3b33da82c9",
"e069a71e517cb7ea",
"834fc1d89a1493b3",
"cb222ce1c4c3d7dc",
"ea848cdc88365d9a",
"2039bf8bb21c10d1",
"21d8e3e1da7313ff",
"657fe886d2a3f59f",
"f513b11976d16bb9",
"5f1e10e5657e3138",
"0c919f0ee88983ad",
"780cf693ea55249b",
"fb20d3e29fc3092d",
"2b4f4116011a9ca6",
"07b7d259f0949e49",
"3683e8f63f0dc5aa",
"bae9495793960012"
]
]
},
{
"id": "8f85c87887c020c4",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "flow",
"rules": [
{
"t": "set",
"p": "thermostats[msg.bucket]",
"pt": "flow",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 850,
"y": 240,
"wires": [
[]
2024-04-27 16:59:38 +00:00
]
},
{
"id": "55333767f9209bca",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / confort setpoint / number / 21",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "confort setpoint",
"tot": "str"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "format",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "21",
"tot": "num"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 360,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "c5b547a57eb368ad",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / eco setpoint / number / 19",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "eco setpoint",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "19",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 750,
"y": 420,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "958bbeb30de3eada",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / operating mode / text / eco",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "operating mode",
"tot": "str"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "eco",
"tot": "str"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 540,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "9ca9625cd3f893dc",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / actif / boolean / true",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "actif",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "boolean",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 300,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "4efebf9bfd65df96",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture opened / boolean / false",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture opened",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "boolean",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 770,
"y": 600,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "96d26c543c5fcf13",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / delayed aperture / boolean / false",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "delayed aperture",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "boolean",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 780,
"y": 660,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "5f1e10e5657e3138",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / offloading power / number / 500",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading power",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "500",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 770,
"y": 1380,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "2039bf8bb21c10d1",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / indoor coefficient / number / 50",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "indoor coefficient",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "50",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 770,
"y": 1140,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "21d8e3e1da7313ff",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / outdoor coefficient / number / 5",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "outdoor coefficient",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "5",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 770,
"y": 1200,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "657fe886d2a3f59f",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / cycle time / number / 60",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "cycle time",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "60",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 750,
"y": 1260,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "f513b11976d16bb9",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / preheat time / number / 15",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "preheat time",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "15",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 750,
"y": 1320,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "73c382176ddebc2b",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / outdoor temperature / number / 20",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "outdoor temperature",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "20",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 780,
"y": 720,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "a900585cd904a957",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / indoor temperature / number / 21",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "indoor temperature",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "21",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 770,
"y": 780,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "873ead3b33da82c9",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / heat request / boolean / false",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "heat request",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "boolean",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 840,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "e069a71e517cb7ea",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / status / text / stopped",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "status",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "stopped",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 740,
"y": 900,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "834fc1d89a1493b3",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / offloading / boolean / false",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "boolean",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 750,
"y": 960,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "c79982618f4e3345",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / temperature setpoint / number / 19",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "temperature setpoint",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "19",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 780,
"y": 480,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "cb222ce1c4c3d7dc",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / last pilot / number / 0",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "last pilot",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "0",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 740,
"y": 1020,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "3006243d30270236",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat - device",
"mode": "link",
"links": [
"bfa594bf1f876c92"
],
"x": 1195,
"y": 240,
"wires": []
},
{
"id": "1707bc7a4bb0daa5",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "set metric",
"rules": [
{
"t": "delete",
"p": "path",
"pt": "msg"
},
{
"t": "delete",
"p": "protocol",
"pt": "msg"
},
{
"t": "delete",
"p": "mdoel",
"pt": "msg"
},
{
"t": "delete",
"p": "id",
"pt": "msg"
},
{
"t": "delete",
"p": "option",
"pt": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1060,
"y": 240,
"wires": [
[
"3006243d30270236"
]
]
},
{
"id": "ea848cdc88365d9a",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / offloading count / number / 0",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading count",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "0",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 1080,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "e875ef56fb60ac9c",
"type": "delay",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "delay 50 ms",
"pauseType": "delay",
"timeout": "50",
"timeoutUnits": "milliseconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 670,
"y": 240,
2024-04-27 16:59:38 +00:00
"wires": [
[
"8f85c87887c020c4"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "0c919f0ee88983ad",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture 1 / text / ",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture 1",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 1440,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "780cf693ea55249b",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture 2 / text / ",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture 2",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 1500,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "fb20d3e29fc3092d",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture 3 / text / ",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture 3",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 1560,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "2b4f4116011a9ca6",
"type": "change",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture 4 / text / ",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture 4",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 1620,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "07b7d259f0949e49",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture 5 / text / ",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "aperture 5",
"tot": "str"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "format",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "text",
"tot": "str"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "",
"tot": "str"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 1680,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "a895f0ea053086fe",
"type": "comment",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "scan device registration to find xxx / thermostat / pilot",
"info": "",
"x": 310,
"y": 300,
"wires": []
},
{
"id": "3683e8f63f0dc5aa",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture delay / number / 5",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "aperture delay",
"tot": "str"
2024-04-27 16:59:38 +00:00
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "5",
"tot": "num"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 1740,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "bae9495793960012",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / offloading delay / number / 30",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "field",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "offloading delay",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "30",
"tot": "num"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 1800,
2024-04-27 16:59:38 +00:00
"wires": [
[
"1707bc7a4bb0daa5"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "7837b5fcc1432bfa",
"type": "link in",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "thermostat - update - aperture opened",
"links": [
"031a6afd8300356a"
],
"x": 135,
"y": 4800,
2024-04-27 16:59:38 +00:00
"wires": [
[
"3905527e91730097"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "6632e88ee0633e4c",
"type": "link out",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "thermostat - update - aperture opened",
"mode": "link",
"links": [
"206c1fb4a48067df"
],
"x": 2035,
"y": 4800,
"wires": []
2024-04-27 16:59:38 +00:00
},
{
"id": "01c20d4c1e5db317",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "get thermostat from metrics",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "th",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "payload.thermostat",
"tot": "msg"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1320,
"y": 4800,
2024-04-27 16:59:38 +00:00
"wires": [
[
"87b35783671bc785"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "3905527e91730097",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "measurement",
"property": "measurement",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "aperture",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 300,
"y": 4800,
2024-04-27 16:59:38 +00:00
"wires": [
[
"c8d72dec2ba2b842"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "87b35783671bc785",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "trigger",
"property": "path",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "eq",
"v": "th['aperture 1']",
"vt": "msg"
},
{
"t": "eq",
"v": "th['aperture 2']",
"vt": "msg"
},
{
"t": "eq",
"v": "th['aperture 3']",
"vt": "msg"
},
{
"t": "eq",
"v": "th['aperture 4']",
"vt": "msg"
},
{
"t": "eq",
"v": "th['aperture 5']",
"vt": "msg"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 5,
"x": 1550,
"y": 4800,
2024-04-27 16:59:38 +00:00
"wires": [
[
"748b1f355c0e00f8"
],
[
"748b1f355c0e00f8"
],
[
"748b1f355c0e00f8"
],
[
"748b1f355c0e00f8"
],
[
"748b1f355c0e00f8"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "c52bde31f64b30dd",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "thermostat exists",
"property": "payload",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "hask",
"v": "thermostat",
"vt": "str"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 1050,
"y": 4800,
2024-04-27 16:59:38 +00:00
"wires": [
[
"01c20d4c1e5db317"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "748b1f355c0e00f8",
"type": "switch",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "compare",
"property": "old_payload",
"propertyType": "msg",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "neq",
"v": "th['aperture opened']",
"vt": "msg"
2024-04-27 16:59:38 +00:00
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 1720,
"y": 4800,
2024-04-27 16:59:38 +00:00
"wires": [
[
"86cb7c12e7bccf56"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "86cb7c12e7bccf56",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "set metric",
2024-04-27 16:59:38 +00:00
"rules": [
2024-05-13 18:54:03 +00:00
{
"t": "set",
"p": "bucket",
"pt": "msg",
"to": "th.bucket",
"tot": "msg"
},
{
"t": "set",
"p": "measurement",
"pt": "msg",
"to": "thermostat",
"tot": "str"
},
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture opened",
"tot": "str"
},
2024-04-27 16:59:38 +00:00
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "old_payload",
"tot": "msg"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1900,
"y": 4800,
2024-04-27 16:59:38 +00:00
"wires": [
[
"6632e88ee0633e4c",
"a91a6950282e40e0"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "c8d72dec2ba2b842",
2024-04-27 16:59:38 +00:00
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "get thermostats from metrics",
2024-04-27 16:59:38 +00:00
"rules": [
{
"t": "set",
"p": "old_payload",
2024-04-27 16:59:38 +00:00
"pt": "msg",
"to": "payload",
2024-04-27 16:59:38 +00:00
"tot": "msg"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "metrics",
"tot": "global"
2024-04-27 16:59:38 +00:00
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 560,
"y": 4800,
2024-04-27 16:59:38 +00:00
"wires": [
[
"7cc8434ffb22fe29"
2024-04-27 16:59:38 +00:00
]
]
},
{
"id": "a91a6950282e40e0",
"type": "debug",
2024-04-27 16:59:38 +00:00
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "thermostat - update - aperture opened",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 2170,
"y": 4740,
"wires": []
2024-04-29 22:28:34 +00:00
},
{
"id": "7cc8434ffb22fe29",
"type": "split",
2024-04-29 22:28:34 +00:00
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "split by buckets",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "",
"x": 820,
"y": 4800,
2024-04-29 22:28:34 +00:00
"wires": [
[
"c52bde31f64b30dd"
2024-04-29 22:28:34 +00:00
]
]
},
{
"id": "3b539d9347f6bb28",
"type": "debug",
2024-04-29 22:28:34 +00:00
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "thermostat - update - offloading",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 3750,
"y": 4560,
"wires": []
2024-04-29 22:28:34 +00:00
},
{
"id": "c3b17da928d7afba",
"type": "debug",
2024-04-29 22:28:34 +00:00
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "thermostat - update - indoor temperature",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1940,
"y": 4380,
"wires": []
},
{
"id": "818c3dadf81b379e",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "thermostat - update - outdoor temperature",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1290,
"y": 4200,
2024-04-29 22:28:34 +00:00
"wires": []
},
{
"id": "f6875e4f57839bc7",
"type": "comment",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "à modifier",
"info": "",
"x": 280,
"y": 4560,
"wires": []
2024-07-21 19:50:04 +00:00
},
{
"id": "048bc1e501b0f9f2",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "confort",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "confort",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2410,
"y": 5120,
"wires": [
[
"0728c8c3564e6e93"
]
]
},
{
"id": "3b8d8924bdb03f80",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "eco",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "eco",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2410,
"y": 5060,
"wires": [
[
"0728c8c3564e6e93"
]
]
},
{
"id": "3e40fc1c77ed372a",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "mode heating",
"property": "metrics.system.mode.heating",
"propertyType": "global",
"rules": [
{
"t": "eq",
"v": "off",
"vt": "str"
},
{
"t": "eq",
"v": "anti-freeze",
"vt": "str"
},
{
"t": "eq",
"v": "automatic",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 3,
"x": 1780,
"y": 5000,
"wires": [
[
"b461040a6c998b61"
],
[
"3c808f997ae66a1c"
],
[
"069ab711c0c089a6"
]
]
},
{
"id": "b461040a6c998b61",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "off",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "off",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2410,
"y": 4940,
"wires": [
[
"0728c8c3564e6e93"
]
]
},
{
"id": "3c808f997ae66a1c",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "anti-freeze",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "anti-freeze",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2430,
"y": 5000,
"wires": [
[
"0728c8c3564e6e93"
]
]
},
{
"id": "069ab711c0c089a6",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "hour confort",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "0",
"vt": "num"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 2010,
"y": 5060,
"wires": [
[
"3b8d8924bdb03f80"
],
[
"35ea643afefc732d"
]
]
},
{
"id": "c20295d9b0ac3419",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "set metric",
"rules": [
{
"t": "set",
"p": "bucket",
"pt": "msg",
"to": "scene.bucket",
"tot": "msg"
},
{
"t": "set",
"p": "measurement",
"pt": "msg",
"to": "scene.measurement",
"tot": "msg"
},
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "scene.field",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2800,
"y": 5000,
"wires": [
[
"e267a0404a5c5d6c",
"34992e101a5f7e1c"
]
]
},
{
"id": "34992e101a5f7e1c",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "thermostat - update - operating mode",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 3070,
"y": 4940,
"wires": []
},
{
"id": "36eb92fa692e166c",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "rsp",
"property": "routine.response",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "1",
"vt": "num"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 1590,
"y": 5000,
"wires": [
[
"3e40fc1c77ed372a"
]
]
},
{
"id": "d4c1d964e9c56e01",
"type": "link call",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "",
"links": [
"c1a22098f4c6b607"
],
"linkType": "static",
"timeout": "30",
"x": 1410,
"y": 5000,
"wires": [
[
"36eb92fa692e166c"
]
]
},
{
"id": "abd02925c2597211",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "scene thermostat / operating mode / text",
"rules": [
{
"t": "set",
"p": "scene.bucket",
"pt": "msg",
"to": "room",
"tot": "msg"
},
{
"t": "set",
"p": "scene.measurement",
"pt": "msg",
"to": "thermostat",
"tot": "str"
},
{
"t": "set",
"p": "scene.field",
"pt": "msg",
"to": "operating mode",
"tot": "str"
},
{
"t": "set",
"p": "scene.format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "scene.type",
"pt": "msg",
"to": "thermostat",
"tot": "str"
},
{
"t": "set",
"p": "scene.on",
"pt": "msg",
"to": "eco",
"tot": "str"
},
{
"t": "set",
"p": "scene.off",
"pt": "msg",
"to": "off",
"tot": "str"
},
{
"t": "delete",
"p": "room",
"pt": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1120,
"y": 5000,
"wires": [
[
"d4c1d964e9c56e01"
]
]
},
{
"id": "e267a0404a5c5d6c",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "thermostat - update - operating mode",
"mode": "link",
"links": [
"206c1fb4a48067df"
],
"x": 2935,
"y": 5000,
"wires": []
},
{
"id": "758acb218148a1d7",
"type": "comment",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "don not call system/mode/heating as thermostat because of modes off are different",
"info": "",
"x": 1630,
"y": 4940,
"wires": []
},
{
"id": "0728c8c3564e6e93",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "compare",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "neq",
"v": "routine[msg.scene.field]",
"vt": "msg"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 2620,
"y": 5000,
"wires": [
[
"c20295d9b0ac3419"
]
]
},
{
"id": "d1c7f4810b12afe2",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "thermostat - update - operating mode - out",
"links": [
"0857f7c3fc012063",
"2ced5243fb4aa8a7",
"2df681beb21344f6",
"307e1f98694a09a1",
"377374bc3cc49bc5",
"438b7d7c7b096219",
"4a2c85990a2b061e",
"7dc41ad29651ef76",
"9820c6e109f25a2a",
"f8f9a6db99bb33e8"
],
"x": 715,
"y": 5000,
"wires": [
[
"d6ec98126b0438ab"
]
]
},
{
"id": "35ea643afefc732d",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "mode presence",
"property": "metrics.system.mode.presence",
"propertyType": "global",
"rules": [
{
"t": "eq",
"v": "absent",
"vt": "str"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 2220,
"y": 5120,
"wires": [
[
"3b8d8924bdb03f80"
],
[
"048bc1e501b0f9f2"
]
]
},
{
"id": "6764b95646ec77db",
"type": "delay",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "5 s",
"pauseType": "delay",
"timeout": "5",
"timeoutUnits": "seconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 270,
"y": 5000,
"wires": [
[
"45bd2f5743776c20"
]
]
},
{
"id": "45bd2f5743776c20",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "sync",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "sync",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 430,
"y": 5000,
"wires": [
[
"84f1bb54c15f032d"
]
]
},
{
"id": "d6ec98126b0438ab",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "room",
"property": "room",
"propertyType": "msg",
"rules": [
{
"t": "istype",
"v": "string",
"vt": "string"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 850,
"y": 5000,
"wires": [
[
"abd02925c2597211"
]
]
},
{
"id": "84f1bb54c15f032d",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "thermostat - update - operating modee - in",
"mode": "link",
"links": [
"30a4c71f8d02384d",
"3dc0abb4933cf52c",
"628c2e8014a8c40c",
"64765643b13c207f",
"6f4850f14b12df44",
"8f0b1f8de9fbfc9f",
"94744f7b1ec149b3",
"afd97549392e0e45",
"c39d452224c976fc",
"eec0c12c5dac7ac0"
],
"x": 555,
"y": 5000,
"wires": []
},
{
"id": "f05d34dd5ff9746b",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "thermostat - update - operating mode - boot",
"links": [
"25445f5a9b787a0a"
],
"x": 135,
"y": 5000,
"wires": [
[
"6764b95646ec77db"
]
]
2024-04-27 16:59:38 +00:00
}
]