Heating schedules
Before you start
For heating schedules to work correctly, you have to make sure three things are configured correctly first:
Device time
By default, Vicki asks the LoRaWAN network for the current UTC time (using a MAC command). If the time is not correctly set by the LoRaWAN Network Server, you might want to set it yourself and disable the MAC command syncing
Device time-zone
Adjust the correct time-zone based on UTC where the device is installed.
Heating season start and end date
To minimize motor movements, the heating schedules are only executed during the heating season.
Good practices
When your country switches from daylight savings time to winter time, adjust the time-zone correctly and automatically.
The easiest way to sync time is through the LoRaWAN MAC command that Vicki sends to the LNS. While this works on all LNS we've tested so far, please make sure it works on your instance too.
To make sure that the device has the correct time, it'll send the current reading to the Application Server. In case the UNIX timestamp sent is not correct, use a SET command to set the correct time and consider turning off the MAC sync.
Decide on the heating start/end dates wisely so that Vicki doesn't move the motor when the heating system is still not operational.
Heating event details
This command is used to configure the device's internal heating schedule. Maximum of 20 events are supported, which are executed at individual time slots during the day and the user can choose on which week-day they are to be executed/repeated. This allows to precisely control the device target temperature on a week day, hour and minute basis.
Byte index
Hex value / Meaning
0
59 – command code
1
Event index – 0–19 for configuring of total 20 events.
2
Starting hour for a given heating event – 0–23.
3
Starting minute for a given heating event – 0–59.
4-MSB 5-LSB
Target temperature to be set at the heating event beginning, represented in Celsius degrees multiplied by 10, in order to support point decimal values. Min. allowed value – 50 (5°C)
Max. allowed value – 300 (30°C).
6
Mark which day the heating event will be executed/repeated for.
A bit value 0 means disabled, 1 means enabled. Bit 0 is for Monday, bit 6 is for Sunday.
Example command: 5900080101021F59020600006460
00– Configure event index 0:08 01– Starts at 08:0101 02– Target = 25.8°C1F– Monday to Friday
02– Configure event index 2:06 00– Starts at 06:0000 64– Target = 5.0°C60– Saturday to Sunday
Hex value – Meaning
Byte index
Sent request
Received response
0
5A – The command code.
5A – The command code.
1
00 – Get events 0–7; 01 – Get events 8–15; 02 – Get events 16–19.
Same global index value as the request.
2…41
Heating events, as described in the corresponding set command, but without individual index for each event. Note that the response length for heating events with index 16-19 equals the length for the other indexes and the unused indexes are filled with zeros.
Example command 1: 0x5A00
Example response 1: 0x5A00 080101021F 0000000000 0000000000 0000000000 0000000000 0000000000 0000000000 0000000000
0x5A00 – Response contains configuration for heating events with indexes 0-7.
0x080101021F – Configuration of heating event with index 0 – from Monday to Friday set target temperature of 25.8°C at 8:01 o'clock.
0x0000000000 – events with index 1-7 aren't configured.
Example command 2: 0x5A02
Example response 2: 0x5A02 070100DC1F 080101021F 090100F01F 060F00B440 0000000000 0000000000 0000000000 0000000000
0x5A02 – Response contains configuration for heating events with indexes 16-19.
0x070100DC1F – Configuration of heating event with index 16 – from Monday to Friday set target temperature of 22.0°C at 7:01 o'clock.
0x080101021F – Configuration of heating event with index 17 – from Monday to Friday set target temperature of 25.8°C at 8:01 o'clock.
0x090100F01F – Configuration of heating event with index 18 – from Monday to Friday set target temperature of 24.0°C at 9:01 o'clock.
0x060F00B440 – Configuration of heating event with index 19 – from Saturday to Sunday set target temperature of 18.0°C at 6:15 o'clock.
Activate/deactivate heating events
In order for a given heating event to be executed regularly it should be marked as activated. It is automatically set to active when configured via a valid configuration command 0x59.
An event can be activated/deactivated at any time, this will not erase the event itself (the settings will be preserved for later use).
Byte index
Hex value / Meaning
0
6B – command code
1
Event index – 0–19 for configuring of total 20 events.
2
Event state – 1 to activate, 0 to deactivate.
Example command 1: 0x6B0000 – deactivates the heating event at index 0.
Example command 2: 0x6B1001 – activates the heating event at index 16.
Hex value – Meaning
Byte index
Sent request
Received response
0
6C – The command code.
6C – The command code.
1
Reserved
2
State of heating events with indexes from 19 to 16.
3
State of heating events with indexes from 15 to 8.
4
State of heating events with indexes from 7 to 0.
Example command: 0x6C
Example response: 0x6C00078003
0x07 - events at indexes 18, 17, and 16 are active.
0x80 – event at index 15 is active.
0x03 – events at indexed 1 and 0 are active.
Heating season start and end dates
The heating schedule start and end dates are usually the heating season start and end dates. The configured heating events will be executed/repeated throughout that time.
To disable the internal heating schedule, simply send the command with either start or end day set to 0.
Byte index
Hex value / Meaning
0
5B – command code
1
Starting month – 0–11.
2
Starting day – 1–31; 0 disables schedule handling.
3
End month – 0–11.
4
End month day – 1–31; 0 disables schedule handling.
Example command 1: 0x5B0A010301
0x0A01 – Start date is 1st of November;
0x0301 – End date is 1st of April.
Example command 2: 0x5B0A000300 – completely disable internal heating schedule handling.
Hex value – Meaning
Byte index
Sent request
Received response
0
5C – The command code.
5C – The command code.
1
Start month – 0–11.
2
Start month day – 1–31.
3
End month – 0–11.
4
End month day – 1–31.
Example command: 0x5C
Example response: 0x5C0A010301
0x0A01 – Start date is 1st of November;
0x0301 – End date is 1st of April.
Example heating schedule
The whole heating schedule functionality can be configured with single downlink:
0x5FFD5D6860D6605B060103015900080A01041F5901090A00E61F590206000064605E
0x5FFD - Set time zone UTC-3;
0x5D68A1CDE9 - Set device date and time;
0x5B06010301 - Heating schedule will be executed from 1st of July to 1st of April;
0x5900080A01041F - Set heating event 0 – 26.0°C at 8:10 from Monday to Friday;
0x5901090A00E61F - Set heating event 1 – 23°C at 9:10 from Monday to Friday.
0x59020600006460 - Set heating event 2 – 10°C at 6:00 from Saturday to Sunday.
0x5E = Get device time to be sure the downlink is received.
Last updated
Was this helpful?