CHESTER Clime
This chapter describes the core functionality, hardware description, and example JSON message of the catalog application CHESTER Clime.
Some of the basics are not provided, as they are common for all CHESTER catalog applications. For example, see the chapter Platform Management on how to work with the interactive console.
Application Overview
CHESTER Clime is an environmental sensor that samples, aggregates, and sends measured variables.
Hardware Description
CHESTER Clime can be ordered in one of these three variants:
CHESTER Clime
The catalog application CHESTER Clime measures:
- Temperature
- Humidity
The hardware of this application consists of the following ordering codes:
CHESTER-M-BCGLS
- Standard mainboardCHESTER-S2
- External hygrometerCHESTER-E1-LP
- Enclosure with SMA pigtail
See Ordering Codes for more details.
CHESTER Clime IAQ
The catalog application CHESTER Clime IAQ measures:
- Temperature
- Humidity
- Illuminance
- CO₂ concentration
- Atmospheric pressure
- Motion detection with PIR sensor
Also, the application reports push-button events and provides acoustic and optical feedback.
The hardware of this application consists of the following ordering codes:
CHESTER-M-BCGLS
- Standard mainboardCHESTER-S1-BCMP
- Integrated multi-sensorCHESTER-E7-LP
- Enclosure with SMA pigtail
See Ordering Codes for more details.
CHESTER Clime 1W
The catalog application CHESTER Clime 1W supports multiple external DS18B20 1-Wire temperature sensors.
The hardware of this application consists of the following ordering codes:
CHESTER-M-BCGLS
- Standard mainboardCHESTER-E8-LP
- Enclosure with 8 cable glands
See Ordering Codes for more details.
Measurement and behavior
- All sensors are sampled with a configurable period (parameter
interval-sample
). - Samples are then aggregated in the configurable interval. Minimum, maximum, average, and median are computed from buffered samples for each sensor (parameter
interval-aggregate
). - Each aggregated values have its timestamps and are sent in a batch in a report interval period (parameter
interval-report
).
When equipped with CHESTER-S1. The device also has a push button. When the button is pressed, the blue LED turns on for a second. Also, the beep sound is played from the integrated acoustic buzzer for audible confirmation of the push button press.
Default configuration
This is the default configuration (printed using the app config show
command):
app config interval-sample 60
app config interval-aggregate 300
app config interval-report 1800
Specific Commands
You can easily explore the whole command tree structure - start with the help
command.
To apply a new configuration, you need to call config save
, which applies the new configuration parameters and reboots the device.
Command to set sample interval in seconds:
app config interval-sample <1-86400>
Command to set aggregate interval in seconds:
app config interval-aggregate <1-86400>
Command to set report interval in seconds:
app config interval-report <30-86400>
Example JSON Message
In this example JSON you can see data from all three variants
- CHESTER Clime has its own
hygrometer
structure. - CHESTER Clime IAQ has its own
iaq_sensor
structure. - CHESTER Clime 1W has its own
w1_thermometers
structure.
In each structure with the current configuration, there are six aggregated values. Each aggregated value has its timestamp and is computed from multiple samples, and min
, max
, avg
, and mdn
values are calculated.
{
"frame": {
"protocol": 1,
"sequence": 381,
"timestamp": 1668859482
},
"attribute": {
"vendor_name": "HARDWARIO",
"product_name": "CHESTER-M",
"hw_variant": "CGLS",
"hw_revision": "R3.2",
"fw_version": "(unset)",
"serial_number": "2159018267"
},
"state": {
"uptime": 680967
},
"battery": {
"voltage_rest": 3.7,
"voltage_load": 3.66,
"current_load": 36
},
"network": {
"imei": 351358815180770,
"imsi": 901288910018982,
"parameter": {
"eest": null,
"ecl": null,
"rsrp": null,
"rsrq": null,
"snr": null,
"plmn": null,
"cid": null,
"band": null,
"earfcn": null
}
},
"thermometer": {
"temperature": 22.18
},
"accelerometer": {
"accel_x": 0.07,
"accel_y": -0.16,
"accel_z": 9.65,
"orientation": 2
},
"iaq_sensor": {
"temperature": {
"measurements": [
{
"timestamp": 1668857742,
"min": 22.5,
"max": 22.54,
"avg": 22.51,
"mdn": 22.52
},
{
"timestamp": 1668858042,
"min": 22.49,
"max": 22.5,
"avg": 22.49,
"mdn": 22.49
},
{
"timestamp": 1668858342,
"min": 22.47,
"max": 22.48,
"avg": 22.47,
"mdn": 22.47
},
{
"timestamp": 1668858642,
"min": 22.47,
"max": 22.49,
"avg": 22.48,
"mdn": 22.48
},
{
"timestamp": 1668858942,
"min": 22.46,
"max": 22.5,
"avg": 22.48,
"mdn": 22.48
},
{
"timestamp": 1668859242,
"min": 22.45,
"max": 22.47,
"avg": 22.46,
"mdn": 22.47
}
]
},
"humidity": {
"measurements": [
{
"timestamp": 1668857742,
"min": 55.19,
"max": 55.91,
"avg": 55.52,
"mdn": 55.53
},
{
"timestamp": 1668858042,
"min": 55.84,
"max": 56.5,
"avg": 56.14,
"mdn": 56.07
},
{
"timestamp": 1668858342,
"min": 56.01,
"max": 56.2,
"avg": 56.09,
"mdn": 56.07
},
{
"timestamp": 1668858642,
"min": 55.55,
"max": 56.1,
"avg": 55.79,
"mdn": 55.74
},
{
"timestamp": 1668858942,
"min": 55.39,
"max": 55.86,
"avg": 55.6,
"mdn": 55.59
},
{
"timestamp": 1668859242,
"min": 55.1,
"max": 56.29,
"avg": 55.69,
"mdn": 55.61
}
]
},
"illuminance": {
"measurements": [
{
"timestamp": 1668857742,
"min": 4,
"max": 5,
"avg": 4,
"mdn": 4
},
{
"timestamp": 1668858042,
"min": 4,
"max": 6,
"avg": 4,
"mdn": 5
},
{
"timestamp": 1668858342,
"min": 5,
"max": 5,
"avg": 5,
"mdn": 5
},
{
"timestamp": 1668858642,
"min": 4,
"max": 6,
"avg": 5,
"mdn": 5
},
{
"timestamp": 1668858942,
"min": 5,
"max": 7,
"avg": 5,
"mdn": 6
},
{
"timestamp": 1668859242,
"min": 4,
"max": 5,
"avg": 4,
"mdn": 5
}
]
},
"altitude": {
"measurements": [
{
"timestamp": 1668857742,
"min": 244,
"max": 245,
"avg": 244,
"mdn": 244
},
{
"timestamp": 1668858042,
"min": 244,
"max": 245,
"avg": 244,
"mdn": 245
},
{
"timestamp": 1668858342,
"min": 244,
"max": 245,
"avg": 244,
"mdn": 245
},
{
"timestamp": 1668858642,
"min": 244,
"max": 245,
"avg": 244,
"mdn": 244
},
{
"timestamp": 1668858942,
"min": 244,
"max": 245,
"avg": 244,
"mdn": 244
},
{
"timestamp": 1668859242,
"min": 244,
"max": 245,
"avg": 244,
"mdn": 244
}
]
},
"pressure": {
"measurements": [
{
"timestamp": 1668857742,
"min": 98419,
"max": 98425,
"avg": 98422,
"mdn": 98423
},
{
"timestamp": 1668858042,
"min": 98415,
"max": 98418,
"avg": 98416,
"mdn": 98416
},
{
"timestamp": 1668858342,
"min": 98412,
"max": 98417,
"avg": 98414,
"mdn": 98415
},
{
"timestamp": 1668858642,
"min": 98417,
"max": 98422,
"avg": 98419,
"mdn": 98418
},
{
"timestamp": 1668858942,
"min": 98416,
"max": 98421,
"avg": 98419,
"mdn": 98421
},
{
"timestamp": 1668859242,
"min": 98416,
"max": 98422,
"avg": 98419,
"mdn": 98420
}
]
},
"co2_conc": {
"measurements": [
{
"timestamp": 1668857742,
"min": 399,
"max": 400,
"avg": 399,
"mdn": 400
},
{
"timestamp": 1668858042,
"min": 399,
"max": 400,
"avg": 399,
"mdn": 399
},
{
"timestamp": 1668858342,
"min": 399,
"max": 400,
"avg": 399,
"mdn": 400
},
{
"timestamp": 1668858642,
"min": 399,
"max": 400,
"avg": 399,
"mdn": 399
},
{
"timestamp": 1668858942,
"min": 398,
"max": 399,
"avg": 398,
"mdn": 399
},
{
"timestamp": 1668859242,
"min": 399,
"max": 400,
"avg": 399,
"mdn": 399
}
]
},
"motion_count": {
"measurements": [
{
"timestamp": 1668857742,
"value": 0
},
{
"timestamp": 1668858042,
"value": 0
},
{
"timestamp": 1668858342,
"value": 0
},
{
"timestamp": 1668858642,
"value": 0
},
{
"timestamp": 1668858942,
"value": 0
},
{
"timestamp": 1668859242,
"value": 0
}
]
},
"press_count": {
"measurements": [
{
"timestamp": 1668857742,
"value": 0
},
{
"timestamp": 1668858042,
"value": 0
},
{
"timestamp": 1668858342,
"value": 0
},
{
"timestamp": 1668858642,
"value": 0
},
{
"timestamp": 1668858942,
"value": 0
},
{
"timestamp": 1668859242,
"value": 0
}
]
}
},
"hygrometer": {
"temperature": {
"measurements": [
{
"timestamp": 1668857742,
"min": 22.07,
"max": 22.25,
"avg": 22.17,
"mdn": 22.16
},
{
"timestamp": 1668858042,
"min": 22.05,
"max": 22.23,
"avg": 22.15,
"mdn": 22.15
},
{
"timestamp": 1668858342,
"min": 22.04,
"max": 22.16,
"avg": 22.09,
"mdn": 22.07
},
{
"timestamp": 1668858642,
"min": 22.08,
"max": 22.19,
"avg": 22.11,
"mdn": 22.09
},
{
"timestamp": 1668858942,
"min": 22.07,
"max": 22.16,
"avg": 22.12,
"mdn": 22.12
},
{
"timestamp": 1668859242,
"min": 22.07,
"max": 22.15,
"avg": 22.12,
"mdn": 22.14
}
]
},
"humidity": {
"measurements": [
{
"timestamp": 1668857742,
"min": 54.78,
"max": 55.31,
"avg": 55.1,
"mdn": 55.12
},
{
"timestamp": 1668858042,
"min": 55.12,
"max": 56.16,
"avg": 55.55,
"mdn": 55.52
},
{
"timestamp": 1668858342,
"min": 55.24,
"max": 55.56,
"avg": 55.41,
"mdn": 55.4
},
{
"timestamp": 1668858642,
"min": 54.89,
"max": 56.03,
"avg": 55.33,
"mdn": 55.2
},
{
"timestamp": 1668858942,
"min": 54.75,
"max": 56.73,
"avg": 55.39,
"mdn": 54.98
},
{
"timestamp": 1668859242,
"min": 54.91,
"max": 55.83,
"avg": 55.26,
"mdn": 55.18
}
]
}
},
"w1_thermometers": [
{
"serial_number": 170787196,
"measurements": [
{
"timestamp": 1668857742,
"min": 22.18,
"max": 22.25,
"avg": 22.23,
"mdn": 22.25
},
{
"timestamp": 1668858042,
"min": 22.18,
"max": 22.18,
"avg": 22.18,
"mdn": 22.18
},
{
"timestamp": 1668858342,
"min": 22.18,
"max": 22.18,
"avg": 22.18,
"mdn": 22.18
},
{
"timestamp": 1668858642,
"min": 22.12,
"max": 22.18,
"avg": 22.17,
"mdn": 22.18
},
{
"timestamp": 1668858942,
"min": 22.18,
"max": 22.18,
"avg": 22.18,
"mdn": 22.18
},
{
"timestamp": 1668859242,
"min": 22.18,
"max": 22.18,
"avg": 22.18,
"mdn": 22.18
}
]
}
]
}