{ "custom": { "FLT_Codes": [ "0: No Fault", "1: Low Ambient Temperature", "2: High Ambient Temperature", "3: Low Chilled Liquid Temperature", "4: VSD Initialization Failure", "5: Low RTC Battery Voltage", "6: Invalid Number of Compressors Selected", "7: VSD Communications Failure", "8: Pre-charge Low DC Bus Voltage", "9: Pre-charge DC Bus Voltage Imbalance", "10: High DC Bus Voltage", "11: Low DC Bus Voltage", "12: DC Bus Voltage Imbalance", "13: High VSD Ambien Temperature", "14: Single Phase Input", "15: VSD Power Supply Fault", "16: VSD Logic Board Fault", "17: Motor Current Overload (Hardware)", "18: CT Plug Fault", "19: High Harmonic Filter Temperature", "20: Evap Anti-Freeze Pump Fault", "21: Low Heat Exchange Temperature", "22: Replace RTC Battery", "23: N/A", "24: N/A", "25: N/A", "26: N/A", "27: High Discharge Pressure", "28: High Differential Oil Pressure", "29: Low Differential Oil Pressure", "30: Low Suction Pressure", "31: High Discharge Temperature", "32: N/A", "33: Eductor Clog Fault", "34: Sensor Failure", "35: Low Motor Current", "36: High Motor Temperature", "37: Pre-charge Low DC Bus Voltage Immbalance", "38: Pre-charge DC Bus Voltage Imbalance", "39: High DC Bus Voltage", "40: Low DC Bus Voltage", "41: DC Bus Voltage Imbalance", "42: High Motor Current", "43: Motor Current Overload", "44: IGBT Gate Driver Fault", "45: High Baseplate Temperature", "46: Single Phase Input", "47: VSD Run Signal Fault", "48: High Discharge Press (HPCO)", "49: Low Suction Superheat", "50: Control Valve Fault", "51: Low Discharge Superheat", "52: Low Suction PRessure Smart Freeze", "53: Isolation Valve Failed to Close Warning", "54: Isolation Valve failed to Open Fault", "55: High Discharge Pressure Rate", "56: Condenser Fan VSD Fault Warning", "57: N/A", "58: N/A", "59: N/A", "60: N/A", "61: N/A", "62: N/A" ], "OP_Codes": [ "0: No code", "1: No code", "2: No code", "3: No code", "4: No code", "5: No code", "6: No code", "7: No code", "8: No code", "9: No code", "10: No code", "11: No code", "12: No code", "13: No code", "14: 1No code", "15: No code", "16: No code", "17: No code", "18: No code", "19: No code", "20: No code", "21: No code", "22: No code", "23: No code", "24: No code", "25: No code", "26: No code", "27: No code", "28: No code", "29: No code", "30: No code", "31: No code", "32: No code", "33: No code", "34: No code", "35: No code", "36: No code", "37: No code", "38: No code", "39: No code", "40: No code", "41: No code", "42: No code", "43: No code", "44: No code", "45: No code", "46: No code", "47: No code", "48: No code", "49: No code", "50: No code", "51: No code", "52: No code", "53: No code", "54: No code", "55: No code", "56: No code", "57: No code", "58: No code", "59: No code", "60: No code", "61: No code", "62: No code", "63: Manual Override", "64: Daily Schedule Shutdown", "65: Unit Switch Off", "66: Remote Controlled Shutdown", "67: Loss of External Communications", "68: Flow Switch Shutdown", "69: VSD Cooling Shutdown", "70: Serial Number Shutdown", "71: N/A", "72: Discharge Spuerheat Recovery", "73: N/A", "74: No Run Permissive", "75: Anti-Recycle Timer Active", "76: System Switch Off", "77: System Not Running", "78: System Running", "79: Discharge Pressure Limiting", "80: Suction Pressure Limiting", "81: Motor Current Limiting", "82: Free Cooliong", "83:BAS Motor Current Limiting", "84: Remote Motor Current Limiting", "85: System Pumping Down", "86: VSD Pre-Charging", "87: VSD Baseplate Temp Limiting", "88: VSD Internal Ambient Temp Limiting", "89: Sounf Limiting", "90: BAS Sounf Limiting", "91: Remote Sound Limiting", "92: Pulldown Motor Current Limiting", "93: Cooling Demand Shutdown", "94: Input Current Limiting", "95: BAS Input Current Limiting", "96: Remote Input Current Limiting", "97: Pulldown Input Current Limiting" ], "allTags": [ { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 20, "instanceStyle": { "classes": "" }, "name": "Comm Interface Percentage", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 43, "instanceStyle": { "classes": "" }, "name": "Compressor 1 Economizer Percent", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 44, "instanceStyle": { "classes": "" }, "name": "Compressor 2 Economizer Percent", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 51, "instanceStyle": { "classes": "" }, "name": "Condenser 1 Fan Speed", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 52, "instanceStyle": { "classes": "" }, "name": "Condenser 2 Fan Speed", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 29, "instanceStyle": { "classes": "" }, "name": "FLA Motor 1 Percent", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 30, "instanceStyle": { "classes": "" }, "name": "FLA Motor 2 Percent", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 5, "instanceStyle": { "classes": "" }, "name": "Load", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 31, "instanceStyle": { "classes": "" }, "name": "Compressor 1 Power", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 32, "instanceStyle": { "classes": "" }, "name": "Compressor 2 Power", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 27, "instanceStyle": { "classes": "" }, "name": "System 1 Fan Power", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 28, "instanceStyle": { "classes": "" }, "name": "System 2 Fan Power", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 17, "instanceStyle": { "classes": "" }, "name": "VSD CMD", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 19, "instanceStyle": { "classes": "" }, "name": "VSD Output", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 15, "instanceStyle": { "classes": "" }, "name": "Ambient Air Temperature", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 37, "instanceStyle": { "classes": "" }, "name": "Compressor 1 Eductor Temperature", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 39, "instanceStyle": { "classes": "" }, "name": "Compressor 1 Motor Temperature", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 38, "instanceStyle": { "classes": "" }, "name": "Compressor 2 Eductor Temperature", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 40, "instanceStyle": { "classes": "" }, "name": "Compressor 2 Motor Temperature", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 53, "instanceStyle": { "classes": "" }, "name": "Condenser 1 Temperature", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 54, "instanceStyle": { "classes": "" }, "name": "Condenser 2 Temperature", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 16, "instanceStyle": { "classes": "" }, "name": "Evaporator In Water Temperature", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 18, "instanceStyle": { "classes": "" }, "name": "Evaporator Out Water Temperature", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 22, "instanceStyle": { "classes": "" }, "name": "System 2 Discharge Temperature", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 6, "instanceStyle": { "classes": "" }, "name": "Flow", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 45, "instanceStyle": { "classes": "" }, "name": "Compressor 1 Runtime", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 46, "instanceStyle": { "classes": "" }, "name": "Compressor 2 Runtime", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 7, "instanceStyle": { "classes": "" }, "name": "Active Setpoint", "options": [] }, { "dataType": "Boolean", "displaySelection": 1, "format": "0.0", "instancePosition": 10, "instanceStyle": { "classes": "" }, "name": "Chiller System Available", "options": [ "Not ready", "Ready" ] }, { "dataType": "Int4", "displaySelection": 0, "format": "0.0", "instancePosition": 47, "instanceStyle": { "classes": "" }, "name": "Compressor 1 Starts", "options": [] }, { "dataType": "Boolean", "displaySelection": 0, "format": "0.0", "instancePosition": 33, "instanceStyle": { "classes": "" }, "name": "Compressor 1 Status", "options": [] }, { "dataType": "Int4", "displaySelection": 0, "format": "0.0", "instancePosition": 48, "instanceStyle": { "classes": "" }, "name": "Compressor 2 Starts", "options": [] }, { "dataType": "Boolean", "displaySelection": 0, "format": "0.0", "instancePosition": 34, "instanceStyle": { "classes": "" }, "name": "Compressor 2 Status", "options": [] }, { "dataType": "Boolean", "displaySelection": 1, "format": "0.0", "instancePosition": 49, "instanceStyle": { "classes": "" }, "name": "Condenser 1 Fan Status", "options": [ "Off", "On" ] }, { "dataType": "Boolean", "displaySelection": 1, "format": "0.0", "instancePosition": 50, "instanceStyle": { "classes": "" }, "name": "Condenser 2 Fan Status", "options": [ "Off", "On" ] }, { "dataType": "Boolean", "displaySelection": 1, "format": "0.0", "instancePosition": 12, "instanceStyle": { "classes": "" }, "name": "Evaporator Heater Status", "options": [ "Off", "On" ] }, { "dataType": "Boolean", "displaySelection": 1, "format": 0, "instancePosition": 14, "instanceStyle": { "classes": "" }, "name": "Evaporator Pump Status", "options": [ "Off", "On" ] }, { "dataType": "Boolean", "displaySelection": 1, "format": 0, "instancePosition": 8, "instanceStyle": { "classes": "" }, "name": "Flow Switch", "options": [ "Off", "On" ] }, { "dataType": "Int4", "displaySelection": 1, "format": "0.0", "instancePosition": -3, "instanceStyle": { "classes": "" }, "name": "System 1 OpCode" }, { "dataType": "Int4", "displaySelection": 1, "format": 0, "instancePosition": 0, "instanceStyle": { "classes": "" }, "name": "System 1 Fault Code" }, { "dataType": "Int4", "displaySelection": 1, "format": 0, "instancePosition": 1, "instanceStyle": { "classes": "" }, "name": "System 2 Fault Code" }, { "dataType": "Int4", "displaySelection": 1, "format": 0, "instancePosition": -2, "instanceStyle": { "classes": "" }, "name": "System 2 OpCode" }, { "dataType": "Boolean", "displaySelection": 1, "format": "0.0", "instancePosition": 3, "instanceStyle": { "classes": "" }, "name": "System HOA", "options": [ "Local", "Remote" ] }, { "dataType": "Boolean", "displaySelection": 1, "format": "0.0", "instancePosition": 9, "instanceStyle": { "classes": "" }, "name": "System Interlock Active", "options": [ "Not Tripped", "Tripped" ] }, { "dataType": "Boolean", "displaySelection": 1, "format": "0.0", "instancePosition": 11, "instanceStyle": { "classes": "" }, "name": "System Permissive OK", "options": [ "Not Ready", "Ready" ] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 41, "instanceStyle": { "classes": "" }, "name": "Compressor 1 Oil Pressure", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 42, "instanceStyle": { "classes": "" }, "name": "Compressor 2 Oil Pressure", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 23, "instanceStyle": { "classes": "" }, "name": "System 1 Discharge Pressure", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 21, "instanceStyle": { "classes": "" }, "name": "System 1 Discharge Temperature", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 25, "instanceStyle": { "classes": "" }, "name": "System 1 Suction Pressure", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 24, "instanceStyle": { "classes": "" }, "name": "System 2 Discharge Pressure", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 26, "instanceStyle": { "classes": "" }, "name": "System 2 Suction Pressure", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 13, "instanceStyle": { "classes": "" }, "name": "System Suction Cutout", "options": [] }, { "dataType": "Float4", "displaySelection": 0, "format": "0.0", "instancePosition": 20, "instanceStyle": { "classes": "" }, "name": "System 1 Discharge Pressure", "options": [], "visible": false } ] }, "params": { "tagPath": "[Ignition_Common_IO_Gtwy]Roof/SATB1_RF_CH06_SYSTEM" }, "propConfig": { "custom.FLT_Codes": { "persistent": true }, "custom.OP_Codes": { "persistent": true }, "custom.allTags": { "binding": { "config": { "struct": { "tagPath": "{view.params.tagPath}" }, "waitOnAll": true }, "enabled": false, "transforms": [ { "code": "\toutput \u003d []\n\t# Simulate fetching tag configurations and sorting by name\n\tnodes \u003d system.tag.getConfiguration(value[\u0027tagPath\u0027], True)\n\tfor item in nodes:\n\t if \u0027tags\u0027 in item:\n\t \tsortedTags \u003d sorted(item[\u0027tags\u0027], key\u003dlambda x: x[\u0027name\u0027])\n\t \tsortedTags \u003d sorted(sortedTags, key\u003dlambda x: x.get(\u0027engUnit\u0027, \u0027misc\u0027) if x.get(\u0027engUnit\u0027, \u0027misc\u0027) !\u003d \"\" else \u0027misc\u0027)\n for tagConfig in sortedTags:\n if str(tagConfig[\u0027tagType\u0027]) \u003d\u003d \u0027AtomicTag\u0027:\n name \u003d tagConfig.get(\"name\", \"\")\n dataType \u003d tagConfig.get(\"dataType\", \"\")\n tagPath \u003d value[\u0027tagPath\u0027] + \u0027/\u0027 + name\n if dataType \u003d\u003d \u0027Boolean\u0027:\n \tdisplaySel \u003d 1\n else:\n \tdisplaySel \u003d 0\n instance \u003d {\n \"instanceStyle\": {\n \"classes\": \"\"\n },\n \"instancePosition\": 999,\n \"name\": name,\n \"dataType\": dataType,\n \"displaySelection\": displaySel,\n \"format\": \"0.0\",\n \"options\": []\n }\n output.append(instance)\n\t# Return or process the sorted output\n\treturn output", "type": "script" } ], "type": "expr-struct" }, "persistent": true }, "custom.allTags[38].options": { "binding": { "config": { "path": "view.custom.OP_Codes" }, "type": "property" } }, "custom.allTags[39].options": { "binding": { "config": { "path": "view.custom.FLT_Codes" }, "type": "property" } }, "custom.allTags[40].options": { "binding": { "config": { "path": "view.custom.FLT_Codes" }, "type": "property" } }, "custom.allTags[41].options": { "binding": { "config": { "path": "view.custom.OP_Codes" }, "type": "property" } }, "params.tagPath": { "paramDirection": "input", "persistent": true } }, "props": {}, "root": { "children": [ { "meta": { "name": "FlexRepeater" }, "position": { "basis": "100%" }, "propConfig": { "props.instances": { "binding": { "config": { "struct": { "allTags": "{view.custom.allTags}", "tagPath": "{view.params.tagPath}" }, "waitOnAll": true }, "transforms": [ { "code": "\toutput \u003d []\n\tallTags \u003d system.util.jsonDecode(system.util.jsonEncode(value[\u0027allTags\u0027]))\n\tfor tag in allTags:\n\t\ttagName \u003d tag[\"name\"]\n\t\ttag[\"tagPath\"] \u003d value[\"tagPath\"] + \"/\" +tagName\n\t\toutput.append(tag)\n\toutput_sorted \u003d sorted(output, key\u003dlambda item: item[\"instancePosition\"])\n\treturn output_sorted", "type": "script" } ], "type": "expr-struct" } } }, "props": { "alignContent": "flex-start", "elementPosition": { "basis": "50%", "grow": 0 }, "loading": { "order": "with-parent" }, "path": "Library/Framework/Tag Info", "style": { "border": "1px solid var(--border)", "gap": "10px 0", "padding": "10px" }, "useDefaultViewHeight": false, "useDefaultViewWidth": false, "wrap": "wrap" }, "type": "ia.display.flex-repeater" } ], "meta": { "name": "root" }, "props": { "direction": "column", "style": { "classes": "containers/padded-container" } }, "type": "ia.container.flex" } }