{"blocks":[{"nid":2,"groups":[7],"type":"SysInfo","data":{"deviceId":"","version":"","platform":0,"protocolVersion":"","releaseDate":"","protocolDate":"","command":0,"trace":[]},"id":"SystemInfo","serviceId":"spark-one"},{"nid":5,"groups":[7],"type":"WiFiSettings","data":{"ssid":"","password":"","security":0,"cipher":0,"signal":0,"ip":""},"id":"WiFiSettings","serviceId":"spark-one"},{"nid":103,"groups":[0],"type":"Pid","data":{"inputId":{"__bloxtype":"Link","type":"SetpointSensorPairInterface","id":"Mash Setpoint"},"outputId":{"__bloxtype":"Link","type":"ActuatorAnalogInterface","id":"RIMs Element"},"enabled":true,"kp":{"__bloxtype":"Quantity","unit":"1 / degF","value":20},"ti":{"__bloxtype":"Quantity","unit":"second","value":7200},"inputValue":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"inputSetting":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"outputValue":0,"outputSetting":0,"active":false,"td":{"__bloxtype":"Quantity","unit":"second","value":0},"p":0,"i":0,"d":0,"error":{"__bloxtype":"Quantity","unit":"delta_degF","readonly":true,"value":0},"integral":{"__bloxtype":"Quantity","unit":"delta_degF * hour","readonly":true,"value":0},"derivative":{"__bloxtype":"Quantity","unit":"delta_degF / minute","readonly":true,"value":0},"drivenOutputId":{"__bloxtype":"Link","type":"ActuatorAnalogInterface","driven":true,"id":null},"integralReset":0,"boilPointAdjust":{"__bloxtype":"Quantity","unit":"delta_degF","value":0},"boilMinOutput":0,"boilModeActive":false,"derivativeFilter":0},"id":"Mash","serviceId":"spark-one"},{"nid":102,"groups":[0],"type":"Balancer","data":{"clients":[]},"id":"Balancer","serviceId":"spark-one"},{"nid":100,"groups":[0],"type":"ActuatorPwm","data":{"actuatorId":{"__bloxtype":"Link","type":"ActuatorDigitalInterface","id":"Kettle SSR"},"period":{"__bloxtype":"Quantity","unit":"second","value":4},"constrainedBy":{"constraints":[{"balanced":{"balancerId":{"__bloxtype":"Link","type":"BalancerInterface","id":"Balancer"},"granted":50,"id":1},"limiting":false}]},"enabled":true,"setting":0,"value":0,"drivenActuatorId":{"__bloxtype":"Link","type":"ActuatorDigitalInterface","driven":true,"id":null},"desiredSetting":0},"id":"Kettle Element","serviceId":"spark-one"},{"nid":111,"groups":[0],"type":"SetpointSensorPair","data":{"sensorId":{"__bloxtype":"Link","type":"TempSensorInterface","id":"RIMs Temp"},"settingEnabled":true,"storedSetting":{"__bloxtype":"Quantity","unit":"degF","value":-0.00009765625006252776},"filter":1,"filterThreshold":{"__bloxtype":"Quantity","unit":"delta_degF","value":9},"setting":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"value":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"valueUnfiltered":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"resetFilter":false},"id":"Mash Setpoint","serviceId":"spark-one"},{"nid":112,"groups":[0],"type":"Mutex","data":{"differentActuatorWait":{"__bloxtype":"Quantity","unit":"second","value":1},"waitRemaining":{"__bloxtype":"Quantity","unit":"second","readonly":true,"value":0}},"id":"Mutex","serviceId":"spark-one"},{"nid":101,"groups":[0],"type":"ActuatorPwm","data":{"actuatorId":{"__bloxtype":"Link","type":"ActuatorDigitalInterface","id":"RIMs SSR"},"period":{"__bloxtype":"Quantity","unit":"second","value":4},"constrainedBy":{"constraints":[{"balanced":{"balancerId":{"__bloxtype":"Link","type":"BalancerInterface","id":"Balancer"},"granted":50,"id":2},"limiting":false}]},"enabled":true,"setting":0,"value":0,"drivenActuatorId":{"__bloxtype":"Link","type":"ActuatorDigitalInterface","driven":true,"id":null},"desiredSetting":0},"id":"RIMs Element","serviceId":"spark-one"},{"nid":105,"groups":[0],"type":"ActuatorPwm","data":{"actuatorId":{"__bloxtype":"Link","type":"ActuatorDigitalInterface","id":"Pump pins"},"period":{"__bloxtype":"Quantity","unit":"second","value":0.01},"enabled":true,"setting":0,"value":0,"drivenActuatorId":{"__bloxtype":"Link","type":"ActuatorDigitalInterface","driven":true,"id":null},"desiredSetting":0},"id":"Pump","serviceId":"spark-one"},{"nid":114,"groups":[0],"type":"DigitalActuator","data":{"hwDevice":{"__bloxtype":"Link","type":"IoArrayInterface","driven":true,"id":"SparkPins"},"channel":4,"state":0,"invert":false,"desiredState":0},"id":"Pump pins","serviceId":"spark-one"},{"nid":118,"groups":[0],"type":"TempSensorOneWire","data":{"address":"28ff38fe021703b9","value":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"offset":{"__bloxtype":"Quantity","unit":"delta_degF","value":0}},"id":"Kettle Temp","serviceId":"spark-one"},{"nid":109,"groups":[0],"type":"SetpointSensorPair","data":{"sensorId":{"__bloxtype":"Link","type":"TempSensorInterface","id":"Kettle Temp"},"settingEnabled":true,"storedSetting":{"__bloxtype":"Quantity","unit":"degF","value":-0.00009765625006252776},"filter":1,"filterThreshold":{"__bloxtype":"Quantity","unit":"delta_degF","value":210.99990234374997},"setting":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"value":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"valueUnfiltered":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"resetFilter":false},"id":"Kettle Setpoint","serviceId":"spark-one"},{"nid":104,"groups":[0],"type":"Pid","data":{"inputId":{"__bloxtype":"Link","type":"SetpointSensorPairInterface","id":"Kettle Setpoint"},"outputId":{"__bloxtype":"Link","type":"ActuatorAnalogInterface","id":"Kettle Element"},"enabled":true,"kp":{"__bloxtype":"Quantity","unit":"1 / degF","value":20},"ti":{"__bloxtype":"Quantity","unit":"second","value":7200},"boilPointAdjust":{"__bloxtype":"Quantity","unit":"delta_degF","value":-1.0001953124999998},"inputValue":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"inputSetting":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"outputValue":0,"outputSetting":0,"active":false,"td":{"__bloxtype":"Quantity","unit":"second","value":0},"p":0,"i":0,"d":0,"error":{"__bloxtype":"Quantity","unit":"delta_degF","readonly":true,"value":0},"integral":{"__bloxtype":"Quantity","unit":"delta_degF * hour","readonly":true,"value":0},"derivative":{"__bloxtype":"Quantity","unit":"delta_degF / minute","readonly":true,"value":0},"drivenOutputId":{"__bloxtype":"Link","type":"ActuatorAnalogInterface","driven":true,"id":null},"integralReset":0,"boilMinOutput":0,"boilModeActive":false,"derivativeFilter":0},"id":"Kettle","serviceId":"spark-one"},{"nid":115,"groups":[0],"type":"TempSensorOneWire","data":{"address":"28ff8a7a0217057f","value":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"offset":{"__bloxtype":"Quantity","unit":"delta_degF","value":0}},"id":"Mash Temp","serviceId":"spark-one"},{"nid":116,"groups":[0],"type":"TempSensorOneWire","data":{"address":"28ff5711021705c9","value":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"offset":{"__bloxtype":"Quantity","unit":"delta_degF","value":0}},"id":"RIMs Temp","serviceId":"spark-one"},{"nid":106,"groups":[0],"type":"DigitalActuator","data":{"hwDevice":{"__bloxtype":"Link","type":"IoArrayInterface","driven":true,"id":"SparkPins"},"channel":1,"constrainedBy":{"constraints":[{"mutexed":{"mutexId":{"__bloxtype":"Link","type":"MutexInterface","id":"Mutex"},"extraHoldTime":{"__bloxtype":"Quantity","unit":"second","value":0},"hasCustomHoldTime":false,"hasLock":false},"remaining":{"__bloxtype":"Quantity","unit":"second","readonly":true,"value":0}}]},"state":0,"invert":false,"desiredState":0},"id":"Kettle SSR","serviceId":"spark-one"},{"nid":107,"groups":[0],"type":"DigitalActuator","data":{"hwDevice":{"__bloxtype":"Link","type":"IoArrayInterface","driven":true,"id":"SparkPins"},"channel":2,"constrainedBy":{"constraints":[{"mutexed":{"mutexId":{"__bloxtype":"Link","type":"MutexInterface","id":"Mutex"},"extraHoldTime":{"__bloxtype":"Quantity","unit":"second","value":0},"hasCustomHoldTime":false,"hasLock":false},"remaining":{"__bloxtype":"Quantity","unit":"second","readonly":true,"value":0}}]},"state":0,"invert":false,"desiredState":0},"id":"RIMs SSR","serviceId":"spark-one"},{"nid":117,"groups":[0],"type":"TempSensorOneWire","data":{"address":"28ff9f7302170542","value":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"offset":{"__bloxtype":"Quantity","unit":"delta_degF","value":0}},"id":"Chiller Temp","serviceId":"spark-one"},{"nid":120,"groups":[0],"type":"SetpointSensorPair","data":{"sensorId":{"__bloxtype":"Link","type":"TempSensorInterface","id":"Chiller Temp"},"settingEnabled":true,"storedSetting":{"__bloxtype":"Quantity","unit":"degF","value":67.99999999999993},"filter":1,"filterThreshold":{"__bloxtype":"Quantity","unit":"delta_degF","value":9},"setting":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"value":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"valueUnfiltered":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"resetFilter":false},"id":"Chiller Setpoint","serviceId":"spark-one"},{"nid":124,"groups":[0],"type":"ActuatorPwm","data":{"actuatorId":{"__bloxtype":"Link","type":"ActuatorDigitalInterface","id":"Pump pins"},"period":{"__bloxtype":"Quantity","unit":"second","value":0.01},"constrainedBy":{"constraints":[{"min":30,"limiting":true}]},"setting":0,"value":0,"drivenActuatorId":{"__bloxtype":"Link","type":"ActuatorDigitalInterface","driven":true,"id":null},"enabled":false,"desiredSetting":0},"id":"Chiller Cool PWM","serviceId":"spark-one"},{"nid":125,"groups":[0],"type":"Pid","data":{"inputId":{"__bloxtype":"Link","type":"SetpointSensorPairInterface","id":"Chiller Setpoint"},"outputId":{"__bloxtype":"Link","type":"ActuatorAnalogInterface","id":"Chiller Cool PWM"},"enabled":true,"kp":{"__bloxtype":"Quantity","unit":"1 / degF","value":11.110026041666668},"ti":{"__bloxtype":"Quantity","unit":"second","value":7200},"td":{"__bloxtype":"Quantity","unit":"second","value":600},"inputValue":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"inputSetting":{"__bloxtype":"Quantity","unit":"degF","readonly":true,"value":31.999999999999936},"outputValue":0,"outputSetting":0,"active":false,"p":0,"i":0,"d":0,"error":{"__bloxtype":"Quantity","unit":"delta_degF","readonly":true,"value":0},"integral":{"__bloxtype":"Quantity","unit":"delta_degF * hour","readonly":true,"value":0},"derivative":{"__bloxtype":"Quantity","unit":"delta_degF / minute","readonly":true,"value":0},"drivenOutputId":{"__bloxtype":"Link","type":"ActuatorAnalogInterface","driven":true,"id":null},"integralReset":0,"boilPointAdjust":{"__bloxtype":"Quantity","unit":"delta_degF","value":0},"boilMinOutput":0,"boilModeActive":false,"derivativeFilter":0},"id":"Chiller PID","serviceId":"spark-one"},{"nid":7,"groups":[7],"type":"DisplaySettings","data":{"widgets":[{"pos":3,"color":"037cd5","name":"Cool PID","pid":{"__bloxtype":"Link","type":"Pid","id":"Chiller PID"}},{"pos":2,"color":"037cd5","name":"Cool PID","pid":{"__bloxtype":"Link","type":"Pid","id":"New|Pid-1"}},{"pos":1,"color":"4169e1","name":"Kettle Temp","tempSensor":{"__bloxtype":"Link","type":"TempSensorInterface","id":"New|TempSensorInterface-1"}}],"name":"Rabbit Hole Brewing","tempUnit":1,"brightness":0},"id":"DisplaySettings","serviceId":"spark-one"}],"store":[{"keys":["ActiveGroups",1],"data":{}},{"keys":["SystemInfo",2],"data":{}},{"keys":["SystemTime",3],"data":{}},{"keys":["OneWireBus",4],"data":{}},{"keys":["WiFiSettings",5],"data":{}},{"keys":["TouchSettings",6],"data":{}},{"keys":["DisplaySettings",7],"data":{}},{"keys":["SparkPins",19],"data":{}},{"keys":["Kettle Element",100],"data":{}},{"keys":["Balancer",102],"data":{}},{"keys":["Kettle",104],"data":{}},{"keys":["Mash",103],"data":{}},{"keys":["Pump",105],"data":{}},{"keys":["Kettle SSR",106],"data":{}},{"keys":["Kettle Setpoint",109],"data":{}},{"keys":["Mash Setpoint",111],"data":{}},{"keys":["Mutex",112],"data":{}},{"keys":["RIMs Element",101],"data":{}},{"keys":["RIMs SSR",107],"data":{}},{"keys":["Pump pins",114],"data":{}},{"keys":["RIMs Temp",116],"data":{}},{"keys":["Mash Temp",115],"data":{}},{"keys":["Kettle Temp",118],"data":{}},{"keys":["Chiller Temp",117],"data":{}},{"keys":["Chiller PID",125],"data":{}},{"keys":["Chiller Setpoint",120],"data":{}},{"keys":["Chiller Cool PWM",124],"data":{}},{"keys":["New|Pid-1",133],"data":{}},{"keys":["New|TempSensorInterface-1",108],"data":{}}]}