Reduce thermostat temp if not already set to a lower level

My 20 year old daughter has a room that is unpredictably used. When she’s using it she (normally) sets the temp up and when leaving turns it down using FH flows. Most of the time this works, but when she’s gone all day, then I want to automate turning the thermostat down. It’s an Adax heater.

I can get the flow working to turn it down at a specific time with no problem, but how do I get what the Adax thermostat is set at to make sure I’m turning it down instead of up? For example, if the temp was already manually lowered to 15 and the automated flow is to turn it to 18, I want to stop the flow.

What I don’t know how to do is to call the evt.setpoint.report and use that value in an if statement.

Og - snakker og leser norsk, men skriver litt dårlig. :slight_smile:

This is what I’m trying to do, but I’m missing the important part…

{
  "Id": "3H5jQ5hC29fxG8n",
  "ClassId": "7179dc60-66dd-11ec-916c-6911adb264b8",
  "Author": "mike@henkestrand.com",
  "Version": 0,
  "CreatedAt": "2022-01-04T08:26:32.476147408+01:00",
  "UpdatedAt": "2022-01-04T08:40:46.935588384+01:00",
  "Name": "test - Klokka 22:00 på alle dager",
  "Group": "timer",
  "Description": "send heating setpoint of  Julia’s Heater  to 18 ",
  "Nodes": [
    {
      "Id": "92",
      "Type": "time_trigger",
      "Label": "Klokka 22:00 på alle dager",
      "SuccessTransition": "95",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "",
      "Service": "tpflow",
      "ServiceInterface": "",
      "Config": {
        "DefaultMsg": null,
        "Expressions": [
          {
            "Comment": null,
            "Comments": "",
            "Expression": "0 22 * * 0,1,2,3,4,5,6",
            "Name": "Klokka 22:00 på alle dager"
          }
        ],
        "GenerateAstroTimeEvents": false,
        "Latitude": 59.91273,
        "Longitude": 10.74609,
        "SunriseTimeOffset": null,
        "SunsetTimeOffset": null
      },
      "Ui": {
        "nodeType": "",
        "papp": {
          "nodeId": null,
          "nodeName": "time",
          "nodeType": "Timer"
        },
        "x": 542,
        "y": 140
      },
      "TypeAlias": "Time trigger"
    },
    {
      "Id": "93",
      "Type": "action",
      "Label": "send heating setpoint of  Julia’s Heater  to 18 if over 18",
      "SuccessTransition": "",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:cmd/rt:dev/rn:adax/ad:1/sv:thermostat/ad:1067667",
      "Service": "thermostat",
      "ServiceInterface": "cmd.setpoint.set",
      "Config": {
        "DefaultValue": {
          "Value": {
            "temp": "20",
            "type": "heat",
            "unit": "C"
          },
          "ValueType": "str_map"
        },
        "IsVariableGlobal": false,
        "LookupServiceNameAndLocation": false,
        "Props": {},
        "RegisterAsVirtualService": false,
        "ResponseToTopic": null,
        "VariableName": "",
        "VirtualServiceGroup": "ch_0",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "",
        "papp": {
          "nodeId": "6",
          "nodeName": "device",
          "nodeType": "deviceAction"
        },
        "x": 532,
        "y": 710
      },
      "TypeAlias": "Action"
    },
    {
      "Id": "94",
      "Type": "if",
      "Label": "Check Temp",
      "SuccessTransition": "",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "",
      "Service": "",
      "ServiceInterface": "",
      "Config": {
        "Expression": [
          {
            "BooleanOperator": "",
            "LeftVariableIsGlobal": true,
            "LeftVariableName": "Test_variable",
            "Operand": "gt",
            "RightVariable": {
              "Value": 18,
              "ValueType": "float"
            }
          }
        ],
        "FalseTransition": "",
        "TrueTransition": "93"
      },
      "Ui": {
        "nodeType": "",
        "x": 538,
        "y": 533
      },
      "TypeAlias": "If condition"
    },
    {
      "Id": "95",
      "Type": "action",
      "Label": "Get Temp from Thermostat",
      "SuccessTransition": "94",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:evt/rt:dev/rn:adax/ad:1/sv:thermostat/ad:1067667",
      "Service": "thermostat",
      "ServiceInterface": "evt.setpoint.report",
      "Config": {
        "DefaultValue": {
          "Value": "",
          "ValueType": ""
        },
        "IsVariableGlobal": false,
        "Props": {},
        "RegisterAsVirtualService": false,
        "ResponseToTopic": "",
        "VariableName": "",
        "VirtualServiceGroup": "",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "",
        "x": 527,
        "y": 344
      },
      "TypeAlias": "Action"
    }
  ],
  "Settings": null,
  "IsDisabled": true,
  "IsDefault": false,
  "ParallelExecution": "parallel"
}

No replies to this one? I am also looking for how to read the set temperature of the thermostat.

Nå har jeg ikke adax, men generelt gå til enheten i thinlplex.

Sjekk services , og se om du har en get som henter temperatur/ setpunkt.

Om den ikke kan gjøre det der, så kan du ikke… omcdu kan det det , så lan du kode det inn i en handling.

1 Like