{"text_format":"1","workbook":"xlsx","n_sheets":3,"sheets":["Uplink Decoder","Downlink Encoder","Lookup"],"not_rendered":{"charts":0,"images":0,"macros":1,"external_links":0,"defined_names":0,"comments":0,"pivot_tables":0},"unopened":[],"bounds":{"document_bytes":16777216,"sheet_cells":100000,"rows_first":2000,"rows_last":500,"rows_between":2000,"halvings":0,"cell_chars":16384,"cell_head_chars":4096},"cells_cut":0,"cells_raw":0,"read":"whole","date_system":"1900"}

{"sheet":"Uplink Decoder","index":0,"n_rows":29,"n_cols":15,"rows_kept":29,"cut":false,"hidden":false,"merged":[[3,1,3,2]]}
["MLR003 LoRa Uplink Decoder",null,null,null,null,null,null,null,null,null,null,null,"Bala, 11-Oct-2021"]
[]
["Actuator → Controller / Gateway UPLINK"]
["Base64 Raw Payload","ZCgsT00AhQEAEA=="]
[null,null,null,null,null,null,"10 Byte Payload:",{"$f":"H7&H8&H9&H10&H11&H12&H21&H22&H23&H24","v":"64282C4F4D0085010010"}]
["BYTE","Decimal Values",null,null,"BYTE","BIT RANGE","ABBREV.","HEX","BIN","Results",null,null,null,null,"Example Raw Payload"]
[1,100,null,null,1,"DB0.7…0.0","CVP",{"$f":"DEC2HEX(B7,2)","v":"64"},{"$f":"HEX2BIN(H7,8)","v":"01100100"},{"$f":"B7","v":100},"%",null,null,null,"ZCgsTksAhQEAEA=="]
[2,40,null,null,2,"DB1.7…1.0","FSRV","28",{"$f":"HEX2BIN(H8,8)","v":"00101000"},{"$f":"B8*0.5","v":20},"deg C",null,null,null,"ZCcrTkwAhQEAEA=="]
[3,44,null,null,3,"DB2.7…2.0","FTMP","2C","00101100",{"$f":"B9*0.5","v":22},"deg C",null,null,null,"V29zhGUghyjBEA=="]
[4,79,null,null,4,"DB3.7…3.0","ASRV","4F","01001111",{"$f":"B10*0.25","v":19.75},"deg C",null,null,null,"KHh8oGggiDuJEA=="]
[5,77,null,null,5,"DB4.7…4.0","ATMP","4D","01001101",{"$f":"B11*0.25","v":19.25},"deg C",null,null,null,"AD5Cc2AghwECEA=="]
[6,0,null,null,6,"DB5.7… 5.0",null,"00","00000000",null,null,null,null,null,"ZCgsT00AhQEAEA=="]
[7,133,null,null,null,"DB5.7","RES"]
[8,1,null,null,null,"DB5.6","ES",null,{"$f":"MID(I12,2,1)","v":"0"},{"$f":"BIN2DEC(I14)","v":0},{"$f":"IF(J14 = 1,\"Battery Low\",\"Battery OK\")","v":"Battery OK"}]
[9,0,null,null,null,"DB5.5","HA",null,{"$f":"MID(I12,3,1)","v":"0"},{"$f":"BIN2DEC(I15)","v":0},{"$f":"IF(J15 = 1,\"Harvesting Active\",\"Harvesting not Active\")","v":"Harvesting not Active"}]
[10,16,null,null,null,"DB5.4","ASF",null,{"$f":"MID(I12,4,1)","v":"0"},0,{"$f":"IF(J16 = 1,\"Ambient Sensor Failure\",\"Ambient Sensor OK\")","v":"Ambient Sensor OK"}]
[null,210,null,null,null,"DB5.3","FSF",null,{"$f":"MID(I12,5,1)","v":"0"},0,{"$f":"IF(J17 = 1,\"Flow Sensor Failure\",\"Flow Sensor OK\")","v":"Flow Sensor OK"}]
[null,153,null,null,null,"DB5.2","RCE",null,{"$f":"MID(I12,6,1)","v":"0"},0,{"$f":"IF(J18 = 1,\"Radio Loss\",\"Radio OK\")","v":"Radio OK"}]
[null,233,null,null,null,"DB5.1","RSS",null,{"$f":"MID(I12,7,1)","v":"0"},0,{"$f":"IF(J19 = 1,\"Weak Radio\",\"RSS OK\")","v":"RSS OK"}]
[null,232,null,null,null,"DB5.0","ME",null,{"$f":"MID(I12,8,1)","v":"0"},0,{"$f":"IF(J20 = 1,\"Motor Failure\",\"Motor OK\")","v":"Motor OK"}]
[null,null,null,null,7,"DB6.7…6.0","STV",{"$f":"DEC2HEX(B13,2)","v":"85"},{"$f":"HEX2BIN(H21,8)","v":"10000101"},{"$f":"B13*0.02","v":2.66},"V"]
[null,null,null,null,8,"DB7.7…7.0","ACC",{"$f":"DEC2HEX(B14,2)","v":"01"},{"$f":"HEX2BIN(H22,8)","v":"00000001"},{"$f":"BIN2DEC(I22)*10","v":10}," Average Current Consumed"]
[null,null,null,null,9,"DB8.7…7.0","ACG",{"$f":"DEC2HEX(B15,2)","v":"00"},"00000000",{"$f":"BIN2DEC(I23)*10","v":0}," Average Current Generated"]
[null,null,null,null,10,"DB9.7…9.0",null,{"$f":"DEC2HEX(B16,2)","v":"10"},"00010000"]
[null,null,null,null,null,"DB9.7","OFF",null,{"$f":"MID(I24,1,1)","v":"0"},{"$f":"BIN2DEC(I25)","v":0},{"$f":"IF(J25 = 1,\"Device OFF\",\"Device ACTIVE\")","v":"Device ACTIVE"}]
[null,null,null,null,null,"DB9.6","SFC",null,{"$f":"MID(I24,2,1)","v":"0"},0,{"$f":"IF(J26 = 1,\"Storage fully charged\",\"Storage not fully charged\")","v":"Storage not fully charged"}]
[null,null,null,null,null,"DB9.5","RES"]
[null,null,null,null,null,"DB9.4","REFC",null,{"$f":"MID(I24,4,1)","v":"1"},1,{"$f":"IF(J28 = 1,\"REF Run Complete\",\"REF Run not complete\")","v":"REF Run Complete"}]
[null,null,null,null,null,"9.3…9.0","RES"]

