COMFORT-Technical-Reference-Manual-APP-2.1.pdf

<aside> đź’ˇ Applicable to APP versions: >= 2.1.0

</aside>

DOCUMENTATION GUIDE

TABLE OF CONTENTS

1. REGISTERS

1.1 Generic registers

Register Size (bytes) Base Description Default Value Range (Min-Max) Comments
304 2 10 PIN code 0
(deactivated)
0 - 9999 PIN code used with ATPIN command. Value 0 disables the PIN code.
306 1 10 Product mode
0 0: PARK
1: RUN In PARK mode, product is not using Radio.
In RUN mode, product will send/receive RF uplinks/downlinks.

1.2 Applicative registers

Register Size (bytes) Base Description Default value Min-Max Value Comments
300 2 10 Keep alive period 8640 (24h) 2 ... 65535 X 10 seconds
301 2 10 Transmit period of data

1 |   0 ... 65535 | Number of backups (history logs) to be done before sending a frame (thus defining the sending period). The value 0 is equivalent to disabling the periodic mode. | | 308 | 4 | 16 | LED activity | 0x40007F | 0 … 0xFFFFFFFF | Default: 40007F Other values : reserved | | 315 | 1 | 10 | Time zone offset | 0 | -12 … 14 | Defines the Time Zone offset from UTC (in hours). Must be defined for Daylight Saving Time management. | | 316 | 1 | 10 | Daylight Saving Time management | 0 | 0 … 1 | Only applicable for European countries. 0 : disabled 1 : enabled | | 318 | 1 | 10 | Time stamping | 0 | 0 … 1 | LoRaWAN only If enabled, adds a time stamp in data frames. 0 : disabled 1 : enabled | | 319 | 1 | 10 | RTCcalibration value | 0 | -100 … 100 | Allows correcting a possible drift of the clock. In tenths of a second per day. | | 320 | 2 | 10 | History period | 1 | 1 ... 65535 | Number of readings to be performed before saving in the history logs The value 1 is equivalent to 1 backup per reading | | 321 | 2 | 10 | Sampling period | 1800 (1h) | 0 ... 65535 | 0: no sampling X 2 seconds | | 322 | 2 | 10 | Alarm repetition period |   0 |   0 ... 65535 | If an alarm is active, this register allows the product to send periodically a reminder.   0 : no repetition X sampling period (S321) | | 323 | 1 | 10 | Number of additional (redundant) samples per frame |   0 |   0 ... 15 | Number of samples to be repeated in the next frame |

1.3 Alarm registers

1.3.1 Temperature

Register Size (bytes) Base Description Default value Min-Max value Comments
330 1 10 Alarm type 0(inactive) 0: Inactive
1: Low threshold
2: High threshold
3: Both thresholds
331 2 10 High threshold value 0 -200 … 600
(-20°C to +60°C) tenth of °C
332 1 10 High threshold hysteresis 0 0…255 tenth of °C
333 2 10 Low threshold value 0 -200 … 600
(-20°C to +60°C) tenth of °C
334 1 10 Low threshold hysteresis 0 0… 255 tenth of °C

1.3.2 Humidity

Register Size (bytes) Base Description Default value Min-Max value Comments
340 1 10 Alarm type 0(inactive) 0: Inactive
1: Low threshold
2: High threshold
3: Both thresholds
341 1 10 High threshold value 0 0 … 100
342 1 10 High threshold hysteresis 0 0 … 255
343 1 10 Low threshold value 0 0 … 100
344 1 10 Low threshold hysteresis 0 0 … 255

1.4 Digital inputs

Register Size (bytes) Base Description Default value Min-Max Value Comments
380 1 16 Configuration digital input 1 (button)

