KPN Conditionsensor CO2 III Also known as Streamline CO2 sensor. A Smart Building Sensor for indoor environment monitoring.
Supported network type(s): KPNLORA
Device Specification ID: kpn-conditionsensor-co2-iii
Device Specification UUID: 7a7c579f-8ce7-4667-bbd6-280902a55948
Decoders
decoderSpecificationUUID
Description
› Decoded payload for environment monitoring
aa611ae0-cb5d-44bc-bac7-ca6c48885ae1
Decoder for Streamline LoRa message type 0xB0 with CO2 data.
› Decoded payload for environment monitoring (v2)
b7f9d5b8-3d4c-5b07-888f-15f67e972277
Decoder for Streamline LoRa message type 0xB0 and 0xB1 with CO2 data.
› Decoded payload for environment monitoring
UUID: aa611ae0-cb5d-44bc-bac7-ca6c48885ae1
Description: Decoder for Streamline LoRa message type 0xB0 with CO2 data.
Exchange: decoder.lora.streamline.exchange
Expected SenML outputs
name
type/unit
example
description
The battery voltage of the device
The concentration of Volatile Organic Compounds in parts per million
CO2 Concentration in parts per million
The air pressure in Pascal
The measured temperature in Celcius
Number of times motion has been detected?
movementSensorActiveDuration
Number of seconds the movement sensor has been active
Boolean indicating whether movement was detected or not
Example SenML-message
Copy [
{ bn : 'urn:dev:DEVEUI: 7 CC 6 C 40512345678 :' , bt : 1.701114926e9 } ,
{ n : 'temperature' , u : 'Cel' , v : 18.8 } ,
{ n : 'humidity' , u : '%RH' , v : 42.0 } ,
{ n : 'CO 2 Concentration' , u : 'ppm' , v : 567.0 } ,
{ n : 'pressure' , u : 'Pa' , v : 99200.0 } ,
{ n : 'VOC' , u : 'ppm' , v : 0.0 } ,
{ n : 'batteryVoltage' , u : 'V' , v : 3.8 } ,
{ n : 'movementSensorActiveDuration' , u : 's' , v : 1200.0 } ,
{ n : 'motion' , u : 'count' , v : 0.0 } ,
{ n : 'movementDetected' , vb : false } ,
{ n : 'movementDetected' , t : -60.0 , vb : false } ,
{ n : 'movementDetected' , t : -120.0 , vb : false } ,
{ n : 'movementDetected' , t : -180.0 , vb : false } ,
{ n : 'movementDetected' , t : -240.0 , vb : false } ,
{ n : 'movementDetected' , t : -300.0 , vb : false } ,
{ n : 'movementDetected' , t : -360.0 , vb : false } ,
{ n : 'movementDetected' , t : -420.0 , vb : false } ,
{ n : 'movementDetected' , t : -480.0 , vb : false } ,
{ n : 'movementDetected' , t : -540.0 , vb : false } ,
{ n : 'movementDetected' , t : -600.0 , vb : false } ,
{ n : 'movementDetected' , t : -660.0 , vb : false } ,
{ n : 'movementDetected' , t : -720.0 , vb : false } ,
{ n : 'movementDetected' , t : -780.0 , vb : false } ,
{ n : 'movementDetected' , t : -840.0 , vb : false } ,
{ n : 'movementDetected' , t : -900.0 , vb : false } ,
{ n : 'movementDetected' , t : -960.0 , vb : false } ,
{ n : 'movementDetected' , t : -1020.0 , vb : false } ,
{ n : 'movementDetected' , t : -1080.0 , vb : false } ,
{ n : 'movementDetected' , t : -1140.0 , vb : false } ,
{ n : 'movementDetected' , t : -1200.0 , vb : false } ,
{ n : 'movementDetected' , t : -1260.0 , vb : false } ,
{ n : 'movementDetected' , t : -1320.0 , vb : false } ,
{ n : 'movementDetected' , t : -1380.0 , vb : false } ,
{ n : 'movementDetected' , t : -1440.0 , vb : false } ,
{ n : 'movementDetected' , t : -1500.0 , vb : false } ,
{ n : 'movementDetected' , t : -1560.0 , vb : false } ,
{ n : 'movementDetected' , t : -1620.0 , vb : false } ,
{ n : 'movementDetected' , t : -1680.0 , vb : false } ,
{ n : 'movementDetected' , t : -1740.0 , vb : false } ,
{ n : 'movementDetected' , t : -1800.0 , vb : false } ,
{ n : 'movementDetected' , t : -1860.0 , vb : false } ,
{ n : 'TIME_ORIGIN' , vs : 'THINGSENGINE' } ,
]
› Decoded payload for environment monitoring (v2)
Decoder for Streamline LoRa message type 0xB0 and 0xB1 with CO2 data.
This decoder also decodes Geolocation and Local Gateway data.
The following SenML records can be present, amongst others:
name
type
unit
example
description
The battery voltage of the device
CO2 Concentration in parts per million
Number of times motion has been detected?
Boolean indicating whether movement was detected or not
movementSensorActiveDuration
Number of seconds the movement sensor has been active
The air pressure in Pascal
The measured temperature in Celcius
The concentration of Volatile Organic Compounds in parts per million
Example SenML
SenML can be structured in different ways, and we do not guarantee the examples below will look the same as what you will receive on your Destination. To make sure you can handle the SenML optimally, take a look at our documentation about Understanding and Interpreting SenML Data .
0xB0 payload
Copy [
{
"bn" : "urn:dev:DEVEUI:0123456789012345:" ,
"bt" : 1693136532.83 ,
"n" : "temperature" ,
"u" : "Cel" ,
"v" : 25.9
} ,
{
"n" : "humidity" ,
"u" : "%RH" ,
"v" : 50
} ,
{
"n" : "CO2Concentration" ,
"u" : "ppm" ,
"v" : 504
} ,
{
"n" : "pressure" ,
"u" : "Pa" ,
"v" : 101100
} ,
{
"n" : "VOC" ,
"u" : "ppm" ,
"v" : 8
} ,
{
"n" : "batteryVoltage" ,
"u" : "V" ,
"v" : 4.08
} ,
{
"n" : "timeOrigin" ,
"vs" : "NETWORK"
}
]
0x1B payload
Copy [
{
"bn" : "urn:dev:DEVEUI:0123456789012345:" ,
"bt" : 1693136532.83 ,
"n" : "temperature" ,
"u" : "Cel" ,
"v" : 27.3
} ,
{
"n" : "humidity" ,
"u" : "%RH" ,
"v" : 68
} ,
{
"n" : "CO2Concentration" ,
"u" : "ppm" ,
"v" : 563
} ,
{
"n" : "pressure" ,
"u" : "Pa" ,
"v" : 101500
} ,
{
"n" : "VOC" ,
"u" : "ppm" ,
"v" : 1
} ,
{
"n" : "batteryVoltage" ,
"u" : "V" ,
"v" : 7.53
} ,
{
"n" : "movementSensorActiveDuration" ,
"u" : "s" ,
"v" : 5940
} ,
{
"n" : "motion" ,
"u" : "count" ,
"v" : 29
} ,
{
"n" : "movementDetected" ,
"t" : 0 ,
"vb" : false
} ,
{
"n" : "movementDetected" ,
"t" : -60 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -120 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -180 ,
"vb" : false
} ,
{
"n" : "movementDetected" ,
"t" : -240 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -300 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -360 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -420 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -480 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -540 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -600 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -660 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -720 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -780 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -840 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -900 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -960 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1020 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1080 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1140 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1200 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1260 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1320 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1380 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1440 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1500 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1560 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1620 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1680 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1740 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1800 ,
"vb" : true
} ,
{
"n" : "movementDetected" ,
"t" : -1860 ,
"vb" : false
} ,
{
"n" : "timeOrigin" ,
"vs" : "NETWORK"
}
]