LogoLogo
  • KPN THINGS USER GUIDE
    • Introduction
    • Getting started
      • Registration and setup
      • Device simulator app
      • Connect devices
        • SIM cards
        • Supported devices and KPN Devices
        • SODAQ R412M
        • Smartrak
        • Marvin development board
        • LoPy5
        • Arduino MKR WAN 1300/1310
        • Arduin MKR NB 1500
    • All videos
    • Tutorials
      • Configure a flow
      • Connect a HTTPs destination
      • Create a simple IoT web applicationPage
      • Send instruction to LoRa DevicePage
      • Send your data to Azure SQL
      • Technical overview
        • Management data model
        • Uplink communication
        • Downlink communication
        • Location data
      • Accounts and projects
        • Customer accounts and users
        • Projects
        • Customer management
        • Cost overview and contract
    • Frequently asked
      • Multi Factor Authentication
  • GENERAL FUNCTIONS
    • Quick reference videos
    • APIs
  • THE PORTAL EXPLAINED
    • Things Manager
      • Devices
        • Bulk operations
      • Data
        • Device data graph
      • Connectivity
        • LoRa connectivity configuration
      • Bulk reports
    • Things Creator
    • Support
      • News
      • Release notes
      • Real-time status
      • Service reports
      • Documents
      • Support tickets
      • Invoices
      • Contact info
    • Shop
  • BUILDING BLOCKS
    • Devices
      • Sensors
        • KPN Conditionsensor CO2 II
        • KPN Conditionsensor CO2 III
        • KPN Conditionsensor CO2 III motionPage 1
        • KPN FillTag I
        • KPN FillTag II
        • 1M2M ED1608
        • Elsys ERS
        • Device Simulator (Mobile Phone app)
        • Generic Device (Internet connected)
        • Generic LoRa device (preset connectivity)
        • Generic LoRa device (programmable)
        • Generic M2M device
        • Generic M2M device (with Internet connection)
      • Trackers
        • KPN Global Tracker Autonomous
        • KPN Global Tracker Wired
        • KPN LocationTag I
        • KPN LocationTag II
        • KPN LocationTag II v2
        • KPN LocationTag II v2 Expert Mode
        • KPN LocationTag II v3
        • KPN LocationTag III (with GPS)
        • KPN LocationTag III (without GPS)
        • KPN LocationTag III v2
        • KPN LocationTag III v2 Buffer
        • KPN LocationTag III v3
        • KPN LocationTag III v4
        • KPN LocationTag V
        • KPN LocationTag VI
        • KPN LocationTag WS
        • Streamline LoRa
        • Streamline M2M
        • Viloc
      • Routers
      • Gateways
        • KPN FSK Basestation
      • Device SDK
    • Connectivity
      • Connecting LoRa devices
        • LoRa connectivity configuration
      • Connecting M2M devices
      • Connecting Internet devices
      • Connecting MQTT Devices
    • Data Processing
      • ThingsML and SenML
        • ThingsML
        • SenML
          • Understanding and Interpreting SenML Data
          • Changes in KPN SenML
      • Device Twin
      • Decoders and encoders
        • Common measurements list
        • Decoder migrations
        • DIY Decoder
          • DIY decoder scripts
      • Merger
      • Device data
      • Devices
    • Destinations
      • HTTPS destination
      • MQTT broker
      • Cumulocity IoT Platform
      • Azure Event Hubs
      • Azure IoT Hub
      • Test Endpoint
      • ThingsBoard
      • Datacake
      • AWS Lambda
      • Google Cloud Run functions
  • IOT LINE UP
    • Freemium
      • Test SIM cards
    • Explorer
    • Modular
    • Tailored
    • Terms and Conditions
Powered by GitBook

© 2024 KPN - All rights reserved.

On this page
  • › Decoded payload for environment monitoring
  • › Decoded payload for environment monitoring (v2)

Was this helpful?

Export as PDF
  1. BUILDING BLOCKS
  2. Devices
  3. Sensors

KPN Conditionsensor CO2 III

PreviousKPN Conditionsensor CO2 IINextKPN Conditionsensor CO2 III motionPage 1

Last updated 2 months ago

Was this helpful?

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

batteryVoltage

V

3.5

The battery voltage of the device

VOC

ppm

The concentration of Volatile Organic Compounds in parts per million

CO2Concentration

ppm

CO2 Concentration in parts per million

pressure

Pa

The air pressure in Pascal

humidity

%HR

The humidity percentage

temperature

Cel

The measured temperature in Celcius

motion

count

Number of times motion has been detected?

movementSensorActiveDuration

s

Number of seconds the movement sensor has been active

movementDetected

boolean

Boolean indicating whether movement was detected or not

Example SenML-message

[
  { bn: 'urn:dev:DEVEUI:7CC6C40512345678:', bt: 1.701114926e9 },
  { n: 'temperature', u: 'Cel', v: 18.8 },
  { n: 'humidity', u: '%RH', v: 42.0 },
  { n: 'CO2Concentration', 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.

The following SenML records can be present, amongst others:

name
type
unit
example
description

batteryVoltage

number

V

3.46

The battery voltage of the device

CO2Concentration

number

ppm

689

CO2 Concentration in parts per million

humidity

number

%RH

58.33

The humidity percentage

motion

number

count

29

Number of times motion has been detected?

movementDetected

boolean

true

Boolean indicating whether movement was detected or not

movementSensorActiveDuration

number

s

20

Number of seconds the movement sensor has been active

pressure

number

Pa

101100

The air pressure in Pascal

temperature

number

Cel

21.34

The measured temperature in Celcius

VOC

number

ppm

0.065

The concentration of Volatile Organic Compounds in parts per million

Example SenML

0xB0 payload

[
    {
        "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

[
    {
        "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"
    }
]

This decoder also decodes data.

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 .

Geolocation and Local Gateway
Understanding and Interpreting SenML Data