0x41 | <7:4> Debounce duration 0: no debounce 1: 10 ms 2: 20 ms 3: 50 ms 4: 100 ms 5: 200 ms 6: 500 ms 7: 1 s 8: 2 s 9: 5 s A: 10 s B: 20 s C: 40 s D: 60 s E: 5 minutes F: 10 minutes   <3:0> Type 0 = Deactivated 1 = Event ON 2 = Event OFF 3 = Event ON/OFF | | | 381 | 2 | 10 | Digital input 1 threshold |   1 |   1 ... 65535 | Number of detections When the number of detected events becomes above this threshold, an alarm is triggered | | 382 | 1 | 16 | Configuration digital input 2 |                   0x0 (deactivated) | <7:4> Debounce duration 0: no debounce 1: 10 ms 2: 20 ms 3: 50 ms 4: 100 ms 5: 200 ms 6: 500 ms 7: 1 s 8: 2 s 9: 5 s A: 10 s B: 20 s C: 40 s D: 60 s E: 5 minutes F: 10 minutes   <3:0> Type 0 = Deactivated 1 = Event ON 2 = Event OFF 3 = Event ON/OFF | | | 383 | 2 | 10 | Digital input 2 threshold |   1 |   1 ... 65535 | Number of detections When the number of detected events becomes above this threshold, an alarm is triggered | | 390 | 4 | 10 | Global counter for channel 1 | 0 | 0 – 4294967295 | In-RAM counter that accumulates the duration in seconds of the detected events on the channel   This register is not saved in EEPROM. Its value is therefore set to 0 if the product is not powered anymore | | 391 | 4 | 10 | Global counter for channel 2 |     0 |     0 – 4294967295 | In-RAM counter that accumulates the duration in seconds of the detected events on the channel   This register is not saved in EEPROM. Its value is therefore set to 0 if the product is not powered anymore |

1.5 Radio registers

1.5.1 LoRaWAN Network Registers

1.3.1 LoRaWAN Network Registers

Register Description Encoding Details
201 Spreading Factor (SF) by default (Read Only) Decimal Default: 12
Min/max: 7 to 12
Unit: None
204 Reserved Hexadecimal Do not use
214 LORA APP-EUI (first part – MSB) Hexadecimal Default: 0
Key encoded on 16 characters. Each register contains a part of
the key.
Used during the JOIN phase in OTAA mode
E.g.:
APP-EUI = 0018B244 41524632
• S214 = 0018B244
• S215 = 41524632
215 LORA APP-EUI (second part – MSB) Hexadecimal Default: 0
Key encoded on 16 characters. Each register contains a part of
the key.
Used during the JOIN phase in OTAA mode
E.g.:
APP-EUI = 0018B244 41524632
• S214 = 0018B244
• S215 = 41524632
216 LORA APP-KEY (firstpart – MSB) Hexadecimal Default: 0
Key encoded on 32-byte characters. Each of the 4 registers contains 8 characters.
Used during the JOIN phase in OTAA mode
E.g.:
APP-KEY = 0018B244 41524632 0018B200 00000912
• S216 = 0018B244
• S217= 41524632
• S218=0018B200
• S219= 00000912
217 LORA APP-KEY (second part – MID MSB) Hexadecimal Default: 0
Key encoded on 32-byte characters. Each of the 4 registers contains 8 characters.
Used during the JOIN phase in OTAA mode
E.g.:
APP-KEY = 0018B244 41524632 0018B200 00000912
• S216 = 0018B244
• S217= 41524632
• S218=0018B200
• S219= 00000912
218 LORA APP-KEY (thirdpart – MID LSB) Hexadecimal Default: 0
Key encoded on 32-byte characters. Each of the 4 registers contains 8 characters.
Used during the JOIN phase in OTAA mode
E.g.:
APP-KEY = 0018B244 41524632 0018B200 00000912
• S216 = 0018B244
• S217= 41524632
• S218=0018B200
• S219= 00000912
219 LORA APP-KEY (fourth part – LSB) Hexadecimal Default: 0
Key encoded on 32-byte characters. Each of the 4 registers contains 8 characters.
Used during the JOIN phase in OTAA mode
E.g.:
APP-KEY = 0018B244 41524632 0018B200 00000912
• S216 = 0018B244
• S217= 41524632
• S218=0018B200
• S219= 00000912
220 LoRaWAN Options Hexadecimal Default: 5
Bit 0: Activation of the ADR ON(1)/OFF(0)
Bit 1: Reserved
Bit 2: DUTY CYCLE ON(1)/DUTY CYCLE OFF(0)
Bits 3 & 4: Reserved
Bits 5: CLASS C (1)/ CLASS A (0)
Bits 6 to 7: Reserved
CAUTION:
Deactivation of the Duty cycle may result in a violation of the
conditions of use of the frequency band, depending on the use of the device, thus violating the regulations in force.
In the case of disabling the Duty cycle, liability is transferred to
the user.
221 Mode of activation Decimal Default: 1
Choice: (see NOTE 1 after the table)
• 0: ABP
• 1: OTAA
222 LORA NWK_SKEY (first part – MSB) Hexadecimal Default: 0
Parameter encoded on 16 bytes. 4 registers contains 4 bytes.
223 LORA NWK_SKEY(second part - MID MSB) Hexadecimal
224 LORA NWK_SKEY (third part - MID LSB) Hexadecimal
225 LORA NWK_SKEY(fourth part – LSB) Hexadecimal
226 LORA APP_SKEY (first part – MSB) Hexadecimal Default: 0
Parameter encoded on 16 bytes, each register with 4 bytes.
227 LORA APP_SKEY(second part - MID MSB) Hexadecimal
228 LORA APP_SKEY (third part - MID LSB) Hexadecimal
229 LORA APP_SKEY(fourth part – LSB) Hexadecimal
280 NETWORK ID Hexadecimal Default: 0 Read only
281 DEVICE ADDRESS Hexadecimal Default: 0

