Ah. OK.
Btw: I'm using the lib from HanSolo and copied steelseries-min.js tween-min.js to 'public/myjs' only.
This is my flow:
[
{
"id": "848165f3e7e60a60",
"type": "tab",
"label": "All Rooms",
"disabled": false,
"info": "",
"env": []
},
{
"id": "8f1aceee20a72425",
"type": "ui_base",
"theme": {
"name": "theme-light",
"lightTheme": {
"default": "#0094CE",
"baseColor": "#0094CE",
"baseFont": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif",
"edited": true,
"reset": false
},
"darkTheme": {
"default": "#097479",
"baseColor": "#097479",
"baseFont": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif",
"edited": false
},
"customTheme": {
"name": "Untitled Theme 1",
"default": "#4B7930",
"baseColor": "#4B7930",
"baseFont": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif"
},
"themeState": {
"base-color": {
"default": "#0094CE",
"value": "#0094CE",
"edited": false
},
"page-titlebar-backgroundColor": {
"value": "#0094CE",
"edited": false
},
"page-backgroundColor": {
"value": "#fafafa",
"edited": false
},
"page-sidebar-backgroundColor": {
"value": "#ffffff",
"edited": false
},
"group-textColor": {
"value": "#1bbfff",
"edited": false
},
"group-borderColor": {
"value": "#ffffff",
"edited": false
},
"group-backgroundColor": {
"value": "#ffffff",
"edited": false
},
"widget-textColor": {
"value": "#111111",
"edited": false
},
"widget-backgroundColor": {
"value": "#0094ce",
"edited": false
},
"widget-borderColor": {
"value": "#ffffff",
"edited": false
},
"base-font": {
"value": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif"
}
},
"angularTheme": {
"primary": "indigo",
"accents": "blue",
"warn": "red",
"background": "grey",
"palette": "light"
}
},
"site": {
"name": "Node-RED Dashboard",
"hideToolbar": "false",
"allowSwipe": "false",
"lockMenu": "false",
"allowTempTheme": "true",
"dateFormat": "DD.MM.YYYY",
"sizes": {
"sx": 48,
"sy": 48,
"gx": 6,
"gy": 6,
"cx": 6,
"cy": 6,
"px": 0,
"py": 0
}
}
},
{
"id": "661ba02aa4ef352d",
"type": "ui_tab",
"name": "Room",
"icon": "dashboard",
"order": 1,
"disabled": false,
"hidden": false
},
{
"id": "4672b01ae9a5a9ef",
"type": "ui_group",
"name": "Standard",
"tab": "661ba02aa4ef352d",
"order": 1,
"disp": true,
"width": "6",
"collapse": false,
"className": ""
},
{
"id": "29dc737ca2a831c5",
"type": "ui_tab",
"name": "Steel Room",
"icon": "dashboard",
"order": 2,
"disabled": false,
"hidden": false
},
{
"id": "527d1bd2a034e73d",
"type": "ui_group",
"name": "Standard",
"tab": "29dc737ca2a831c5",
"order": 1,
"disp": true,
"width": "6",
"collapse": false,
"className": ""
},
{
"id": "a356414fa0016e7b",
"type": "inject",
"z": "848165f3e7e60a60",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "20",
"payloadType": "num",
"x": 130,
"y": 80,
"wires": [
[
"d4fb416fcf1f4c98",
"32796a3e8a7e832b"
]
]
},
{
"id": "32796a3e8a7e832b",
"type": "ui_template",
"z": "848165f3e7e60a60",
"group": "527d1bd2a034e73d",
"name": "Room 1",
"order": 2,
"width": "0",
"height": "0",
"format": "<script src=\"/myjs/tween-min.js\"></script>\n<script src=\"/myjs/steelseries-min.js\"></script>\n\n<script>\n var radial4;\n \n (function(scope){ \n scope.$watch('msg', function(msg) {\n if (typeof(msg.payload) != \"undefined\") radial4.setValueAnimated(msg.payload);\n if (typeof(msg.payload) != \"undefined\") radial4.setThreshold(msg.payload);\n if (typeof(msg.odo) != \"undefined\")radial4.setOdoValue(msg.odo); \n if (typeof(msg.userLed) != \"undefined\") radial4.setUserLedOnOff(msg.userLed); \n if (typeof(msg.trend) != \"undefined\")\n {\n if (msg.trend==1) radial4.setTrend(steelseries.TrendState.UP);\n if (msg.trend==0) radial4.setTrend(steelseries.TrendState.STEADY);\n if (msg.trend==-1) radial4.setTrend(steelseries.TrendState.DOWN);\n if (msg.trend==-2) radial4.setTrend(steelseries.TrendState.OFF);\n }\n });\n })(scope);\n\n// var sections = [steelseries.Section(0, 25, 'rgba(0, 0, 220, 0.3)'),\n// steelseries.Section(25, 50, 'rgba(0, 220, 0, 0.3)'),\n// steelseries.Section(50, 75, 'rgba(220, 220, 0, 0.3)') ],\n var sections = [steelseries.Section(0, 18, 'rgba(0, 0, 220, 0.3)'),\n steelseries.Section(18, 22, 'rgba(0, 220, 0, 0.3)'),\n steelseries.Section(22, 40, 'rgba(220, 220, 0, 0.3)') ],\n // Define one area\n areas = [steelseries.Section(18, 25, 'rgba(220, 0, 0, 0.3)')],\n\n radial4 = new steelseries.Radial('canvasRadial4', {\n gaugeType: steelseries.GaugeType.TYPE5,\n minValue:10,\n maxValue:40,\n size: 292,\n section: sections,\n area: areas,\n titleString: \"Room 1\",\n unitString: \"°C\",\n// threshold: 20,\n thresholdRising: false,\n userLedVisible: false,\n useOdometer: false,\n lcdDecimals:1,\n lcdVisible: true,\n trendVisible: true\n });\n \n radial4.setFrameDesign(steelseries.FrameDesign.BLACK_METAL);\n radial4.setValueAnimated(0);\n// radial4.setThreshold(20);\n radial4.blinkUserLed(0);\n// radial4.setOdoValue(0);\n\n\n</script>\n\n<canvas id=\"canvasRadial4\" width=\"401\" height=\"401\"></canvas>",
"storeOutMessages": true,
"fwdInMessages": true,
"resendOnRefresh": true,
"templateScope": "local",
"className": "",
"x": 460,
"y": 80,
"wires": [
[]
]
},
{
"id": "bcda90f9ecea266c",
"type": "ui_template",
"z": "848165f3e7e60a60",
"group": "527d1bd2a034e73d",
"name": "Room 2",
"order": 1,
"width": "0",
"height": "0",
"format": "<script src=\"/myjs/tween-min.js\"></script>\n<script src=\"/myjs/steelseries-min.js\"></script>\n\n<script>\n var radial4;\n \n (function(scope){ \n scope.$watch('msg', function(msg) {\n if (typeof(msg.payload) != \"undefined\") radial4.setValueAnimated(msg.payload);\n if (typeof(msg.payload) != \"undefined\") radial4.setThreshold(msg.payload);\n if (typeof(msg.odo) != \"undefined\")radial4.setOdoValue(msg.odo); \n if (typeof(msg.userLed) != \"undefined\") radial4.setUserLedOnOff(msg.userLed); \n if (typeof(msg.trend) != \"undefined\")\n {\n if (msg.trend==1) radial4.setTrend(steelseries.TrendState.UP);\n if (msg.trend==0) radial4.setTrend(steelseries.TrendState.STEADY);\n if (msg.trend==-1) radial4.setTrend(steelseries.TrendState.DOWN);\n if (msg.trend==-2) radial4.setTrend(steelseries.TrendState.OFF);\n }\n });\n })(scope);\n\n// var sections = [steelseries.Section(0, 25, 'rgba(0, 0, 220, 0.3)'),\n// steelseries.Section(25, 50, 'rgba(0, 220, 0, 0.3)'),\n// steelseries.Section(50, 75, 'rgba(220, 220, 0, 0.3)') ],\n var sections = [steelseries.Section(0, 18, 'rgba(0, 0, 220, 0.3)'),\n steelseries.Section(18, 22, 'rgba(0, 220, 0, 0.3)'),\n steelseries.Section(22, 40, 'rgba(220, 220, 0, 0.3)') ],\n // Define one area\n areas = [steelseries.Section(18, 25, 'rgba(220, 0, 0, 0.3)')],\n\n radial4 = new steelseries.Radial('canvasRadial4', {\n gaugeType: steelseries.GaugeType.TYPE5,\n minValue:10,\n maxValue:40,\n size: 292,\n section: sections,\n area: areas,\n titleString: \"Room 2\",\n unitString: \"°C\",\n// threshold: 20,\n thresholdRising: false,\n userLedVisible: false,\n useOdometer: false,\n lcdDecimals:1,\n lcdVisible: true,\n trendVisible: true\n });\n \n radial4.setFrameDesign(steelseries.FrameDesign.BLACK_METAL);\n radial4.setValueAnimated(0);\n// radial4.setThreshold(20);\n radial4.blinkUserLed(0);\n// radial4.setOdoValue(0);\n\n\n</script>\n\n<canvas id=\"canvasRadial4\" width=\"401\" height=\"401\"></canvas>",
"storeOutMessages": true,
"fwdInMessages": true,
"resendOnRefresh": true,
"templateScope": "local",
"className": "",
"x": 460,
"y": 180,
"wires": [
[]
]
},
{
"id": "df47c9c4cabdae76",
"type": "inject",
"z": "848165f3e7e60a60",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "30",
"payloadType": "num",
"x": 130,
"y": 180,
"wires": [
[
"d750f3dd5cf8f650",
"bcda90f9ecea266c"
]
]
},
{
"id": "d4fb416fcf1f4c98",
"type": "ui_gauge",
"z": "848165f3e7e60a60",
"name": "Room 1",
"group": "4672b01ae9a5a9ef",
"order": 0,
"width": 0,
"height": 0,
"gtype": "gage",
"title": "Room 1",
"label": "units",
"format": "{{value}}",
"min": 0,
"max": "100",
"colors": [
"#00b500",
"#e6e600",
"#ca3838"
],
"seg1": "",
"seg2": "",
"diff": false,
"className": "",
"x": 460,
"y": 40,
"wires": []
},
{
"id": "d750f3dd5cf8f650",
"type": "ui_gauge",
"z": "848165f3e7e60a60",
"name": "Room 2",
"group": "4672b01ae9a5a9ef",
"order": 0,
"width": 0,
"height": 0,
"gtype": "gage",
"title": "Room 2",
"label": "units",
"format": "{{value}}",
"min": 0,
"max": "100",
"colors": [
"#00b500",
"#e6e600",
"#ca3838"
],
"seg1": "",
"seg2": "",
"diff": false,
"className": "",
"x": 460,
"y": 220,
"wires": []
}
]