Operation

LoRaWAN® end-device activation

Before being able to transmit data over a LoRaWAN® network, the device must be personalized and activated. This can be done in two ways: Over-the-air activation (OTAA) or Activation by Personalization (ABP). For security reasons, Elvaco strongly recommends using OTAA, where all network keys are generated each time the device joins the LoRaWAN® network. In contrast, for ABP, all keys are set manually and stay constant over time. The tables below list the required information depending on the activation mode.

In OTAA mode

Device EUI

16-digit unique identification number (not configurable).

Application key

The application key of each device is generated by Elvaco and used in OTAA mode to generate network keys when it joins the LoRaWAN® network.

JoinEUI

Sets the identification number of the join server. The identification number is set to a default value in all devices. The default value is presented in Elvaco OTC configuration options.

In ABP mode

Device EUI

16-digit unique identification number (not configurable).

Application session key

Used for payload encryption and decryption.

Network session key

Used by both the device and the network server.

Configuration

CMi4160 is configured via the Elvaco OTC App. It uses NFC to transfer settings to the module. Downlink may also be used for some applications.

Via Elvaco OTC app

Tip

Depending on smartphone used, it can be difficult to access the NFC field having the meter closed. For better sensitivity, open the meter and put the phone close to the NFC mark on the module.

Via downlink

Transmit interval

The transmit interval is used to set how frequently the module should transmit data on the LoRaWAN® network. The parameter can be set to a value between 10 and 1440 minutes (i.e. from 10 minutes to once per day). It is possible to fix the transmit interval, but for battery-operated devices where battery lifetime is critical, Elvaco recommends using the EcoMode feature, which adapts the transmit interval depending on prevailing radio conditions.

Transmit interval in EcoMode

Table 311. Transmit intervals for different data rates in EcoMode

Data rate

Transmit intervals

DR0

180 min

DR1

120 min

DR2

60 min

DR3

60 min

DR4

30 min

DR5

30 min


Note

If using message format Scheduled Extended+ (available from FW 1.0.5), the transmit intervals used in EcoMode will be according to the following table. Since the Scheduled Extended+ is scheduled, the minimal practical limit is always 60 minutes.

Table 312. Transmit intervals for different data rates in EcoMode, when using Scheduled Extended+

Data rate

Transmit interval

DR0

360 min

DR1

240 min

DR2

120 min

DR3

120 min

DR4

60 min

DR5

60 min


Note

For applications where battery lifetime is critical, EcoMode should be enabled. If EcoMode has been disabled, battery life guarantees no longer apply, even if EcoMode is activated later on.

Adaptive data rate (ADR)

ADR is part of the LoRaWAN® standard where the network server determines the optimal rate for the module based on current signal conditions. In the best radio conditions, the module will use its highest data rate (DR5) in order to be as energy-efficient as possible. When signal conditions are poor, the network server will incrementally lower the data rate until it is able to receive the message. When the data rate is low, the energy consumption per telegram will increase.

Time handling

The module relies on the meter’s clock to keep time. The meter time is assumed to be standard local time (no DST). When synchronizing time in the meter using the Elvaco OTC App, local standard time is always used, even if DST is in effect. The timestamped meter data sent from the module can be adjusted to be sent in UTC by specifying the “UTC offset” configuration parameter. The UTC offset will be subtracted from the timestamp prior to transmission. If the meter is in Sweden, which uses CET (Central European Time), it should have UTC offset set to +60 (+1h). In this case at time 12:00 a telegram is sent with timestamp 11:00 as this is the corresponding UTC time. A meter in New York (USA) should have a UTC offset of "-300" (-5h) etc. A UTC offset of "0" means the meter time is used as-is.

If the meter is set to use DST this is ignored by the module and the standard time is used. Thus, the time on the meter’s display may not match the time in the telegram or in the Elvaco OTC App.

Message encoding

All message formats encoded to M-Bus standard will have the following structure. Each telegram begins with one byte specifying the message format. Then follows a sequence of data information blocks (DIBs). The data and structure of the DIBs depends on the message type set. Each DIB contains a data information field (DIF), a value information field (VIF) and a data field (DATA), where the actual payload is stored.

Message_structure_m-bus_.png

M-Bus message structure

Note

When using the message format JSON, the data will be presented as plain text, and not according to the M-Bus structure as presented above.

Security and access control

The product has a configuration lock feature, which prevents unauthorized access to the module. When the configuration lock has been enabled, a device-specific Product Access Key (PAK) will be needed to access the device. Keys are managed securely using Elvaco’s OTC solution which includes the mobile application for configuration.

Note

For more information about security and access control for the product, refer to the One-Touch Commissioning (OTC) documentation, available on the Elvaco website.

Meter communication error messages

Payloads using M-Bus encoded data use the Function field of the DIF to indicate errors. In this case, it is set to “value during error state” (M-Bus standard EN 13757-3:2013) and the value sent should not be used. A typical case for this is when the module is unable to communicate with the meter and retrieve meter values, in which case all the fields in the payload have the DIF indicating “value during error state”. In case of erroneous data or if the module is unable to communicate with the meter, bits 4–5 of the DIF code (first byte of each index field) will be set to 11b.

Example 15. Example

A DIF code of 0x02 will be set to 0x32 in case of error. (This applies to all message formats except JSON.) For message format JSON, the actual value will be replaced with “null” in case of error state. If no meter communication is possible at all, all fields have this error indication set.


Reset procedures

Rebooting the module

  1. Press and hold the push button for 5-15 seconds.

  2. Release the button when the green LED is lit.

Led_indications_mcm_reboot__switch_off_.png

Switching off the module

  1. Press and hold the push button for 15-20 seconds.

  2. Release the button when the red LED is lit.

Led_indications_mcm_reboot__switch_off_.png

Soft starting the module

In rare cases, if the battery is weak, the module will perform a soft start to be able to start-up despite the condition of the battery. The soft start takes 10 minutes to complete. The red LED will blink shortly every 10th second until the start-up has completed.

LED_indications_soft_start_.png

LED indications when soft starting the module

Was this article helpful?

0 out of 0 found this helpful
Have more questions? Submit a request

Comments (0 comments)

Article is closed for comments.