NOTE 1: The “Over The Air Activation” (OTAA) mode uses a JOIN phase before being able to transmit on the network. This mode uses the APP_ EUI (S214 and S215) and APP_KEY (S216 to S219) codes during this phase to create the keys for network communication.

Once this phase is completed, the codes APP_sKEY, NWK_sKEY and DEVICE ADDRESS will be present in the corresponding registers. A new JOIN phase is started every time the device exits Command mode, a reset is performed, or the device is turned on.

Codes:

The “Activation by personalization” (ABP) mode has no JOIN phase; it transmits directly on the network using the codes NWK_sKEY (S222 to S225), APP_sKEY (S226 to S229) and DEVICE ADDRESS (S281) to communicate.

Codes:

Register Size (bytes) Base Description Default Value Range (Min- Max) Minimum required Application version Comments
303 1 10 LoRaWAN Confirmed mode
0
0-1
V1.2.0 0: deactivation
1: activation
312 4 10 Maximum delay between 2 authentication attempts
43200 (12h)
60-
2592000

V2.1.2 | X 1 second Period: 1 minute to 30 days | | 313 | 2 | 10 | Weighting factor for initial authentication attempts | 1 | 1-65535 | V2.1.2 | | | 314 | 1 | 10 | Number of tries for each authentication attempt | 10 | 1-255 | V2.1.2 | |

1.5.2 Sigfox Network Registers

1.3.2 Sigfox Network Registers

Register Size (bytes) Base Description Default Value Range (Min- Max) Comments
307 2 10 Sigfox Downlink period 1440 (24h) 0-65535 X 1 minute
⇒  Period : 1 min to 45 days
317 1 10 Sigfox Duty cycle 1 0-1 0: Duty cycle deactivated
1: Duty cycle activated

Not displayed anymore in LoRaWAN since 2.0.0 |

1.6 Coherency check

A configuration coherency check is made at the time of the backup. Cases where backups are refused because considered as inconsistent:

| --- | --- |

2 RADIO PROTOCOL

Data with size greater than 1 byte will be transmitted MSB first. In LoRaWAN, frames are sent on port 1.

2.1 Status byte

All frames sent by the product contain a status byte. Its format is identical for all IoT Adeunis products.

| --- | --- | --- | --- | --- | --- | --- |

The status byte provides two bits reserved for a specific use of each product (AppFlag1 and AppFlag2). For this product:

2.2 Uplink Frame format

2.2.1 Product configuration (0x10)

This frame is sent following the reception of a frame with code 0x01, or at the start of the product.

| --- | --- | --- |

Decoding example:

| --- | --- | --- |

2.2.2 TOR configuration (0x1F)

This frame is sent following the start of the product (except when it is a reboot after a downlink).

| --- | --- | --- |

Decoding example:

| --- | --- | --- |

2.2.3 Network configuration (0x20)

This frame is sent following the reception of a frame with code 0x02, or at the start of the product.