{"sheet":"Downlink Encoder","index":1,"n_rows":16,"n_cols":14,"rows_kept":16,"cut":false,"hidden":false,"merged":[[3,2,3,3]]}
["MLR003 LoRa Downlink Encoder",null,null,null,null,null,null,null,null,null,null,null,null,"Bala, 12-Nov-2021"]
[]
["Controller/Gateway → Actuator DOWNLINK"]
["6 byte Payload",{"$f":"L7&L8&L9&L10&L11&L12","v":"005028103D00"}]
["Base64 Raw Payload",{"$f":"hex2Base64(B4)","v":"AFAoED0A"}]
["Abbrev.","Note","Description","Decimal Value",null,null,"HEX Value","BIN Value"]
["SPV","Set Point Value based on User Mode",{"$f":"IF(C11=\"Valve Position\", \"Set Valve Position\",IF(C11=\"Ambient Temperature\",\"Set Ambient Temperature\",\"Set Flow Temperature\"))","v":"Set Valve Position"},0,{"$f":"IF(C11=\"Valve Position\", \"%\",\"deg C\")","v":"%"},null,{"$f":"IF(C7=\"Set Valve Position\",DEC2HEX(D7,2),IF(C7=\"Set Ambient Temperature\",DEC2HEX(D7*2,2),DEC2HEX(D7*2,2)))","v":"00"},{"$f":"HEX2BIN(G7,8)","v":"00000000"},null,"DB0.7…0.0",null,{"$f":"G7","v":"00"}]
["RT",null,"Room TMP from RCU",20,"deg C",null,{"$f":"DEC2HEX(D8*4,2)","v":"50"},{"$f":"HEX2BIN(G8,8)","v":"01010000"},null,"DB2.7…1.0",null,{"$f":"G8","v":"50"}]
["SSV","Set Safety value based on Safety Mode",{"$f":"IF(C12=\"SP Ambient Temperature\", \"Set Safety Amb Temperature\",IF(C12=\"SP Flow Temperature\",\"Set Safety Flow Temperature\",\"Set Safety Valve Position\"))","v":"Set Safety Amb Temperature"},20,{"$f":"IF(C12=\"SP Ambient Temperature\", \"deg C\",IF(C12=\"SP Flow Temperature\",\"deg C\",\"%\"))","v":"deg C"},null,{"$f":"IF(C9=\"Set Safety Amb Temperature\",DEC2HEX(D9*2,2),IF(C9=\"Set Safety Flow Temperature\",DEC2HEX(D9*2,2),DEC2HEX(D9,2)))","v":"28"},"00101000",null,"DB2.7…2.0",null,{"$f":"G9","v":"28"}]
["RCI",null,"Radio Communication Interval",5,"minutes",null,{"$f":"LOOKUP(D10,Lookup!D2:D6,Lookup!E2:E6)","v":1},{"$f":"HEX2BIN(G10,3)","v":"001"},null,"DB3.7…3.0",{"$f":"0&H10&H11&H12","v":"00010000"},{"$f":"BIN2HEX(K10,2)","v":"10"}]
["UM","Select User Mode","Valve Position",{"$f":"LOOKUP(C11,Lookup!A19:A21,Lookup!B19:B21)","v":0},"-",null,{"$f":"DEC2HEX(D11)","v":"0"},{"$f":"HEX2BIN(G11,2)","v":"00"},null,"DB4.7…4.0",{"$f":"H13&H14","v":"00111101"},{"$f":"BIN2HEX(K11)","v":"3D"}]
["SM ","Select Safety Mode","SP Ambient Temperature",{"$f":"LOOKUP(C12,Lookup!A24:A26,Lookup!B24:B26)","v":0},"-",null,{"$f":"DEC2HEX(D12)","v":"0"},{"$f":"HEX2BIN(G12,2)","v":"00"},null,"DB5.7…5.0",{"$f":"H16&H15&0&0&0&0&0","v":"00000000"},{"$f":"BIN2HEX(K12,2)","v":"00"}]
["FSOC",null,"Offset Comp. Flow Sensor",3,"deg C",null,{"$f":"LOOKUP(D13,Lookup!A2:A16,Lookup!C2:C16)","v":"03"},{"$f":"HEX2BIN(G13,4)","v":"0011"}]
["ASOC",null,"Offset Comp. Amb Sensor",-3,"deg C",null,{"$f":"LOOKUP(D14,Lookup!A2:A16,Lookup!C2:C16)","v":"0D"},{"$f":"HEX2BIN(G14,4)","v":"1101"}]
["GAIN",null,"Proportional Controller Gain",3,"-",null,{"$f":"LOOKUP(D15,Lookup!D9:D12,Lookup!E9:E12)","v":0},{"$f":"HEX2BIN(G15,2)","v":"00"}]
["REF",null,"Do Reference Run Now",0,"-",null,{"$f":"DEC2HEX(D16)","v":"0"},{"$f":"HEX2BIN(G16,1)","v":"0"}]

{"sheet":"Lookup","index":2,"n_rows":26,"n_cols":5,"rows_kept":26,"cut":false,"hidden":false,"merged":[]}
["Offset Compensation","Dec Values","Hex Values","RCI"]
[-8,8,{"$f":"DEC2HEX(B2,2)","v":"08"},5,1]
[-7,9,{"$f":"DEC2HEX(B3,2)","v":"09"},10,0]
[-6,10,"0A",60,2]
[-5,11,"0B",120,3]
[-4,12,"0C",480,4]
[-3,13,"0D"]
[-2,14,"0E","Gain"]
[-1,15,"0F",1,2]
[1,1,"01",2,3]
[2,2,"02",3,0]
[3,3,"03",4,1]
[4,4,"04"]
[5,5,"05"]
[6,6,"06"]
[7,7,"07"]
[]
["User Modes"]
["Ambient Temperature",2]
["Flow Temperature",1]
["Valve Position",0]
[]
["Safety Modes"]
["SP Ambient Temperature",0]
["SP Flow Temperature",1]
["Valve Position",2]