Operation

LoRaWAN® network end-device activation

Before being able to transmit data over a LoRaWAN® network, the module must be personalized and activated. This can be done in two different ways for LoRaWAN®, 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 module joins the LoRaWAN® network. In contrast, for ABP, all keys are set manually and stay constant over time.

In OTAA mode

Before the module is able to transmit messages via the LoRaWAN® network, device information needs to be added to the network server. More specifically, the following parameters needs to be registered in order to enable the network server to receive messages from the module:

Device EUI

16 digit module unique identification number. It is not configurable.

Application key

The application key of each device is generated by Elvaco and used in OTAA mode to generate network keys when the module joins the LoRaWAN® network. Keys are managed in a secure way using Elvaco’s OTC (One Touch Commissioning) solution which includes the mobile application for configuration.

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

If the activation mode is set to ABP, the application key does not need to be added to the network server. Instead the following information will be needed:

Network session key

Used by both the module and the network server.

Application session key

Used for payload encryption and decryption.

Device address

Unique identifier of the module.

Configuration

Via Elvaco OTC app

Tip

The module is mounted at the top of the meter. The NFC field is easiest accessible if placing your phone in the middle of the higher part of the front side.

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 5 and 1440 minutes (i.e. between 5 minute values and daily values). It is possible to fix the transmit interval, but for battery operated devices where battery lifetime is critical, Elvaco recommends using the EcoMode feature, adapting the transmit interval depending on prevailing radio conditions.

EcoMode

The following table shows the transmit intervals that the module will use for different data rates in order to achieve a 11-year battery-life.

Table 167. Transmit interval for different data rates in EcoMode

Data rate

Transmit interval

DR0

120 minutes

DR1

60 minutes

DR2 - DR3

30 minutes

DR4 - DR5

15 minutes


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.

Time handling

The module relies on the meter’s clock for keeping time. Time in the meter is assumed to be in 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 used 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.

Adaptive data rate (ADR)

ADR is part of the LoRaWAN® standard where the network server determines the optimal rate of communication 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.

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

If using 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 configuration lock has been enabled, a device-specific Product Access Key (PAK) will be needed to access the device. Keys are managed in a secure way 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

The payloads using M-Bus encoded data uses 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 meter, bit 4-5 of the bit of the DIF code (first byte of each index field) will be set to 11b.

Example 14. Example

A DIF code of 0x02 will be set to 0x32 in case of error. (This applies to all message format 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.


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.