Thermostat Setup

From OpenMotics
(Redirected from CLI Thermostat Setup)
Jump to: navigation, search

This guide describes the steps to setup multiple thermostats in your home by using the CLI interface.

Please note that the setup of the thermostats can also be accomplished by using the OpenMotics Graphical Cloud interface, in that case, no CLI instruction are needed.

To get thermostats set up, the following criteria need to be met first:

  • A Temperature Module with at least 2 Temperature Sensors connected
    • 1 Temperature Sensor installed at the outside of your home
    • 1 Temperature Sensor installed in a room or area
  • A Dim Control Module with at least one 0-10V heating valve connected or an Output Module with at least 1 heating Valve connected.
  • Both the Temperature and Dim Control Module must be initialized

Principles

Up to 24 Thermostats can be configured which have 1 Temperature Sensor and 1 or 2 outputs linked to it. Every Thermostat also has a current set-point and multiple preprogrammed set-points. The preprogrammed set-points can be copied to the current set-points by using basic actions or when the Thermostat is in automatic mode (driven by the timings per Thermostat and per day).

When the current set-point of a Thermostat is higher than the temperature measured by its Temperature Sensor, the Thermostat will activate its outputs. The way the outputs are driven is determined by the Thermostat' PID parameters. Every Thermostat has its own set of PID parameters that can be adapted to the size and behavior of the room and the type of heating used. More info on the PID parameter configuration can be found in the CLI Reference Guide.

The user can choose whether a Thermostat controls 1 or 2 outputs. With 2 outputs, the Thermostat will first activate the first one; when the room doesn’t heat fast enough (using the PID parameters), the second output will be activated as well. A typical example is that the floor heating of a room is connected to the first output, the second output will be used for a traditional convector that is added to the room for increased heating capacity.

2 modes are available:

Manual Mode
The current set-point is used and the preprogrammed timings are ignored. 3 Manual modes exist with each his set of pre-programmed temperatures: Away, Vacation and Party. Each Manual mode has a pre-programmed temperature setpoint for each room thermostat. When for example the thermostat of bathroom 1 has a programmed setpoint of 16 degree Celsius for vacation mode and when vacation mode is applied, 16 degree Celsius will be applied for Bathroom 1 and will remain as long as Vacation mode is applied. It is also possible to set until when (Date and Hour) the Manual mode must be kept before changing to automatic mode by using the OpenMotics Cloud.
Automatic Mode
The current set-point will be automatically changed (by copying the preprogrammed set-point in to the current set-point) depending on the time (and the day of the week).

Automatic Mode

Every Thermostat has 3 preprogrammed temperatures that are used in automatic mode:

  • Preprogrammed set-point 0
    • Day 1 temperature: This is the temperature used for the first part of the day
  • Preprogrammed set-point 1
    • Night temperature: This is the temperature used when not in day 1 or day 2
  • Preprogrammed set-point 2
    • Day 2 temperature: This is the temperature used for the second part of the day

These temperatures can be set per room (with each Thermostat) and per day of the week (Mon-Sun).

For every Thermostat, the timings can be programmed per day as described in following example:

  • Thermostat 0: (set-point 0: 22.5°C, set-point 1: 17.0°C, set-point 2: 22.0°C)
    • Monday
      • Day 1: 7:00 – 10:40 (will use preprogrammed set-point 0 – day1)
      • Day2: 17:30 – 22:50 (will use preprogrammed set-point 2 – day2)
      • The rest of the time preprogrammed set-point 1 – night will be used
    • Tuesday
      • Day 1: 6:00 – 8:30 (will use preprogrammed set-point 0 – day1)
      • Day2: 19:30 – 23:30 (will use preprogrammed set-point 2 – day2)
      • The rest of the time preprogrammed set-point 1 – night will be used
    • Wednesday
  • Thermostat 1: (set-point 0: 20.0°C, set-point 1: 16.0°C, set-point 2: 18.0°C)
    • Monday
      • Day 1: 6:00 – 7:00 (will use preprogrammed set-point 0 – day1)
      • Day2: 17:30 – 19:20 (will use preprogrammed set-point 2 – day2)
      • The rest of the time preprogrammed set-point 1 – night will be used
    • Tuesday
      • Day 1: 6:00 – 8:30 (will use preprogrammed set-point 0 – day1)
      • Day2: 20:30 – 22:00 (will use preprogrammed set-point 2 – day2)
      • The rest of the time preprogrammed set-point 1 – night will be used
    • Wednesday

When you switch from automatic to manual mode or vice versa all Thermostats will be affected.

The outside Temperature Sensor is used to determine the (programmable) threshold at which the entire Thermostat mechanism is turned off. For example, with the outside temperature threshold set to 18.0°C and it is exceeded: all Thermostats are turned off even when the current set-point is higher than the room temperature.

