VAQA'O Lite sensor
Presentation
The VAQA'OLt sensor is a LoRaWAN class A sensor powered through 2 AA battery internal slots. Usually, it is powered with 2 x 2600 mAh AA Lithium Batteries (supporting also Alkaline 1.5V). VAQA'OLt can measure following environemental parameters: Temperature, Hygrometry, Carbon dioxyde (CO2) and permanently survey displacements of the whole sensor.
|
50-70-223-xxx : VAQAOLt |
|
Installation and operation
Installation
Manual and QuickStart guide are available in our download center.
The housing should be installed inside a building, must be protected from any water spray and must be used in environnement with less than 80% relative humidity. The product should not be installed in direct heat source (Heater, sunlight, ...) to avoid local heating effects that may alter a global estimation of environmental parameters in the measured room. The product should be installed in a representative position in regard of the required environemental parameters survey. Usualy, it should be installed between 1m50 and 2m50 from floor.
The product has 1 Green Led, 1 Red led, 1RGB led and two "reed switches" as human to machine interface. These elements should positioned as shown below when installing the sensor.
To correctly install the sensor:
- Open the product from the two clips at the bottom using a small flat screwdriver.
- Use the base as a template and obtain horizontality using a level. Then hang the base on the wall using screws or double-sided tape. Thanks to the noticeably light weight of the product, you can use only two screws.
- Once done you can clip back the front, containing electronic parts, on the base.
- Please, DO NOT USE centered holes for the screws as their heads may interfere with the batteries!
Once installed, the two LEDs are visible through the bottom vertical windows and the reed switches ("ILS" marked) can be actuated like simple buttons using a magnet.
Replacing batteries
Batteries should be replaced with lithium-thionyl-chloride (Li-SOCI2) LR6/AA of 2600mAh each (example: SAFT LS14500). Alkaline 1.5V batteries could also be used however the life expectancy will be reduced. The batteries can be replaced on the fly, one after each other, as each battery slot is protected against side overvoltage.
However, operator must carefully avoid any short circuit or electrostatic discharge during battery replacement.
Steps to replace batteries are:
- Open the product from the two clips at the bottom using a small flat screwdriver.
- Use a plastic spludger to extract batteries from their slots and replace them with new ones.
BEWARE that batteries must all be placed in the same direction. Notice the "+" sign on the PCB.
Renew this operation for the 2 other batteries. - Once done you can clip back the front containing electronic parts, on the base starting from upper side.
Batteries replacement principle TODO: When ready insert technical drawing of battery replacement The information in the table below represents how long the batteries can last. It is based on the default configuration at ambient temperature (+25°C) within the optimal operating range of the sensor via a LoRaWAN network (one uplink frame), when the spreading factor used is SF12. Following estimations are given with default reporting configuration and using two 2.6Ah capacity 3,6v AA Li-Ion batteries installed, of which 85% is used. Battery life expectancy : 3 LEDs are available on VAQAOLt. 2 LEDs Green and Red are visible through the down ears of the sensor. These are the usual leds of Watteco sensors giving indication about current "Network status and running modes". One more led (RGB) is available in the front of the sensor mainly used as a "CO2 level visual indicator" and can also be used during "Operator calibration actions" when "Calibration and IAQ button" on the right side of the sensor is used. Network status and running modes HMI (Watteco sensors common behaviour) There are, 1 reed switch (label ILS) and two LEDs to interact with the product: GREEN LED : LoRaNetwork status, mainly working when sensor try to join a network. Standard reports are disabled during this configuration mode. The sensor keeps the AppEUi and DevEUI configured, Confirmed/Unconfirmed configuration and all applicative configurations. However, LoRaWAN configurations (channel, data rate…) are lost. The sensor keeps the AppEUi and DevEUI configured. However, LoRaWAN configurations (channel, data rate…) and applicative configurations are lost. Automatic CO2 Level indicator HMI Below the Default automatic display of current CO2 level. Notice that VAQAOlt gives the visual indication about co2 level on its "IAQ led" according to some tunable parameters like Period or Thresholds. Please refer to "Concentration levels classification attributes" to learn more about that function. User triggered CO2 Level indicator HMI User can require an immediate display of current CO2 level indication by one TAP or one magnet pass or on the right ILS (reed switch) of the sensor. After that the current level will be displayed through 7 blinks with the current CO2 level indication. CO2 Calibration HMI and fresh air calibration selection The calibration can be managed through magnet HMI. During this process the user can, These functions can be actuated by starting the Calibration configuration process with 3 passes on the right ILS (reed switch) with the Magnet. When started the IAQ Led indicator will chase across the 3 colors Orange, Green, Blue during 30s. From there the device is waiting for action selection. The following animation shows a case where the user, looks at current ABC state (First pass => gives Orange so ABC is OFF), then roll over possible actions, and finally actuate an immediate "fresh air calibration" (Green). Once any action is selected, this one will startup about 10s later without any new action (pass) from the user. And notice that any multiple quick passes with the magnet during this selection will interrupt current calibration process. CO2 Calibration HMI : Example of calibration running Below shows a "calibration process running". It can occur after having selected an "immediate fresh air calibration" or "when a periodic ABC is running ". It will then display successively following states: CoDecs are available to decode frames: Downloads All downlink frames have to be sent on port 125 Please, try and see also Watteco Online codecs The VAQA’O device implements many applicative clusters associated to different sensors entries. The associations between measurement functionalities and EndPoints/Clusters are shown below: VAQA'OLt sensors implements a default Batch and Standard configuration that manages all embedded measurements through a periodic reporting of up to 2 frames per hour. This default configuration can be summarized as follow: It records environmental parameters with a 10 minutes max time sampling and sends them once or twice per hour: On VAQAOLt : It monitors critical events on environnemental parameters Any of these configurations can be removed or modified, and some different ones can be set. However, every change made to the default configuration must comply with the legal duty cycle. For example, the most restrictive in the EU is 0.1%, corresponds to approximately 2 frames per hour with the most constrained Spreading Factor : SF12. VAQA'OLt # . All report unconfirmed From this revision VAQA'O sensors has got an alternate default configuration that can be activated instead of default one. In this alternate configuration Batch is not used. Beware that this configuration is more verbose on radio and will drain battery faster. Following configuration commands can be used to swap between default configuration and alternate one: VAQA'OLt Alternate 'No batch' configuration # All report unconfirmed Codecs are available to decode frames: Downloads Please, try and see also Watteco Online codecs Typical VAQA'OLt batch report Input uplink frame to decode: 303480878e3001a70858829068d7846940ca02da798223d0ae09d36e5912c002 Batch attributes : 3 1,10,7,T 2,100,6,H 3,10,6,CO2 Decoding results: (Try it) { Report on case opened (violation) Input frame: 110a000f00551001 Decoded payload: (Try it) {"version": "Frame_Codec_v_1.0.svn5087", "TimeStamp": "2020-03-02 17:01:45.232452"} Alarm on Humidity level getting lower than specified threshold Input frame: 318a0405000021053398b0 Decoded payload: (Try it) {"version": "Frame_Codec_v_1.0.svn5087", "TimeStamp": "2020-03-02 16:58:38.024454"} Alarm on CO2 level getting lower than Thresold Input frame: 318a800c000021023a98b0 Decoded payload: (Try it) {"version": "Frame_Codec_v_1.0.svn5087", "TimeStamp": "2020-03-02 17:06:46.277547"}Autonomy
With the default configuration the sensor will record all significative measurements up to once each 10 minutes and at least once per hour. Then batch reports will be regularly send containing all these last measurements. It may contain several sample for any of the measured parameters (T, H, CO2). Some specific reports/alarms may also be sent because of default configuration (case opening, threshold crossing for Temperature, Humidity, CO2, ...). Due to all these possibly reported information, consumption estimation is based on a periodic transmission in range from 20 minutes to one hour.
Transmission periodicity Spreading factor VAQAO2Lt
1 Frame / Hour SF12 3,7 Years
3 Frames / Hour SF12 2,6 Years
1 Frame / Hour SF9 4,5 Years
3 Frames / Hour SF9 4,2 Years
Human Machine Interface
RED LED : miror of "Reed switch" actuation, and working during configuration mode.
Switch ON
(disable storage mode)1 second
Switch OFF
(enable storage mode)5 seconds
Consequently, "Void" frames are then sent every minute for 10 minutes allowing to probe uplink communication and send quickly downlink frames (configurations, requests, ...) to the class A sensor.
Way to trigger it One press on the USER button or specific ZCL command
Way to stop it Another press on the USER button or specific ZCL command
Effects on the sensor The CONF led (red) blinks (3 sec. OFF, 3 sec. ON) and the sensor sends an uplink frame every minute. The blinking is illustrated below this table.
Duration The configuration mode lasts 10 minutes when it is triggered by pressing the USER button
Way to trigger it Three short presses on the USER button or ZCL command from LoRaWAN cluster.
Effects on the sensor The ASSO LED (green) blinks as the “no commissioned sensor” LED is lit.
Way to trigger it Two short presses and one long press for approximately 7 seconds on the USER button.
Effects on the sensor The CONF LED (red) and ASSO LED (green) blink at the same time briefly. All the applicative settings (for batches and reports) are deleted. The blinking is illustrated below this table.
Excellent to Good
(Period: 30s)
Average to Bad
(Period/2: 15s)
Very Bad to Unhealthy
(Period/4: 7s)
Triggered with Tap
showing Good
Triggered with magnet
showing Average
Each action can now be successively required by one more short pass with the magnet. The first short pass will show the current ABC calibration state: Blue => ABC ON; Orange ABC OFF. The next short passes will turn around the four following states:
Applicative layer
Cluster Cluster name EndPoint: Rôle Product Managed attributes
0x0402 Temperature EP1 (0x31): Accuracy +/-0,2°C [1/100 °C] All All
0x0405 Relative humidity EP1 (0x31): Accuracy +/-2% [1/100 %RH] All All
0x800C Concentration EP1 (0x31): CO2 [ppm] All All
0x000F Binary input EP0 (0x11): Effraction status [1: Yes 0: No] All All
0x0000 Basic EP0 (0x11): Sensor firmware and hardware informations All All
0x0050 Configuration EP0 (0x11): Sensor global configuration parameters and commands All All
0x8004 LoRaWAN EP0 (0x11): Sensor LoRaWAN parameters management All All
Default configuration
The "Batch" configuration
The "Standard" configuration
Detailed default configurations
08 11 05 8004 0000 08 00
#
# . CO2 Configuration
# Set Autocalibration period to 5 days and UNACTIVATED by default
08 31 05 800C 8009 20 05
# Since VAQAO V2. A bit can activate(01)/inactivate(00). [and (02) for only under min ABC (under test)]
# Used to activated or deactivated by downlink or HMI without loosing clibration period.
# Note: Calibration period must also be != 0, to validate 01 activation
08 31 05 800C 800A 20 00
# Set normal min concentration value: 430ppm (0x01AE)
09 31 05 800C 8008 21 01AE
# Set number of oversampling points to 5 (Mainly for CM1106NS sensor) (Effective used number is coerced in 1 to 32)
08 31 05 800C 8011 20 05
#
# . IHM LED ON CO2 :
#09 11 05 800C 8020 21 FFFF
09 31 05 800C 8020 21 001E
#
# . IHM BUZZER ON CO2 :
# CO2 default unactivated : Alarm period=0xFFFF; Alarm pause period = (24 * 60) mn; Thresh High/Low UNHEALTHY/VERY_BAD
09 31 05 800C 8031 21 FFFF
09 31 05 800C 8032 21 05A0
08 31 05 800C 8033 20 05
08 31 05 800C 8034 20 04
#
# LIS2DE TAP detection (Think about devopt LIS2DE et TAP bit activation (cf InfoMem.7010xxxVyy))
# Note about TAP configuration examples:
# 0x9410 : (b10 0101 00 / 0 0010000) Click/100Hz/2g/(16*16)=256mg
# 0x5503 : (b01 0101 01 / 0 0000011) Chock/100Hz/4g/(3*32)=96mg
# 0x5D03 : (b01 0111 10 / 0 0000011) Chock/400Hz/8g/(3*62)=186mg
# 0x5703 : (b01 0101 11 / 0 0000011) Chock/100Hz/16g/(3*186)=558mg
09 11 05 000c 8004 19 9410
#
# . Delete all report configurations (Batch and Standard)
06 11 50 0050 02 03
#
# ----------------------- CONFIGURE ACTIONS -------------------------
#
# ACTION 0: Starts a Fresh air calibration
0D 11 05 0050 FF00 41 05 31 50 800C 03
#
# ------------------------ STANDARD REPORTS -------------------------
# . POWERDESC [mV]
# . Periodic MAX = 1 J => 1440mn => x85A0; MIN = 10mn => 0x800A
# . Length of remaining payload (for 0x41 type ): 0x08
# . ALARM on power treshold : 2,9v (hyst 100mV)
# RP : NewCfg/Reserved/ShortCause/SecuredIfAlarm/AllNotSecured/HeaderKept/NotBatch : b 1 0 01 1 0 0 0 ==> x98
# CSD : IsAlarm/OnExceed/OnFall/Threshold/Slot0 : b 1 1 1 10 000 ==> xF0
# Disposable battery field index : 0x04
# THRS: 2900 : 0x0B54; HYST: 100 mV : 0x0064
# OCC : 2
14 11 06 0050 98 0006 41 800A 85A0 07 F0 04 0B54 0064 02
#
# . VIOLATION (Effraction based on sensor displacement) ([Binary state 0/1]
# . Configure POLLING PERIOD based on REPORT CONFIGURATION (0xFFFF)
09 11 05 000F 0403 21 FFFF
# . Box openning and closing
# Min 10s => 0x000A, Max max, Delta=1
0D 11 06 000F 00 0055 10 000A FFFF 01
#
# . CO2 CONCENTRATION [ppm]
# STANDARD REPORT:
# . Periodic MAX = Inf => xFFFF; MIN = 10mn => 0x800A
# . ALARM on treshold HIGH: 1500; hyst 100
# RP : NewCfg/Reserved/ShortCause/SecuredIfAlarm/AllNotSecured/HeaderKept/NotBatch : b 1 0 01 1 0 0 0 ==> x98
# CSD : IsAlarm/OnExceed/OnFall/Threshold/Slot0 : b 1 1 1 10 000 ==> xF0
# THRS: 1500 : 0x05DC; HYST: 100 : 0x0064
# OCC : 2
12 31 06 800C 98 0000 21 800A FFFF F0 05DC 0064 02
#
# Force a fresh air calibration if concentration is under Normal min concentration value (Under test)
# . Periodic MAX = Inf => xFFFF; MIN = 10mn => 0x800A
# . ALARM on treshold LOW:
# Fresh air band is : 430 +/-65 (based on error specification/and experiment of sensor: 40 + (5*430/100))
# Try to go back to correct fresh air if : reading is < 430 - 65, ie: 365 => Set a threshold at 360 +/- 5
# RP : NewCfg/Reserved/ShortCause/SecuredIfAlarm/AllNotSecured/HeaderKept/NotBatch : b 1 0 01 1 0 0 0 ==> x98
# CSD : IsAlarm/OnExceed/OnFall/ThresholdWithAction/Slot1 : b 1 0 1 11 001 ==> xB9
# THRS: 360 : 0x0168; HYST: 5 : 0x0005
# OCC : 2
# ACTION: (Without report b1 / taille 2 b000 0010) (82) / Fresh air calibration (0000)
15 31 06 800C 98 0000 21 800A FFFF B9 0168 0005 02 82 0000
#
# Report CALIBRATION STATUS, on calibration ended
# . Periodic MAX = Inf => xFFFF; MIN = 10s => 0x000A
# . DELTA on treshold LOW: 430; hyst 50
# RP : NewCfg/Reserved/ShortCause/SecuredIfAlarm/AllNotSecured/HeaderKept/NotBatch : b 1 0 01 1 0 0 0 ==> x98
# CSD : IsAlarm/OnExceed/NotOnFall/Delta/Slot0 : b 1 1 0 01 000 ==> 0xC8
# DELTA : EndClockS field (1) changed : 0x00000001
# OCC : 1
13 31 06 800C 98 8000 41 000A FFFF 06 C8 01 00000001
#
# ------------------------- BATCH REPORT ---------------------------------------
# . TEMPERATURE (SHTC3)
# Min 10mn => 0x800A, Max 1h, Delta=0.1degC, resol=0.1degC, Tag Label 1, Tag Size 3, Type I16 7
11 31 06 0402 15 0000 00 800A 803C 000A 000A 0B
# . HYGROMETRY (SHTC3)
# Min 10mn => 0x800A, Max 1h, Delta=1%, resol=1%, Tag Label 2, Tag Size 3, Type U16 6
11 31 06 0405 15 0000 00 800A 803C 0064 0064 13
# . CO2 CONCENTRATION (CM1106NS)
# Min 10mn => 0x800A, Max 1h, Delta=10ppm,resol=10, Tag Label 3, Tag Size 3, Type U16 6
11 31 06 800C 15 0000 00 800A 803C 000A 000A 1BAlternate 'No Batch' configuration
Detailed alternate 'No batch' configurations
08 11 05 8004 0000 08 00
#
# Remove current reports configuration (Standard and batchs)
06 11 50 0050 02 03
#
# T: 30mn or variation of 0.4degC, no more than once per minute
0F 31 06 0402 80 0000 29 8001 801E 48 0028
#
# RH: 30mn or variation of 4%, no more than onceper minute
0F 31 06 0405 80 0000 21 8001 801E 48 0190
#
# VBATT: 24 h or variation of 0.5V, no more than once per minute
12 11 06 0050 00 0006 41 800a 85a0 05 00 04 01f4 00
#
# VIOLATION: 24 h or changing, no more than once per minute
0D 11 06 000f 00 0055 10 8001 85a0 01
#
# CO2: Periodic report + calibration under normal min level
# 1h or variation of 100ppm, no more than once per 10 minutes secured to avoid missed data
0F 31 06 800c 84 0000 21 800a 803c 48 0064
# Force a fresh air calibration if concentration is under Normal min concentration value (see parameters in default CFG 0)
15 31 06 800C 98 0000 21 800A FFFF B9 0168 0005 02 82 0000
# Report CALIBRATION STATUS, on calibration ended (see parameters in default CFG 0)
13 31 06 800C 98 8000 41 000A FFFF 06 C8 01 00000001Received frame examples
Batch report
"batch_counter": 4,
"batch_relative_timestamp": 993649,
"batch_absolute_timestamp": "2022-11-02T14:36:00.535",
"dataset": [
{
"data_relative_timestamp": 990648,
"data": {
"value": 2370,
"label": 1,
"label_name": "T"
},
"data_absolute_timestamp": "2022-11-02T13:45:59.535Z"
},
{
"data_relative_timestamp": 993048,
"data": {
"value": 2360.0,
"label": 1,
"label_name": "T"
},
"data_absolute_timestamp": "2022-11-02T14:25:59.535Z"
},
{
"data_relative_timestamp": 993648,
"data": {
"value": 2350.0,
"label": 1,
"label_name": "T"
},
"data_absolute_timestamp": "2022-11-02T14:35:59.535Z"
},
{
"data_relative_timestamp": 993048,
"data": {
"value": 6800,
"label": 2,
"label_name": "H"
},
"data_absolute_timestamp": "2022-11-02T14:25:59.535Z"
},
{
"data_relative_timestamp": 990561,
"data": {
"value": 590,
"label": 3,
"label_name": "CO2"
},
"data_absolute_timestamp": "2022-11-02T13:44:32.535Z"
},
{
"data_relative_timestamp": 992361,
"data": {
"value": 610.0,
"label": 3,
"label_name": "CO2"
},
"data_absolute_timestamp": "2022-11-02T14:14:32.535Z"
}
]
}Standard report
{
"EndPoint": 0,
"Report": "Standard",
"CommandID": "ReportAttributes",
"ClusterID": "BinaryInput",
"AttributeID": "PresentValue",
"AttributeType": "Boolean",
"Data": true,
"Cause": []
}
{
"EndPoint": 1,
"Report": "Standard",
"CommandID": "ReportAttributesAlarm",
"ClusterID": "RelativeHumidity",
"AttributeID": "MeasuredValue",
"AttributeType": "UInt16",
"Data": 1331,
"Cause": [
{
"ReportParameters": {
"New": "Yes",
"Reserved": 0,
"CauseRequest": "Short",
"SecuredIfAlarm": "Yes",
"Secured": "No",
"NoHeaderPort": "No",
"Batch": "No"
},
"SlotDescriptors": [
{
"CriteriaSlotDescriptor": {
"Alarm": "Yes",
"OnExceed": "No",
"OnFall": "Yes",
"Mode": "Threshold",
"CriterionIndex": 0
}
}
]
}
]
}
{
"EndPoint": 1,
"Report": "Standard",
"CommandID": "ReportAttributesAlarm",
"ClusterID": "Concentration",
"AttributeID": "MeasuredValue",
"AttributeType": "UInt16",
"Data": 570,
"Cause": [
{
"ReportParameters": {
"New": "Yes",
"Reserved": 0,
"CauseRequest": "Short",
"SecuredIfAlarm": "Yes",
"Secured": "No",
"NoHeaderPort": "No",
"Batch": "No"
},
"SlotDescriptors": [
{
"CriteriaSlotDescriptor": {
"Alarm": "Yes",
"OnExceed": "No",
"OnFall": "Yes",
"Mode": "Threshold",
"CriterionIndex": 0
}
}
]
}
]
}