Deprecated temperature control algorithms
Proportional control algorithm
Devices with firmware version >=4.3 have this algorithm removed as the Proportional Integral control algorithm has been deemed superior due to delivering better results.
Algorithm logic
This control algorithm is used by the device to achieve the desired target temperature. Each time the algorithm logic is executed, the motor position is adjusted, so the target temperature is reached. The following block diagram explains the requirements in order for the proportional algorithm logic to be executed.

The proportional algorithm logic calculates new motor position using the expression:
, where:
: New motor position in steps.
: Old motor position in steps.
: Proportional algorithm coefficient.
: Target temperature in Celsius degrees.
: Measured temperature in Celsius degrees.
: Motor range in steps.
Note that the algorithm check period and coefficient parameters can be configured by radio commands.
Proportional temperature control algorithm parameters
0
2A – The command code.
1
XX – Value for the proportional algorithm coefficient to be set. Maximum acceptable value is 20.
2
XX – Value of the proportional algorithm control period, in minutes.
Example command: 0x2A040C – Set the proportional algorithm coefficient to 4 and the check period to 12 minutes.
0
29 – The command code.
29 – The command code.
1
XX – Value of the proportional algorithm coefficient. Maximum acceptable value is 20. Default value is 3.
2
XX – Value of the proportional algorithm control period, in minutes. Default value is 10 minutes.
Example command: 0x29
Example response: 0x29030F – Coefficient: 3, control period: 15 minutes.
Equal directional control algorithm
This algorithm is NOT available in f.w. >= 4.2
Internal temperature control algorithm parameters
This command must be used carefully and according to the used online temp. control algorithms. Be sure that the default command parameters aren’t satisfactory before overwriting them. The following parameters are introduced for ease of command explanation:
Pfirst/last: Indicate the first motor position change in valve opening direction and the last motor position change in valve closing direction;
Pnext: Indicate the next motor position change in valve opening/closing direction;
Talg: The period for motor position change decisions depending on the desired and measured temperatures;
Tdiff open/close: Temperature difference between the target and measured temperatures, to be surpassed, to get decision for valve movement. This parameter is set with separate command for compatibility with older device software versions.
Check Figure 1 for command and entire internal algorithm operation understanding. The example scenario shown on the figure is for heating primary device mode. The algorithm operation is analogical for cooling device primary mode with the only difference that under cooling mode the valve is opened in order to lower the ambient temperature, not to rise it. Check the table below for additional algorithm understanding under different device primary modes.
Device primary mode
Heating
Cooling
Valve opened if
Valve closed if
! Important note on the algorithm operation.
The implemented temperature control algorithm is compliant with the stepper motor mechanical system. It's mandatory the valve to be opened and later closed with same number of movements per direction. Also, each movement at one of the directions must be with equal number of steps, to the corresponding movement to the other direction. This fashion of motor control is needed, to struggle the loss of generated steps, due to the motor mechanical system backlash. It can be observed in the image below.
If Vicki works in mode at which the motor position is set through the server, it is mandatory the server moves the valve with same number of steps, as the internal algorithm (Pfirst/last, Pnext). Also, Pfirst/last/next values less than 16 steps are meaningless.

The table below described the commands to SET/GET the device internal temperature control algorithm parameters, except the Tdiff open/close which is set with separate command.
Byte index
Hex value - Meaning
0
0C – The command code.
1
XX – Internal algorithm temperature check period in minutes – Talg.
Default value for firmware <3.5 is 20min. Default value for firmware >=3.5 is 10 min.
2
XX – Internal algorithm first/last opening/closing steps – Pfirst/last. Default value 20 steps.
3
XX – Internal algorithm next opening/closing steps – Pnext. Default value 20 steps.
Example command: 0x0C131111
With the example command, the internal temperature control algorithm parameters are set as follows: Talg = 19 minutes, Pfirst/last = 17 steps, Pnext = 17steps.
For f.w. version <= 4.0: The minimum applicable value for Pfirst/last and Pnext is 17 steps!
For f.w. version >= 4.1: The minimum applicable value for Pfirst/last and Pnext is 8 steps!
If you set a lower value, the device will misbehave!
Byte index
Sent request
Received response
0
16 – Command code.
16 – The command code.
1
XX – Internal algorithm temperature check period in minutes – Talg.
2
XX – Internal algorithm first/last opening/closing steps – Pfirst/last.
3
XX – Internal algorithm next opening/closing steps – Pnext.
Example command: 0x16
Example response: 0x16141111 – Talg=20 minutes, Pfirst/last=17 steps,
Pnext=17 steps.
Internal temperature control algorithm parameters – Tdiff only
These commands are used to SET/GET the Tdiff open/close parameters.
Byte index
Hex value - Meaning
0
1A – The command code.
1
XX – Tdiff open value, [°C]. The resolution is 1°C. Default value is 0x01 (1°C) for firmware <3.5. Default value is 0x00 (0°C) for firmware >= 3.5.
2
XX – Tdiff close value, [°C]. The resolution is 1°C. Default value is 0x01 (1°C) for firmware <3.5. Default value is 0x00 (0°C) for firmware >= 3.5.
Example command: 0x1A0201
With the example command, Tdiff open is set to 2°C and Tdiff close is set to 1°C.
Byte index
Sent request
Received response
0
17 – Command code.
17 – The command code.
1
XX – Tdiff open value, [°C]. The resolution is 1°C.
2
XX – Tdiff close value, [°C]. The resolution is 1°C.
Example command: 0x17
Example response: 0x170201 – Tdiff open=2°C, Tdiff close=1°C.
Last updated
Was this helpful?