[ { "id": "5354a27f44d76d31", "type": "group", "z": "53fbbbc4f29dea55", "name": "HLT TEMP CONTROLS", "style": { "label": true }, "nodes": [ "3c2d2089173fb786", "413a524bc796db15", "c1f634398a44b355", "9d1d9cd694a85213", "05024575feb8cdd3", "6f1c1408184702ef", "33be77d43280d967", "032c748e5c64894c", "902f1cbb8b1844d4", "25271a56482f17c3", "0c0d08c5dd17942f", "56887d1ff63239b6", "836c7edad4664a45", "30bfd5eeed43e92e", "0c83aad05cda059e", "6c7c64bf3436e71e", "a0744809ca529231", "0fafebc7c299f4cc", "a30d155f773bc0df", "46215a8381502597", "4a5956d111869219", "96e15e010d1f520e", "c97f9d647c40a57f", "bd6931c3237e92be" ], "x": 74, "y": 59, "w": 1302, "h": 322 }, { "id": "3c2d2089173fb786", "type": "link in", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "link in 7", "links": [ "ac45d488c9472366" ], "x": 245, "y": 120, "wires": [ [ "413a524bc796db15", "a0744809ca529231" ] ] }, { "id": "413a524bc796db15", "type": "change", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "set payload to Temperature value", "rules": [ { "t": "move", "p": "payload.DS18B20.Temperature", "pt": "msg", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 450, "y": 120, "wires": [ [ "05024575feb8cdd3", "9d1d9cd694a85213", "c1f634398a44b355", "0fafebc7c299f4cc" ] ] }, { "id": "c1f634398a44b355", "type": "ui_template", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "group": "86e793b3a9ac3722", "name": "HLT", "order": 3, "width": 6, "height": 6, "format": "<div id=\"{{'gauge_'+$id}}\" class=\"g-container\"\n style=\"--gauge-value:0; --container-size:6; --gn-distance:14; --ga-tick-count:11; --ga-subtick-count:22; --g-unit:''°F'\">\n <div id=\"bgr\" class=\"g-body\">\n <div class=\"g-ring\">\n <div class=\"g-rivets\">\n <div class=g-rivet></div>\n <div class=g-rivet></div>\n <div class=g-rivet></div>\n <div class=g-rivet></div>\n </div>\n <div class=\"g-plate\">\n <div class=\"g-ticks\">\n <div class=\"g-tick\" style=\"--ga-tick:1;\"></div>\n <div class=\"g-tick\" style=\"--ga-tick:2;\"></div>\n <div class=\"g-tick\" style=\"--ga-tick:3;\"></div>\n <div class=\"g-tick\" style=\"--ga-tick:4;\"></div>\n <div class=\"g-tick\" style=\"--ga-tick:5;\"></div>\n <div class=\"g-tick\" style=\"--ga-tick:6;\"></div>\n <div class=\"g-tick\" style=\"--ga-tick:7;\"></div>\n <div class=\"g-tick\" style=\"--ga-tick:8;\"></div>\n <div class=\"g-tick\" style=\"--ga-tick:9;\"></div>\n <div class=\"g-tick\" style=\"--ga-tick:10;\"></div>\n <div class=\"g-tick\" style=\"--ga-tick:11;\"></div>\n <div class=\"g-tick\" style=\"--ga-tick:12;\"></div>\n </div>\n <div class=\"g-ticks\">\n <div class=\"g-subtick\" style=\"--ga-tick:2;\"></div>\n <div class=\"g-subtick\" style=\"--ga-tick:4;\"></div>\n <div class=\"g-subtick\" style=\"--ga-tick:6;\"></div>\n <div class=\"g-subtick\" style=\"--ga-tick:8;\"></div>\n <div class=\"g-subtick\" style=\"--ga-tick:10;\"></div>\n <div class=\"g-subtick\" style=\"--ga-tick:12;\"></div>\n <div class=\"g-subtick\" style=\"--ga-tick:14;\"></div>\n <div class=\"g-subtick\" style=\"--ga-tick:16;\"></div>\n <div class=\"g-subtick\" style=\"--ga-tick:18;\"></div>\n <div class=\"g-subtick\" style=\"--ga-tick:20;\"></div>\n <div class=\"g-subtick\" style=\"--ga-tick:22;\"></div>\n\n </div>\n <div class=\"g-nums\">\n <div class=\"g-num\" style=\"--ga-tick:1;\">0</div>\n <div class=\"g-num\" style=\"--ga-tick:2;\">20</div>\n <div class=\"g-num\" style=\"--ga-tick:3;\">40</div>\n <div class=\"g-num\" style=\"--ga-tick:4;\">60</div>\n <div class=\"g-num\" style=\"--ga-tick:5;\">80</div>\n <div class=\"g-num\" style=\"--ga-tick:6;\">100</div>\n <div class=\"g-num\" style=\"--ga-tick:7;\">120</div>\n <div class=\"g-num\" style=\"--ga-tick:8;\">140</div>\n <div class=\"g-num\" style=\"--ga-tick:9;\">160</div>\n <div class=\"g-num\" style=\"--ga-tick:10;\">180</div>\n <div class=\"g-num\" style=\"--ga-tick:11;\">200</div>\n <div class=\"g-num\" style=\"--ga-tick:12;\">220</div>\n\n </div>\n <div class=\"g-label\"> HLT </div>\n <div class=\"g-needle\"></div>\n <div class=\"g-needle-ring\"></div>\n <div id=\"{{'gauge_val_'+$id}}\" class=\"g-val\"></div>\n </div>\n </div>\n </div>\n</div>\n<script>\n (function(scope) {\n let min = 0;\n let max = 220;\n scope.$watch('msg', function(msg) {\n if (msg) {\n // Do something when msg arrives\n const val = msg.payload\n const v = ((val - min) / (max - min)) * 100;\n document.getElementById('gauge_'+scope.$id).style.setProperty('--gauge-value', v);\n document.getElementById('gauge_val_'+scope.$id).innerText = val.toFixed(1);\n }\n \n });\n})(scope);\n</script>", "storeOutMessages": true, "fwdInMessages": false, "resendOnRefresh": true, "templateScope": "local", "className": "", "x": 690, "y": 140, "wires": [ [] ] }, { "id": "9d1d9cd694a85213", "type": "ui_digital_display", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "HLT", "group": "86e793b3a9ac3722", "order": 5, "width": 3, "height": 1, "digits": 5, "decimals": 1, "x": 690, "y": 100, "wires": [] }, { "id": "05024575feb8cdd3", "type": "change", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "", "rules": [ { "t": "set", "p": "HLTambient", "pt": "global", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 720, "y": 180, "wires": [ [ "6f1c1408184702ef" ] ] }, { "id": "6f1c1408184702ef", "type": "switch", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "", "property": "HltTarget", "propertyType": "global", "rules": [ { "t": "lte", "v": "HLTambient", "vt": "global" }, { "t": "else" } ], "checkall": "true", "repair": false, "outputs": 2, "x": 910, "y": 140, "wires": [ [ "33be77d43280d967" ], [ "032c748e5c64894c" ] ] }, { "id": "33be77d43280d967", "type": "change", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "off", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1060, "y": 120, "wires": [ [ "902f1cbb8b1844d4" ] ] }, { "id": "032c748e5c64894c", "type": "change", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "on", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1060, "y": 160, "wires": [ [ "902f1cbb8b1844d4" ] ] }, { "id": "902f1cbb8b1844d4", "type": "change", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "", "rules": [ { "t": "set", "p": "topic", "pt": "msg", "to": "cmnd/HLT/POWER1", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1230, "y": 140, "wires": [ [ "56887d1ff63239b6" ] ] }, { "id": "25271a56482f17c3", "type": "change", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "", "rules": [ { "t": "set", "p": "topic", "pt": "msg", "to": "HltTarget", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 460, "y": 220, "wires": [ [ "0c0d08c5dd17942f" ] ] }, { "id": "0c0d08c5dd17942f", "type": "change", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "HLTTarget", "rules": [ { "t": "set", "p": "HltTarget", "pt": "global", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 610, "y": 260, "wires": [ [ "c97f9d647c40a57f" ] ] }, { "id": "56887d1ff63239b6", "type": "link out", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "HLTOUT", "mode": "link", "links": [ "49bf6457f083306b" ], "x": 1335, "y": 140, "wires": [] }, { "id": "836c7edad4664a45", "type": "ui_dropdown", "z": "53fbbbc4f29dea55", "d": true, "g": "5354a27f44d76d31", "name": "", "label": "", "tooltip": "", "place": "Select option", "group": "86e793b3a9ac3722", "order": 7, "width": 3, "height": 1, "passthru": true, "multiple": false, "options": [ { "label": "BOIL", "value": "215", "type": "str" }, { "label": "SANI", "value": "190", "type": "str" }, { "label": "OFF", "value": "1", "type": "str" }, { "label": "STRIKE", "value": "170", "type": "str" } ], "payload": "", "topic": "target_temperature", "topicType": "str", "className": "", "x": 300, "y": 220, "wires": [ [ "25271a56482f17c3", "30bfd5eeed43e92e" ] ] }, { "id": "30bfd5eeed43e92e", "type": "ui_digital_display", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "HLT TARGET", "group": "86e793b3a9ac3722", "order": 8, "width": 3, "height": 1, "digits": 5, "decimals": 1, "x": 520, "y": 300, "wires": [] }, { "id": "0c83aad05cda059e", "type": "ui_gauge", "z": "53fbbbc4f29dea55", "d": true, "g": "5354a27f44d76d31", "name": "FERM1", "group": "25712aa525433650", "order": 8, "width": 6, "height": 6, "gtype": "gage", "title": "FERM1 PRESSURE", "label": "PSI", "format": "{{msg.payload.psi}}", "min": 0, "max": "35", "colors": [ "#0c00b3", "#0c00b3", "#0c00b3" ], "seg1": "", "seg2": "", "diff": false, "className": "", "x": 980, "y": 260, "wires": [] }, { "id": "6c7c64bf3436e71e", "type": "link in", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "FERM1PRESS", "links": [], "x": 815, "y": 260, "wires": [ [ "0c83aad05cda059e" ] ] }, { "id": "a0744809ca529231", "type": "debug", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "debug 3", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 360, "y": 160, "wires": [] }, { "id": "0fafebc7c299f4cc", "type": "debug", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "debug 5", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 700, "y": 220, "wires": [] }, { "id": "a30d155f773bc0df", "type": "ui_slider", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "HltTarget", "label": "slider", "tooltip": "", "group": "86e793b3a9ac3722", "order": 8, "width": 0, "height": 0, "passthru": true, "outs": "end", "topic": "HltTarget", "topicType": "msg", "min": 0, "max": "200", "step": 1, "className": "", "x": 200, "y": 260, "wires": [ [ "30bfd5eeed43e92e", "4a5956d111869219", "bd6931c3237e92be" ] ] }, { "id": "46215a8381502597", "type": "link out", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "link out 1", "mode": "link", "links": [ "49bf6457f083306b" ], "x": 765, "y": 340, "wires": [] }, { "id": "4a5956d111869219", "type": "debug", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "debug 18", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 900, "y": 320, "wires": [] }, { "id": "96e15e010d1f520e", "type": "link in", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "HltTarget", "links": [], "x": 115, "y": 140, "wires": [ [ "a30d155f773bc0df" ] ] }, { "id": "c97f9d647c40a57f", "type": "link out", "z": "53fbbbc4f29dea55", "d": true, "g": "5354a27f44d76d31", "name": "hltout", "mode": "link", "links": [ "9c88450afc644e8b" ], "x": 745, "y": 260, "wires": [] }, { "id": "bd6931c3237e92be", "type": "rbe", "z": "53fbbbc4f29dea55", "g": "5354a27f44d76d31", "name": "", "func": "rbe", "gap": "", "start": "", "inout": "out", "septopics": false, "property": "payload", "topi": "topic", "x": 270, "y": 340, "wires": [ [ "25271a56482f17c3", "a30d155f773bc0df" ] ] }, { "id": "86e793b3a9ac3722", "type": "ui_group", "name": "HLT", "tab": "a74ffe3d.4eb73", "order": 9, "disp": true, "width": "6", "collapse": false, "className": "" }, { "id": "25712aa525433650", "type": "ui_group", "name": "FERMENTER1", "tab": "a74ffe3d.4eb73", "order": 13, "disp": true, "width": "6", "collapse": false, "className": "" }, { "id": "a74ffe3d.4eb73", "type": "ui_tab", "name": "Brewery", "icon": "dashboard", "order": 1, "disabled": false, "hidden": false } ]