Skip to content

Commit

Permalink
Merge branch 'main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
marekmaskarinec authored Dec 4, 2024
2 parents 255b36e + 65d7ae7 commit aa32be4
Show file tree
Hide file tree
Showing 22 changed files with 622 additions and 114 deletions.
14 changes: 6 additions & 8 deletions chester/catalog-applications/chester-clime.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,13 @@ import Image from '@theme/IdealImage';

This article describes the core functionality, hardware description, and example **JSON** message of the catalog application **CHESTER Clime**.

:::danger

When upgrading firmware from **v1.x.x** to version **v2.0.0 and newer** - it is necessary to [**backup configuration**](common-functionality.md#configuration-backup).

:::

:::caution

Some of the basics are not provided, as they are common for all **CHESTER** catalog applications. For example, see the article [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.
Some of the basics are not provided, as they are common for all CHESTER catalog applications. Please see:

- [**Getting started**](../getting-started.md) on how to connect device to Cloud.
- [**Common functionality**](common-functionality.md) to know how LED, button and network configuration works.
- [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.

:::

Expand Down Expand Up @@ -316,7 +314,7 @@ To configure the device, select it from the list of devices and change the optio
The suggested configuration is:

| **Setting** | **Value** |
|-----------------------|-----------------------|
| --------------------- | --------------------- |
| Power signal settings | 4dbm |
| Advertising interval | 10s |
| Active sensors | Temperature, Humidity |
Expand Down
8 changes: 6 additions & 2 deletions chester/catalog-applications/chester-control.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,17 @@ This article describes the core functionality, hardware description, and example

:::caution

Some of the basics are not provided, as they are common for all **CHESTER** catalog applications. For example, see the article [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.
Some of the basics are not provided, as they are common for all CHESTER catalog applications. Please see:

- [**Getting started**](../getting-started.md) on how to connect device to Cloud.
- [**Common functionality**](common-functionality.md) to know how LED, button and network configuration works.
- [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.

:::

## Application Overview

**CHESTER Control** is based on [**CHESTER Input**](chester-input.md), but adds dynamic input type reconfiguration and remote control functionality of 4 transistor outputs.
**CHESTER Control** is based on [**CHESTER Input**](chester-input.md) (see for more details), but adds dynamic input type reconfiguration and remote control functionality of 4 transistor outputs.

Because **CHESTER Control** uses [**CHESTER-X0**](../extension-modules/chester-x0.md) input/output module, it is possible to change input behavior just by the configuration. This way you can assign any of four inputs to one of the functionalities:

Expand Down
14 changes: 9 additions & 5 deletions chester/catalog-applications/chester-counter.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,21 @@ import Image from '@theme/IdealImage';

# CHESTER Counter

This article describes the core functionality, hardware description, default configuration, and example **JSON** messages for the catalog application **CHESTER Counter**.

:::danger
:::warning

When upgrading firmware from **v1.x.x** to version **v2.0.0 and newer** - it is necessary to [**backup configuration**](common-functionality.md#configuration-backup).
CHESTER Counter is replaced by [**CHESTER Control**](chester-control.md) which offers the same functionality.

:::

This article describes the core functionality, hardware description, default configuration, and example **JSON** messages for the catalog application **CHESTER Counter**.

:::caution

Some basics are not provided, as they are common for all the **CHESTER** catalog applications. For example, see the article [**Platform Management**](../platform-connectivity/index.md) on how to work with the interactive console.
Some of the basics are not provided, as they are common for all CHESTER catalog applications. Please see:

- [**Getting started**](../getting-started.md) on how to connect device to Cloud.
- [**Common functionality**](common-functionality.md) to know how LED, button and network configuration works.
- [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.

:::

Expand Down
12 changes: 5 additions & 7 deletions chester/catalog-applications/chester-current.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,13 @@ import Image from '@theme/IdealImage';

This article describes the core functionality, hardware description, default configuration, example JSON message, and channel calibration of the catalog application **CHESTER Current**.

:::danger

When upgrading firmware from **v1.x.x** to version **v2.0.0 and newer** - it is necessary to [**backup configuration**](common-functionality.md#configuration-backup). In the case of using **CHESTER Current** also calibration data.

:::

:::caution

Some of the basics are not provided, as they are common for all CHESTER catalog applications. For example, see the article [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.
Some of the basics are not provided, as they are common for all CHESTER catalog applications. Please see:

- [**Getting started**](../getting-started.md) on how to connect device to Cloud.
- [**Common functionality**](common-functionality.md) to know how LED, button and network configuration works.
- [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.

:::

Expand Down
15 changes: 10 additions & 5 deletions chester/catalog-applications/chester-input.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,25 @@ import Image from '@theme/IdealImage';

# CHESTER Input

This article describes the core functionality, hardware description, default configuration, and example **JSON** messages for the catalog application **CHESTER Input**.

:::danger
:::warning

When upgrading firmware from **v1.x.x** to version **v2.0.0 and newer** - it is necessary to [**backup configuration**](common-functionality.md#configuration-backup).
CHESTER Counter is replaced by [**CHESTER Control**](chester-control.md) which offers the same functionality.

:::

This article describes the core functionality, hardware description, default configuration, and example **JSON** messages for the catalog application **CHESTER Input**.

:::caution

Some basics are not provided, as they are common for all the **CHESTER** catalog applications. For example, see the article [**Platform Management**](../platform-connectivity/index.md) on how to work with the interactive console.
Some of the basics are not provided, as they are common for all CHESTER catalog applications. Please see:

- [**Getting started**](../getting-started.md) on how to connect device to Cloud.
- [**Common functionality**](common-functionality.md) to know how LED, button and network configuration works.
- [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.

:::


## Application Overview

The application **CHESTER Input** is used to measure and observe analog and digital inputs. The sampled analog values are aggregated, the aggregate measurements are buffered, and scheduled for later data transfer in the form of buffered data altogether with the timestamp annotations. Also, the changes on digital input (type **trigger**) can be tracked with the type of change and timestamp. The buffering strategy allows a higher number of events to be recorded while conserving data bandwidth and power required for data transfer.
Expand Down
7 changes: 6 additions & 1 deletion chester/catalog-applications/chester-meteo.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,15 @@ This article describes the core functionality, hardware description, and example

:::caution

Some of the basics are not provided, as they are common for all **CHESTER** catalog applications. For example, see the article [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.
Some of the basics are not provided, as they are common for all CHESTER catalog applications. Please see:

- [**Getting started**](../getting-started.md) on how to connect device to Cloud.
- [**Common functionality**](common-functionality.md) to know how LED, button and network configuration works.
- [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.

:::


## Application Overview

**CHESTER Meteo** is a wind and environmental sensor that samples, aggregates, and sends measured variables.
Expand Down
13 changes: 6 additions & 7 deletions chester/catalog-applications/chester-push.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,17 @@ import Image from '@theme/IdealImage';

This article describes the core functionality, hardware description, and example **JSON** message of the catalog application **CHESTER Push**.

:::danger

When upgrading firmware from **v1.x.x** to version **v2.0.0 and newer** - it is necessary to [**backup configuration**](common-functionality.md#configuration-backup).

:::

:::caution

Some of the basics are not provided, as they are common for all **CHESTER** catalog applications. For example, see the article [**Platform Management**](../platform-connectivity/index.md) on how to work with the interactive console.
Some of the basics are not provided, as they are common for all CHESTER catalog applications. Please see:

- [**Getting started**](../getting-started.md) on how to connect device to Cloud.
- [**Common functionality**](common-functionality.md) to know how LED, button and network configuration works.
- [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.

:::


## Application Overview

**CHESTER Push** has push buttons on the enclosure. The application immediately sends data when any of the push buttons are pressed. For bulk orders, the number of buttons can be configured. An off-the-shelf configuration provides four push buttons on the left side. Alternatively, we can deliver a single push-button version (in the enclosure center). Also, upon a customer's request, we can customize the enclosure printing, and provide various text labels (or symbols) next to each of the push buttons.
Expand Down
7 changes: 6 additions & 1 deletion chester/catalog-applications/chester-range.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,15 @@ This article describes the core functionality, hardware description, and example

:::caution

Some of the basics are not provided, as they are common for all **CHESTER** catalog applications. For example, see the article [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.
Some of the basics are not provided, as they are common for all CHESTER catalog applications. Please see:

- [**Getting started**](../getting-started.md) on how to connect device to Cloud.
- [**Common functionality**](common-functionality.md) to know how LED, button and network configuration works.
- [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.

:::


## Application Overview

**CHESTER Range** measures distance using the [MaxBotix MB7066](https://shop.hardwario.com/ultrasonic-sensor/) ultrasonic sensor. It can also measure temperature using the DS18B20 one-wire sensor and humidity using **CHESTER-S2**.
Expand Down
91 changes: 87 additions & 4 deletions chester/catalog-applications/chester-wm-bus.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,15 @@ import Image from '@theme/IdealImage';

:::caution

Some of the basics are not provided, as they are common for all **CHESTER** catalog applications. For example, see the article [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.
Some of the basics are not provided, as they are common for all CHESTER catalog applications. Please see:

- [**Getting started**](../getting-started.md) on how to connect device to Cloud.
- [**Common functionality**](common-functionality.md) to know how LED, button and network configuration works.
- [**Platform Management**](../category/platform-connectivity) on how to work with the interactive console.

:::


## Application Overview

**CHESTER wM-Bus** is a **Wireless M-Bus** gateway. This device listens for configured **wM-Bus T1 and C1** devices in specific intervals, aggregates the raw received wM-Bus packets and sends them over the **NB-IoT/LTE-M** network.
Expand Down Expand Up @@ -176,6 +181,84 @@ Specifies the day of the month when scanning 1-28 during the monthly scan

**dual** - the scan takes place twice, each time with a different antenna. If all devices are not scanned in the first cycle with antenna 1, a second scan with the second antenna is started. Each scan takes a maximum of scan-timeout seconds. The maximum time when the wM-Bus receiver is active is equal to 2x `scan-timeout`.

## Example Configurations

When configuring over BLE, you need to apply the configuraiton changes with `config save` command.

When configuring over [Cloud config downlink commands](../../cloud/cloud-v2/downlink#config), don't add `config save` command, it is applied automatically. Othwerwise the configuration is not

### Interval and wM-BUS Packets Every 2 Minutes

wM-BUS devices send a packet every 2 minutes.
We want to use only one antenna.
We want to send data to the cloud every 2 hours.
All devices are year-round, transmitting (the same) in summer and winter.

```
app config scan-mode interval
app config scan-interval 7200 (measurement every 2 hours = 7200 seconds)
app config scan-timeout 130 (sensors send every 2 minutes = 120 seconds + reserve)
app config scan-ant single (only one antenna, we scan for 130 seconds)
app config address count 2
app config address add 111111
app config address add 222222
```

### Interval and wM-BUS Packets Every 2 minutes, Two Antennas

wM-BUS devices send a packet every 2 minutes.
We want to use both antennas for better reception, each oriented differently to change polarity.
We want to send data to the cloud every 2 hours.
All devices are year-round, transmitting (the same) in summer and winter.

```
app config scan-mode interval
app config scan-interval 7200 (scanning every 2 hours = 7200 seconds)
app config scan-timeout 130 (sensors send every 2 minutes = 120 seconds + reserve)
app config scan-ant dual (both antennas, we scan up to 130 seconds with one antenna and another up to 130 seconds with the second antenna, effectively scanning up to 260 seconds)
app config address count 2
app config address add 111111
app config address add 222222
```

### Interval and wM-BUS Packets Sending Every Hour

wM-BUS devices send a packet every 1 hour.
We want to use only one antenna.
We want to send data to the cloud every hour.
All devices are year-round, transmitting (the same) in summer and winter.

**This configuration is not for battery variant, because it scans constantly**

```
app config scan-mode interval
app config scan-interval 3620 (scanning every hour = 3600 seconds + 20 seconds reserve for sending)
app config scan-timeout 3600 (scanning up to 3600 seconds)
app config scan-ant single (one antenna, we scan up to 3580 seconds)
app config address count 2
app config address add 111111
app config address add 222222
```

### Daily scanning

wM-BUS devices send a packet every 1 hour.
We want to use only one antenna.
We want to send data to the cloud once a day.
All devices are year-round, transmitting (the same) in summer and winter.

**This configuration is not optimal for battery variant**

```
app config scan-mode daily (daily scanning)
app config scan-hour 12 (always at 12 o'clock UTC (for CET, conversion is needed))
app config scan-timeout 3600 (scanning up to 3600 seconds)
app config scan-ant single (one antenna, we scan up to 3600 seconds)
app config address count 2
app config address add 111111
app config address add 222222
```

## Firmware

The latest firmware is available in Catalog Applications [Firmware chapter](index.md#application-firmware).
Expand Down Expand Up @@ -225,7 +308,7 @@ Each JSON cloud message contains up to 20 wM-Bus packets. If CHESTER is configur
},
"wmbus": {
"cycle": 1,
"devices": 1,
"devices": 2,
"packets": [
{
"data": "32446850003076816980a0919f2b06007007000061087c08000000000000000000000000010101020100000000000000000000",
Expand All @@ -237,8 +320,8 @@ Each JSON cloud message contains up to 20 wM-Bus packets. If CHESTER is configur
}
],
"part": 0,
"received": 1,
"scan_time": 2
"received": 2,
"scan_time": 17
}
}
```
33 changes: 23 additions & 10 deletions chester/catalog-applications/common-functionality.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,13 @@ The **catalog applications** share common functionality. For example the button

## Network Mode Configuration

Starting from firmware **v2.3.0** the catalog applications are built with NB-IoT/LTE and LoRaWAN functionality in a single firmware. You need to set the mode
not only for new devices but also **when you are upgrading older firmware**.
Some catalog firmwares allows configuration to use NB-IoT/LTE or LoRaWAN network. This firmware after power-up is not sending data, the **LED is blinking yellow** and you need to configure correct radio mode.

This `app mode` configuration is needed currently for these catalog applications:

- [CHESTER Clime](chester-clime.md)
- [CHESTER Current](chester-current.md)
- [CHESTER Push](chester-push.md)

The default functionality is that a device **does not use any radio** (mode `none`) and you need to set configuration parameter **mode**.

Expand All @@ -37,6 +42,8 @@ Applications define actions for the mainboard button. The actions are chosen bas

When **CHESTER** is powered on, the LED will be lit red until the application is initialized. Then **CHESTER** will blink the green LED every five seconds to indicate the app is running.

If the **LED is blinking yellow**, you need to configure [which radio to use](#network-mode-configuration).

## Default Configuration

This is the default configuration (printed using the `app config show` command):
Expand All @@ -47,14 +54,6 @@ app config interval-aggreg 300
app config interval-report 1800
```

:::caution

CHESTER sends in default the configuration about 500 bytes of data. If you increase the report interval too much without increasing also aggregation interval,
the data buffer might be bigger than the UDP MTU and the packet will not be sent. Device then appears like it is not sending or sends only a fraction of packets.

:::


You can change configuration using the `app config` command, followed by `config save`. Example:

```
Expand All @@ -73,6 +72,9 @@ Reseting the configuration will also reset the connection parameters for LTE and

:::

You might also change configuration remotely over HARDWARIO Cloud using [**Config downlink command**](../../cloud/cloud-v2/downlink#config).
In cloud you don't send the `config save` command.

## Report Interval Jitter

The periodic sending of data with `interval-report` has intentional jitter. This is used in case lot of CHESTERs are placed near each other, so they don't transmit at the same time if they have set the same interval. This jitter is random in the range of ±20 % of `interval-report`.
Expand Down Expand Up @@ -118,6 +120,17 @@ Available commands:
therm :Thermometer commands.
```

## Report Interval Jitter

The periodic sending of data with `interval-report` has intentional jitter. This is used in case lot of CHESTERs are placed near each other, so they don't transmit at the same time if they have set the same interval. This jitter is random in the range of ±20 % of `interval-report`.

For example, if `interval-report` is set to 100 seconds, you can receive periodic data where two messages have a time difference from 80 (-20%) to 120 (+20%) seconds.

In applications where there are multiple aggregated values, this jitter has a side-effect that sometimes you can see fewer or more aggregated values than expected. The missing values are not lost, they will be sent correctly in the next message.

This jitter is not applied to **events** like button presses or input changes. They report immediately.


## Configuration backup v1.x.x → v2.x.x {#configuration-backup}

When upgrading an older **v1.x.x** firmware to **v2.x.x** - it is necessary to backup application configuration. The most important is this step in **CHESTER Current** application, where in configuration there are the **current transformers calibration coefficients**.
Expand Down
Loading

0 comments on commit aa32be4

Please sign in to comment.