The system can also drive the pumps of your heating system. Multiple pump groups can be created. All the valve outputs that are driven by the same pump will be put in the same group. Each pump group will be linked to an output to drive the pump for that group. When 1 of the valve outputs is driven, the pump output will be activated automatically. For example, having 2 pumps in your house house: 1 for the ground floor and 1 for the first floor. A pump group is created for all the valve outputs of the ground floor heating and one for the valve outputs of the first floor heating. Pumps can also be delayed when slow valves are used.

Important Notes

  1. All instruction after ";" must be seen as comments
  2. In CLI mode, characters sent through RS232 can be echoed (echo on or echo off). In API mode they are never echoed
  3. Instructions are case sensitive
  4. As opposed to API mode, CLI mode has a variable instruction length
  5. Every instruction must be followed by a Carriage return (<CR>, DEC 13)
  6. Every successful instruction will return the requested information (or perform requested action) followed by "OK", otherwise "ERROR" is returned (wrong format, wrong parameters,…). All error codes are listed on the Error Codes page
  7. An instruction will only be executed if the Master has responded with "OK"
  8. To go from CLI to API mode type exit. To go from API to CLI mode type STRCM (capitals), followed by random characters until "ERROR 17" or "OK" appears
  9. To define in which mode (CLI or API) the system will be after boot, use cli mode write 255 for CLI mode and cli mode write 0 for API mode. Use cli mode read to read the CLI mode

Configuration

Below is a step-by-step configuration example on how to configure your Thermostats.

  1. Check if the Temperature Sensors are working
    • temperature list
  2. Check if the valve outputs are working (in this example by setting output 5 to maximum value 63)
    • output on 5 63
  3. Change the valve outputs type to “output” (in this example, output 5 will be set to output-> 0)
    • output type write 5 0
    • To read the output type, use the following instruction
      • output type read 5
  4. Give the valve outputs a name (in this example, output 5 will be named valve kitchen)
    • output name write 5 Valve Kitchen
  5. When pumps are used, test the pump outputs (in this example output 21)
    • output on 21
  6. Change the pump outputs type to “output” (in this example, output 21 will be set to output-> 0)
    • output type write 21 0
    • To read the output type, use the following instruction
      • output type read 21
  7. Give the pump outputs a name (in this example, output 21 will be named pump 0)
    • output name write 21 Pump 0
  8. Give the Thermostats a name (in this example, thermostat 0 will be the kitchen)
    • thermostat name write 0 Kitchen
  9. Set the outside temperature sensor (in this example, sensor 0 is the outside sensor)
    • thermostat outside link write 0
    • To check which outside sensor is set
      • thermostat outside link read
  10. Set the outside temperature threshold (in this example 20.0°C)
    • thermostat threshold write 20.0
    • To check what the threshold temperature is
      • thermostat threshold read
  11. Link the temperature sensor to a Thermostat (in this example, link sensor 4 with thermostat 0)
    • thermostat sensor write 0 4
    • To read the linked sensor
      • thermostat sensor read 0.
  12. Link the valve output(s) to a Thermostat (in this example, link output 5 with thermostat 0, second output is not used -> 255)
    • thermostat link write 0 5 255
    • In this example, output 3 and 7 will be linked to Thermostat 1
    • thermostat link write 1 3 7
    • To read the linked output(s)
      • thermostat link read 0
  13. When pumps are used, add the valve outputs to a pump group (in this example, we will add output 3, 5 and 7 to pump group 0)
    • pump group write 0 0 3
    • pump group write 0 1 5
    • pump group write 0 2 7
    • To read the outputs that are programmed in a pump group
      • pump group read 0
  14. When pumps are used, link a pump output to a pump group (in this example, link output 24 to pump group 0)
    • pump output write 0 24
    • To read which pump output is linked to a pump group
      • pump output read 0
  15. Optionally, when a pump delay is needed, program the delay in seconds (0-248s) (in this example, a delay of 210 seconds is used)
    • pump delay write 210
    • To read the pump delay
      • pump delay read
  16. Set the PID parameters (for example for thermostat 0, setting P to 30, I to 10, D to 10 and It to 2)
    • pid config write 0 30 10 10 2
    • To check all programmed PID parameters
      • pid config list
  17. Set the current set-point of the Thermostats (in this example, we will set 22.0°C for thermostat 0)
    • current set-point write 0 22.0
    • To read the current set-point
      • current set-point read 0
  18. Check your configuration, temperatures, sensors, set-points, how the outputs are driven etc.
    • thermostat list
  19. It is also possible to see which influence the individual parameters have on the valve output. Because the thermostat function will read temperature and change outputs once a minute, this debug function will display the PID parameters every minute.
    • Enable PID debug
      • pid debug on
    • Disable PID debug
      • pid debug off