E2C Field Quick Start Guide

E2C Field Quick Start Guide


Software Version: V2.0.3.0Document Version: V1.0

About This Document

This guide is intended for engineers, system integrators, and commissioning personnel using E2C Field for the first time. It provides repeatable examples for software installation, LoRaWAN Device onboarding, MQTT Data to Cloud, Modbus TCP Data Forwarding, local alarms, and optional Wired Device Data Collection.

This guide describes only the key settings required for initial validation. For all supported protocols, fields, function rules, and advanced settings, see the E2C Field Software Manual.

www.robustel.com

Copyright © 2021 Guangzhou Robustel Co., Ltd. All rights reserved.

Trademark Notice: Robustel is a trademark of Guangzhou Robustel Co., Ltd. Other trademarks and trade names mentioned in this guide belong to their respective owners.

Disclaimer: No part of this document may be reproduced in any form without permission from the copyright owner. Because products, designs, and manufacturing processes are continuously improved, the contents of this document may be updated or revised without notice.

Revision History

Date

Software Version

Document Version

Description

2026-08-21

V2.0.3.0

V1.0

Initial release

Terms and Abbreviations

Software Terms

Term

Description

Payload Codec

A script that decodes a raw payload uploaded by a LoRaWAN Device into business data or encodes a downlink command into a payload recognized by the Device.

Device Profile

A LoRaWAN Device configuration template that defines shared settings such as Region, MAC Version, Activation Method, Device Class, Expected Uplink Interval, and associated Payload Codec.

Device

A logical representation of a field data source, such as a PLC, controller, sensor, or instrument. A Device uses a communication protocol and connection parameters to establish a data channel with field equipment.

LoRaWAN Device

A sensor, meter, actuator, or other endpoint that sends or receives data through a LoRaWAN network.

Wired Device

A Device that collects data through Ethernet, serial, or local interfaces, such as a Modbus TCP, Modbus RTU, OPC UA, or BACnet Device.

Tag

A logical mapping of a readable or writable data point in a field Device, such as temperature, pressure, running status, or a control command.

Publish

To deploy a category of configurations to its runtime environment so that the new configurations take effect. In Data Collection, [Publish LoRa] publishes LoRaWAN Devices and related configurations, while [Publish Wired] publishes Wired Devices and Tags. In Data Forwarding, [Publish] publishes the current protocol service and its mapping configurations.

Tag Group

A collection of one or more Tags used as a data source for cloud publishing, with configurable Period, Change, or Period plus Change reporting strategies.

Cloud Service

Connection configuration for sending edge data to cloud platforms through MQTT, HTTP, or Sparkplug B.

Data Forwarding

Providing internal Tags to third-party clients through protocol services such as Modbus TCP Slave, OPC UA Server, or BACnet IP Server.

Industry Terms and Abbreviations

Term or Abbreviation

Full Name

Description

LNS

LoRaWAN Network Server

A network server that manages LoRaWAN Device joins, sessions, and uplink and downlink messages.

OTAA

Over-the-Air Activation

A LoRaWAN activation method in which a Device dynamically establishes session keys through an over-the-air join procedure.

LoRaWAN

Long Range Wide Area Network

A communication protocol for low-power wide-area network Devices, commonly used by battery-powered sensors.

Device EUI

Device Extended Unique Identifier

A globally unique 16-character hexadecimal identifier for a LoRaWAN Device.

Join EUI

Join Extended Unique Identifier

The Join Server identifier used during OTAA. Older documentation may refer to it as AppEUI.

Application Key

Application Key

The 128-bit root key used for OTAA authentication. It must match the Device configuration.

Modbus TCP

Modbus TCP

A Modbus industrial communication protocol running over TCP/IP.

MQTT

Message Queuing Telemetry Transport

A lightweight publish-and-subscribe messaging protocol.

MQTT Broker

MQTT Broker

A server that receives, routes, and distributes MQTT messages.

QoS

Quality of Service

The MQTT service level used for message delivery.

BMS

Building Management System

A system used to centrally monitor and manage building equipment.

BACnet/IP

Building Automation and Control Networks over IP

BACnet communication over an IP network for building automation and control.

Chapter 1 Quick Start Overview

1.1 Common Scenarios and Reading Guide

This guide uses the distance Tag collected from one LoRaWAN Device to introduce common tasks. When using this system for the first time, complete Chapter 2 and the LoRaWAN workflow in Section 3.2, and then read the function chapters required by the project. Wired Device Data Collection is provided as an optional alternative in Section 3.3.

Common Scenario

Task

Read

Collect and view field Device data

Onboard and publish a LoRaWAN Device, validate its data, or optionally collect data from a Wired Device

Chapter 3

Send collected data to an MQTT Broker or cloud platform

Create a Tag Group and MQTT Cloud Service, configure a Publish message, and confirm that the receiver obtains the data

Chapters 3 and 4

Provide collected data to an industrial client

Use Modbus TCP Slave to provide a Tag to a SCADA system, HMI, host application, or other Modbus TCP client

Chapters 3 and 5

Monitor abnormal conditions in collected data

Create an Alarm Rule and validate alarm activation, recovery, and history

Chapters 3 and 6

Use project-specific parameters when a real Device or target system is available. When a real environment is unavailable, use the simulation or auxiliary validation tool introduced in the applicable chapter.

1.2 Third-Party Tools

When no real Device or target system is available, this guide uses the following third-party tools for simulation or auxiliary validation. If a real Device, MQTT service, or actual target system is available, use the actual environment instead. The corresponding tools are not required.

Tool

Purpose

Download

Mosquitto 2.0.20

Temporarily provides an MQTT Broker for validating the MQTT Data to Cloud path.

Mosquitto 2.0.20 Windows x64 test package

MQTTX

Connects to the MQTT Broker, subscribes to the Publish Topic, and displays the received data.

MQTTX download page

Modbus Poll

Acts as a Modbus TCP client to validate Data Forwarding when the actual target system is temporarily unavailable.

Modbus Poll official download page

PeakHMI MB TCP Slave

Simulates a Modbus TCP slave for the optional Wired Device Data Collection workflow in Section 3.3.

PeakHMI website

A real sensor is required to validate LoRaWAN radio join and data reporting. Offline Codec testing validates only the decoding logic and does not replace a real LoRaWAN radio link.

Chapter 2 Before You Begin

This chapter checks the gateway and RobustOS Pro, downloads and installs E2C Field, confirms the system time, and then opens E2C Field.

2.1 Workflow

Complete the following five tasks:

  1. Check the gateway model, RobustOS Pro firmware version, and RAM.
  2. Download E2C Field.
  3. Install and enable E2C Field on the gateway.
  4. Confirm that the gateway Time Zone and System Time are correct.
  5. Open E2C Field.

2.2 Check the Gateway and RobustOS Pro

This guide uses LG3120. The environment requirements are as follows:

Item

Requirement

Gateway Model

LG3120

RobustOS Pro

V2.4.111 or later

RAM

At least 2 GB

LoRa Antenna

Required for the primary workflow in Section 3.2; confirm that the antenna is installed correctly before powering on the gateway

Connect the management computer to the network of the gateway LAN interface. Make sure that the computer and gateway are on the same subnet and can communicate. This guide uses the following example addresses:

Device

Example Address

Gateway LAN interface

192.168.0.1

Management computer

192.168.0.89

Replace these addresses with those planned for the actual site.

  1. Open a browser, go to the default gateway management address http://192.168.0.1, and log in to the gateway web interface. Google Chrome is recommended.
  2. Check the gateway model, RobustOS Pro version, and RAM on the home page and compare them with the requirements in this section.
  3. If the firmware version is earlier than V2.4.111, obtain the applicable firmware and follow the RobustOS Pro upgrade guide for the gateway model and current version before continuing.

2.3 Download and Install the Software

Download the required files from E2C Field APP Download.

Software or Tool

Requirement

Purpose

E2C Field

Required

Provides the edge Data Collection, Data to Cloud, Data Forwarding, and Alarm Management functions used in this guide.

Skip the installation steps if the required version of E2C Field is already installed. Otherwise, complete the following operations:

  1. In the gateway web interface, go to [System] > [App Center].
  2. Select the E2C Field package, click [Install], and follow the on-screen prompts to confirm the installation and restart.
  3. After the gateway restarts, sign in again and confirm that e2c-field appears in the installed application list.

Figure 2-1 Install E2C Field in App Center

Warning: Do not power off the gateway, close the current page, or submit the installation operation again during installation or restart.

2.4 Confirm the Gateway Time

E2C Field uses the RobustOS Pro system time and does not maintain a separate clock. Before using the system for the first time, confirm that the gateway Time Zone and System Time are correct.

An incorrect gateway time can cause incorrect timestamps or time displays in Data Collection, Data to Cloud, Data Forwarding, and Alarm Management. Set the correct time before collecting, reporting, or forwarding production data.

Log in to the RobustOS Pro web interface, go to [Services] > [NTP], and configure the time according to the gateway network environment:

  • The gateway can access an NTP server: Select the [Time Zone] for the project location, enable the NTP Client, and configure an NTP server accessible to the gateway. The default [NTP Update Interval] value of 0 synchronizes the time only once. An interval of 30 min is recommended for periodic synchronization. After submitting the configuration, open the [Status] tab and confirm that [System Time] and [Last Update Time] are correct.

Figure 2-2 NTP Client configuration for an online gateway

  • The gateway cannot access an NTP server: First confirm that the date, time, and time zone of the management computer are correct. Open the [Status] tab and click [Sync] to synchronize the gateway with the computer time. For a gateway operating offline for an extended period, check the system time regularly and synchronize it manually if a time difference is found.

Notice: Set the correct time before production data is generated whenever possible. If the gateway time is changed during operation, check the latest data.

2.5 Open E2C Field

  1. Log in to the gateway management interface.
  2. Locate [Edge Computing] in the left or top navigation area.
  3. Open E2C Field. The operation page opens in a new browser tab.

Figure 2-3 Open E2C Field from the gateway management interface

Chapter 3 Collect Device Data

This chapter uses a LoRaWAN Device as the primary data source. Complete Section 3.2 and confirm that its data is received normally before continuing to Chapters 4–6. Section 3.3 describes Wired Device Data Collection and is optional. Skip it unless the project also needs to collect data from a Modbus TCP or other Wired Device.

3.1 Workflow

Complete the following four tasks:

  1. Prepare the LoRaWAN Device information and confirm that the applicable Payload Codec is available.
  2. Create and publish a Device Profile.
  3. Add and publish one LoRaWAN Device.
  4. Confirm that the distance Tag has a valid Latest Value and Update Time.

After completing the primary workflow, continue to Chapter 4, 5, or 6 according to the project requirements. Complete Section 3.3 only when a Wired Device Data Collection example is also required.

3.2 Onboard One LoRaWAN Device

This section describes the shortest workflow for onboarding a LoRaWAN Device. A real Device is required to perform and validate the configuration. You may read this section to understand the workflow, but do not create a Device using a false Device EUI, Join EUI, or Application Key.

3.2.1 Prepare Device Information and Check the Payload Codec

Before starting, prepare the following information:

  • A LoRaWAN Device using the Region frequency plan for the project, with the gateway LoRa antenna installed correctly.
  • The Device LoRaWAN Region, MAC Version, Regional Parameters Revision, Activation Method, Device Class, Expected Uplink Interval, and heartbeat period.
  • Device EUI, Join EUI when applicable, and Application Key for OTAA.
  • The Device manufacturer manual and the method for producing an uplink, such as power-on, restart, or manual reporting.

Go to [LNS Configuration] > [Payload Codecs] and find the Device model:

3.2.2 Create a Device Profile

A Device Profile defines the network parameters shared by sensors of the same model. Create one Profile and reuse it when adding identical sensors instead of entering the frequency and join settings for every Device.

Figure 3-1 Create the LDDS75 Device Profile

Go to [LNS Configuration] > [Device Profiles], click [Create New], and configure the Profile as follows. When using another Device model, replace the applicable values according to the Device documentation.

Field

Value in This Example

Description

Payload Codec

Dragino / LD / LDDS75

Select the sensor data translation Codec verified in Section 3.2.1.

Name

Profile_LDDS75_EU868

Enter a recognizable name for the Profile.

Description

/

Optional. Briefly describe the Device model or purpose of the Profile.

Region

EU868

Select the LoRa radio frequency band applicable to the physical deployment location.

Region Configuration

EU868

Select the applicable channel-plan configuration for the Region.

MAC version

LoRaWAN 1.0.3

Select the LoRaWAN protocol version supported by the sensor. Check the Device documentation.

Regional parameters revision

A

Select the LoRaWAN Regional Parameters revision supported by the sensor.

ADR algorithm

Default ADR algorithm

Selects the Adaptive Data Rate algorithm used by the LNS. Keep the default unless the project has specific requirements.

Flush queue on activate

Enable

Clears pending downlink messages when the Device rejoins the network.

Expected uplink interval (secs)

3600 (1 hr)

Declares how frequently the LNS normally expects to receive an uplink from the Device. Set it according to the actual periodic uplink behavior of the Device.

Device-status request frequency (req/day)

1

Specifies how many times per day the LNS requests the Device status.

RX1 Delay (0 = use system default)

0

A value of 0 uses the system default for the first receive-window delay.

Activation Method

OTAA

Selects the activation method used by the Device.

Device Class

Class-A

Selects the operating class supported by the Device. Battery-powered or sleeping Devices commonly use Class A.

After confirming the configuration, click [Publish]. A Device can reference the Profile only after it is published.

3.2.3 Add a LoRaWAN Device and Confirm Tags

This step registers a physical LoRaWAN sensor with the gateway and selects the Tags to collect.

Go to [Data Collection] > [LoRaWAN Devices], click [Add Device], and configure the Device as follows. Replace Device EUI, Join EUI when applicable, and Application Key with the values configured for the actual Device.

Field

Value in This Example

Description

Device Profile

Profile_LDDS75_EU868

Select the Profile created and published for the sensor model in Section 3.2.2.

Name

LDDS75_Sensor_01

Enter a recognizable and unique name that identifies the Device location or purpose.

Description

Water Tank Level Sensor – Tank A

Optional. Add notes about the installation location, purpose, or site condition.

Device EUI (EUI64)

a84041xxxxxxxxxx

Enter the globally unique 16-character hexadecimal identifier configured for the sensor.

Join EUI (EUI64)

Leave blank (defaults to 0000000000000000)

Join EUI, formerly called AppEUI, is a 16-character hexadecimal identifier used to identify the Join Server during OTAA. If this field is left blank, the system uses 0000000000000000 by default. This default is intended only for Devices joining through the local LNS. For roaming or an external Join Server, enter the actual Join EUI configured for the Device. This field is not used for ABP activation.

Online Detection Threshold

3600

Determines how long E2C Field waits without receiving an uplink before marking the Device as offline. It must not be less than the Profile's Expected Uplink Interval. Set it to twice the Device heartbeat period or 24 hr according to the Device behavior and project requirements.

TTL

86400

Specifies how long a downlink command remains valid in the queue. This example uses the default value of 86400 sec, or 24 hr.

Application key

ae0f079aff0cxxxxxxxxxxxxxxxxxxxx

Enter the Device-specific 32-character hexadecimal AES-128 root key used for OTAA activation.

After completing the form, click [Next] to open [Tag Verification]. The system generates business Tags and system Tags according to the Codec. Keep the Tags required by the project, confirm their names and data types, and then click [Confirm]. This guide uses the distance business Tag, whose Data Type is int (int32), in the subsequent chapters.

After returning to the Device list, click [Publish LoRa] in the upper-right corner and wait until synchronization succeeds.

Figure 3-2 Add the LoRaWAN Device

3.2.4 Validate LoRaWAN Data

  1. Power on, restart, or manually trigger the sensor according to the manufacturer instructions so that the Device generates a Join or Uplink.
  2. Go to [Data Collection] > [LoRaWAN Devices] and confirm that LDDS75_Sensor_01 is online.
  3. Click [View Tags] in the Device operation column. Confirm that distance is a Device Tag with Data Type int (int32), and check its [Latest Value] and [Update Time].
  4. Trigger another uplink according to the Device instructions, or wait for one complete Device reporting interval, and confirm that [Update Time] refreshes.
  5. If the Device does not join or distance has no value, check [Events] for the Device. For raw messages and decoding results, go to [LNS Configuration] > [Live Frames].

Figure 3-3 Publish and validate the distance Tag

After distance has a valid Latest Value, continue to Chapter 4, 5, or 6. These chapters use LDDS75_Sensor_01 and distance as the primary example data source.

3.3 Collect One Modbus TCP Tag (Optional)

This section is optional. Skip it if you are using only the LoRaWAN Device to complete this guide. If you complete this section, you can also select the Inlet_Pressure Tag of Packaging-Machine-03 as a data source in the subsequent chapters. When using Inlet_Pressure for Modbus TCP Data Forwarding, configure the mapped data type and read quantity according to its short (int16) Data Type instead of copying the int (int32) settings used for distance in Chapter 5.

This section uses Inlet_Pressure as the example Tag. If a real Modbus TCP Device is available, use the actual Device connection parameters and Tag address. To avoid affecting production equipment, select a Tag that can be read safely and whose value can be checked easily.

If no real Modbus TCP Device is available, start with Section 3.3.1. If a real Device is available, skip Section 3.3.1, start with Section 3.3.2, and use the actual Device parameters.

3.3.1 Prepare Simulated Modbus TCP Data (Optional)

  1. Obtain PeakHMI MB TCP Slave from the PeakHMI website, and install and start it on the computer at 192.168.0.89.
  2. Click [Windows] in the top menu bar, and then select [Register Data] to open the data list.
  3. Locate 400001 on the left side of the list and enter an easily recognizable test value, such as 20, in the corresponding value cell.
  4. Keep PeakHMI MB TCP Slave running. E2C Field will read the value through Port 502 and Slave Address 1 in the following steps.

Figure 3-4 Configure the optional Modbus TCP simulator

These parameters are used only in this example. Enter the corresponding values directly as shown in the following tables. You do not need to understand the internal data structure of the simulator first.

3.3.2 Add a Modbus TCP Device

Figure 3-5 Configure the optional Modbus TCP Device

Go to [Data Collection] > [Wired Devices], click [Add Device], select Modbus TCP, complete the form as follows, and then click [Save and Configure Tag].

Field

Value in This Example

Description

Name

Packaging-Machine-03

Identifies the Device in this system and must be unique.

Protocol

Modbus TCP

Must match the communication protocol used by the target Device.

IP Address

192.168.0.89

In this example, this is the address of the computer running PeakHMI. For a real Device, enter an address accessible from the gateway.

Port

502

This example uses the default Modbus TCP Port.

Slave Address

1

Identifies the Modbus slave to access.

Polling Cycle

1 sec

The system reads Device data every 1 sec. For production use, set it according to the required update frequency and Device communication capacity.

3.3.3 Add the Inlet_Pressure Tag

In the Tag list of Packaging-Machine-03, click [Add], complete the form as follows, and then click [Save].

Field

Value in This Example

Description

Name

Inlet_Pressure

Identifies the Tag in this system. Duplicate Tag names are not allowed within the same Device.

Function Code

03 Holding Register

Reads the simulated Holding Register. For a real Device, select the Function Code according to its Tag address table.

Address

0

According to the Modbus protocol data model, this example uses offset 0. PeakHMI displays the same register as 400001 because it uses a reference-number convention.

Data Type

short (int16)

Must match the actual data type of the item in the Device.

R/W Permission

Read Only

This example validates reading only.

3.3.4 Publish and Validate Wired Data

Click [Publish Wired] in the upper-right corner of the page to apply the new Wired Device and Tag configurations.

Figure 3-6 Validate the optional Inlet_Pressure Tag

  1. Confirm that the collection status of Packaging-Machine-03 is normal.
  2. Open its Tag list and confirm that Inlet_Pressure has a [Latest Value] and that [Update Time] continues to refresh.
  3. Change the value corresponding to 400001 in PeakHMI and wait for one or more Polling Cycles.
  4. Confirm that the [Latest Value] of Inlet_Pressure follows the simulator value.

If no data is displayed or the value is incorrect, check the data source, network, IP Address, Port, Slave Address, Function Code, Address, Data Type, and [Debug Log].

Chapter 4 Configure MQTT Reporting and Validate Data

This chapter adds the normally collected distance Tag of LDDS75_Sensor_01 to a Tag Group and reports its latest value to an MQTT Broker through MQTT. If a real MQTT Broker or target platform supporting Standard MQTT is available, skip Section 4.2 and enter the actual connection and security parameters provided by the target service when creating the Cloud Service.

If no real MQTT service is available, use Mosquitto and MQTTX to prepare a test environment as described in Section 4.2. This environment is used only to validate the data path and does not represent a production cloud platform or deployment.

4.1 Workflow

Complete the following four tasks:

  1. If no real MQTT service is available, prepare an MQTT test environment. (Optional)
  2. Create a Tag Group and add distance.
  3. Create an MQTT Cloud Service.
  4. Configure a Publish message and validate the data at the receiver.

4.2 Prepare an MQTT Test Environment (Optional)

This example uses Mosquitto 2.0.20 on a Windows x64 computer. Download and install mosquitto-2.0.20-install-windows-x64.exe. This installation package includes the test configuration required for this example.

After installation, open the Mosquitto installation directory, hold down Shift, right-click an empty area, and select [Open PowerShell window here]. Paste the following command into PowerShell and press Enter:

1 .\mosquitto.exe -c .\mosquitto.conf -v

Figure 4-1 Prepare an MQTT Test Environment

Keep the PowerShell window open. If Port 1883 is already in use, a Mosquitto service or another application may already be using the Port. Stop the duplicate Mosquitto service or process and try again.

Start MQTTX, create a connection, and enter the following information:

MQTTX Field

Value

Name

MQTT_Test

Host

localhost

Port

1883

Client ID

Keep the value automatically generated by MQTTX.

Username

Leave blank.

Password

Leave blank.

Click [Connect]. A successful connection indicates that MQTTX has connected to Mosquitto running on the same computer. Keep Mosquitto running. MQTTX can remain connected or reconnect after the Publish message has been configured.

Because MQTTX and Mosquitto run on the same computer, MQTTX can use localhost. E2C Field runs on the gateway, so [Server Address] must be set to the LAN IP address of the computer that is accessible from the gateway. This example uses 192.168.0.89. Do not enter localhost or 127.0.0.1.

For other operating systems or hardware architectures, download the appropriate version from the Mosquitto website and follow its official instructions for installation, startup, and network access. The default configuration of Mosquitto 2.x may accept local connections only. When using a version downloaded from the official website, confirm that its Listener and access settings allow the gateway to connect over the LAN.

The Mosquitto configuration provided for this example is intended only for temporary functional testing on a controlled network. Do not use it directly in a production environment. Stop Mosquitto after testing.

4.3 Create a Tag Group

Go to [Data to Cloud] > [Tag Group], click [Create Group], complete the form as follows, and then click [Save].

Field

Value in This Example

Description

Name

Group_01

Identifies the data source selected by the Publish message. Use a name that makes the group easy to identify.

Report Type

Period

Reports data at a fixed interval so that messages can be observed continuously during initial validation.

Cycle Unit

sec

Sets the reporting interval in seconds in this example.

Report Interval

10 sec

Generates data for reporting every 10 sec. For production use, set it according to the data update rate, network traffic, and target-platform requirements.

After the first save, locate LDDS75_Sensor_01 in the Tag selection window, add the published distance Tag to Group_01, and then click [Save] again. The Tag Group takes effect when saved and does not need to be published separately.

A LoRaWAN Device sends new radio data according to its own reporting or heartbeat behavior, while the Tag Group publishes the latest value already received by E2C Field according to the interval configured in this section. Changing the MQTT reporting interval does not change how frequently the LoRaWAN Device sends an uplink.

If you completed the optional Wired Device workflow in Section 3.3, you can also add Inlet_Pressure to this or another Tag Group. Duplicate Tag names are not allowed within the same Tag Group because the receiver would not be able to identify the data accurately by name.

4.4 Create an MQTT Cloud Service

Figure 4-2 Create and configure an MQTT Cloud Service

Go to [Data to Cloud], click [Create Cloud Service], set [Cloud Service Type] to MQTT, enter MQTT_Service_01 as the Name, and click [Save]. Select the new Cloud Service and complete [Connection Configuration] as follows:

Field

Value in This Example

Description

Cloud Platform Type

Standard MQTT

Connects to a standard MQTT Broker. Azure IoT and AWS IoT use different connection and authentication methods and are not covered here.

Server Address

192.168.0.89

When using Mosquitto, enter the LAN IP address of the computer running the Broker. For a real service, enter a Broker host name or IP Address accessible from the gateway.

Port

1883

This example uses the common Port for unencrypted MQTT. For a real service, enter the Port opened by the Broker. A service using TLS normally provides a corresponding secure Port.

MQTT Client ID

E2C_Field_Gateway_01

Uniquely identifies this system to the Broker. It must be different from the Client ID automatically generated by MQTTX and from the IDs of other connected clients.

Keep Alive

60

Sets the connection heartbeat interval.

SSL/TLS

Off

The local test environment does not use encryption. Enable it and configure certificates as required by a real service.

Clear Session

No

Retains the previous session state.

MQTT Version

v3.1.1

Must match the version supported by the Broker.

User Authentication

Off

The local test environment does not use authentication. Enable it and enter credentials when a real service requires a username and password.

The [User Authentication] and [SSL/TLS] settings above apply only to the local simulation environment and are not recommendations for production deployment. When connecting to a real MQTT Broker or cloud platform, follow the connection parameters and security requirements provided by the target service.

After saving, confirm that the Cloud Service is enabled and check its connection status. A [Connected] status confirms only that E2C Field is connected to the MQTT Broker. It does not confirm that distance is being reported. Complete the Publish message configuration in the next section.

If the connection fails, check the Server Address and Port, confirm that the gateway can access the target address and that the target Port is open, and verify that User Authentication, SSL/TLS, and the MQTT Version meet the Broker requirements.

4.5 Configure a Publish Message and Validate Data

image.png

Figure 4-3 Configure an MQTT Publish message

In [Message Management] for MQTT_Service_01, select [Publish], click [Add], complete the form as follows, and then click [Save].

Field

Value in This Example

Description

Group

Group_01

Selects the Tag Group created in Section 4.3.

Topic

distance

Identifies the Publish configuration within this system.

Topic Alias

/field/quickstart/data

The Broker uses this value to route messages. The receiver must subscribe to the same value. For a real platform, enter the Topic required by the platform.

QoS

0

Uses QoS 0 for basic validation. For production use, select a level supported by the target platform that meets the message-delivery requirements.

Enabled

Yes

The system publishes messages according to the Tag Group reporting settings only when this configuration is enabled.

Do not configure a Subtopic in this example. Keep the default values for the other fields. After saving, confirm that the Publish message is enabled.

Validate Reported Data

  1. When using the Mosquitto test environment, connect MQTTX to the corresponding Broker and subscribe to /field/quickstart/data. Keep the Client ID automatically generated by MQTTX and confirm that it is different from E2C_Field_Gateway_01 used by E2C Field.
  2. When using a real MQTT service, subscribe to or view the same Topic in the target platform, actual MQTT client, or data-viewing page provided by the platform.
  3. Wait for at least one complete Tag Group reporting interval and confirm that the received message contains distance and its latest value.
  4. To validate a value change, change the measured distance only when it is safe to do so, and then manually trigger an uplink according to the Device instructions or wait for its next scheduled uplink.
  5. Confirm that the distance value received by the MQTT receiver follows the Latest Value displayed in [Data Collection].

If the Cloud Service is connected but no data is received, return to [Data Collection] and confirm that distance has a valid Latest Value. Then check that Group_01 contains distance, that the Publish message is enabled, that the configured Topic Alias exactly matches the subscribed Topic, and that the receiver is connected to the same Broker.

Chapter 5 Forward Data Through Modbus TCP

Modbus TCP Slave maps Tags to Modbus Coils, Discrete Inputs, Input Registers, or Holding Registers. A third-party Modbus TCP client reads data by using the gateway IP Address, service Port, Slave Address, Function Code, and Mapped Address.

This chapter maps the distance Tag of LDDS75_Sensor_01 to Modbus Holding Registers so that a SCADA system, HMI, host application, or other Modbus TCP client can read it. Because distance uses the int (int32) Data Type, the mapped value occupies two consecutive 16-bit Holding Registers. This example validates reading only and does not configure writeback. Use the actual target system for validation where possible. Use Modbus Poll only when the actual target system is temporarily unavailable or additional troubleshooting is required.

If the project objective is to forward LoRaWAN Device data through BACnet/IP, do not use this chapter as a substitute for that workflow. See the E2C Trinity LoRa Device to BACnet/IP Data Forwarding User Guide.

5.1 Workflow

Complete the following four tasks:

  1. Create and configure a Modbus TCP Slave service.
  2. Add one slave.
  3. Map distance to two Modbus Holding Registers as an int (int32) value.
  4. Validate the data in the actual target system or Modbus Poll.

5.2 Create and Configure a Modbus TCP Slave Service

  1. Go to [Data Forwarding] and click [Create].
  2. Select Modbus TCP Slave for [Driver], and then click [Save].
  3. Open the [Configuration] tab for Modbus TCP Slave and enable the service.
  4. Configure [Basic Settings] as follows, and then click [Submit].

Field

Value in This Example

Description

Port Number

502

The listening Port of the Modbus TCP Slave service. The allowed range is 1–65535. The client must use the same Port when connecting.

Maximum Connections

5

The maximum number of Modbus TCP clients that can connect simultaneously. The allowed range is 1–32.

Default Mapped Value Setting

Data Operation Value

Uses the value after Data Operation as the service default. Section 5.4 explicitly selects Data Original Value for this example because no Data Operation is configured for distance.

If Port 502 is already used by another service on the gateway, select an unused Port and configure the client to use the same value.

5.3 Add a Slave

Figure 5-1 Add a Modbus TCP Slave

Modbus TCP mappings are organized by slave. Each slave contains an independent Tag mapping table.

Click [Add] in the slave list, enter the following values, and then click [Save].

Setting

Value in This Example

Mapping Table Name

Tank_A_SCADA

Slave Address

1

[Mapping Table Name] cannot be changed after saving. Slave Addresses within the same Modbus TCP Slave service must be unique.

5.4 Add One Modbus Mapping

Open the Modbus Mapping Table for Tank_A_SCADA and click [Add]. Select the Device and Tag, configure the mapped value, mapped data type, Function Code, and initial address, and then click [Save].

Setting

Value in This Example

Description

Device

LDDS75_Sensor_01

Selects the LoRaWAN Device onboarded in Section 3.2.

Tag

distance

Selects the normally collected distance Tag.

Mapped Value Setting

Data Original Value

Exposes the original collected value. No Data Operation is configured for distance in this example. This selection overrides the Default Mapped Value Setting configured in Section 5.2.

Mapped Data Type

int (int32)

Matches the Data Type of distance. The 32-bit value occupies two consecutive 16-bit Holding Registers.

Initial Mapping Function Code

03 Holding Register

Maps the value to Holding Registers. The client uses Function Code 03 to read the registers. This example does not configure writeback.

Initial Mapped Address

1

Maps the first of the two registers to Address 1. The second register follows at the next address.

Different Modbus clients may use protocol offsets starting at 0 or reference addresses such as 40001. Configure the client according to the Function Code and Mapped Address shown in the mapping table, and confirm the address base used by the client. If the client uses a protocol offset starting at 0, Mapped Address 1 may need to be entered as 0. For Modbus Poll in this example, enter Address 1.

5.5 Validate Forwarded Data

5.5.1 Use the Actual Target System

  1. Open the [Status] tab for Modbus TCP Slave and confirm that the service is started.
  2. In the target system, enter gateway address 192.168.0.1 and service Port 502.
  3. Set Slave ID to 1 and use Function Code 03 to read two Holding Registers starting at Mapped Address 1.
  4. Interpret the two registers as one signed int (int32) value using the byte order configured in E2C Field, and compare the result with distance under [Data Collection].
  5. Change or observe the measured distance only when it is safe to do so. After the Device sends the next uplink, confirm that the client value follows the updated Latest Value.

5.5.2 Use Modbus Poll (Optional)

Suggested download: Modbus Poll official download page

  1. Start Modbus Poll and go to [Connection] > [Connect].
  2. Select Modbus TCP/IP in the connection settings, set IP Address to 192.168.0.1 and Server Port to 502, and then connect to the gateway.
  3. Go to [Setup] > [Read/Write Definition] and configure the read request as follows:
  • Slave ID: 1
  • Function: 03 Read Holding Registers (4x)
  • Address: 1
  • Quantity: 2
  1. Configure the display so that the two registers are interpreted as one signed 32-bit integer using the byte order configured in E2C Field.
  2. Confirm that Modbus Poll can read distance and compare the result with the Latest Value displayed in [Data Collection].
  3. To validate an update, change the measured distance only when it is safe to do so, and manually trigger an uplink or wait for the next scheduled uplink. Confirm that Modbus Poll follows the updated Latest Value.

企业微信截图_17872934177735.png

Figure 5-2 Validate Data Forwarding with Modbus Poll

If the client cannot connect, check that the service is enabled and started, that the gateway address and Port are correct, and that the network and firewall permit the connection. If the client connects but the value is incorrect or does not update, check the Slave ID, Function Code, address base, Quantity, Mapped Data Type, and byte order, and confirm that distance still has a valid Latest Value.

Chapter 6 Create and Validate an Alarm

This chapter creates a high-distance Alarm Rule based on the distance Tag of LDDS75_Sensor_01 and validates alarm activation, automatic recovery, and history. The example validates local alarms within E2C Field and does not configure external notifications. For notification-channel configuration, see the complete software manual.

6.1 Workflow

Complete the following three tasks:

  1. Create an Alarm Rule that monitors distance.
  2. Make distance meet the condition and check Real-time Alarms.
  3. Restore the test value and confirm that the alarm recovers automatically and appears in Alarm History.

6.2 Create an Alarm Rule

image.png

Figure 6-1 Configure the distance Alarm Rule

Go to [Alarm Management] > [Alarm Rules], click [Add], configure the rule as follows, and then click [Save].

Field

Value in This Example

Alarm Name

Distance_High

Alarm Content

distance exceeds the test threshold

Alarm Level

Medium

Device

LDDS75_Sensor_01

Tag

distance

Condition

Greater Than

Comparison Value

3000

Trigger Interval

1 sec

Trigger Count

1

Push Enabled

Off

This example sets [Trigger Interval] to 1 sec and [Trigger Count] to 1 so that an alarm is generated promptly after the test condition is met. Keep the default values for the other fields.

Before saving the test rule, check the current distance value. Use 3000 only when the measured distance can safely move above and back to or below this value. Otherwise, replace the Comparison Value with a temporary threshold that can be triggered and restored safely without affecting production.

6.3 Trigger and Validate the Alarm

  1. Make the measured distance greater than 3000 only when it is safe to do so.
  2. Manually trigger an uplink according to the Device instructions, or wait for the next scheduled uplink. Confirm under [Data Collection] that the Latest Value of distance is greater than 3000.
  3. Wait for the Alarm Rule evaluation.
  4. Go to [Alarm Management] > [Real-time Alarms], confirm that Distance_High appears, and check its level, content, Device, Tag, Value, and Time.
  5. Go to [Data Collection] and confirm that the alarm count for the applicable level has increased on the Device card.

image.png

Figure 6-2 View Real-time Alarms and alarm status

If no alarm is generated, confirm that the real-time Tag value meets the condition, that the correct Device and Tag are selected, and that Condition, Comparison Value, Trigger Interval, and Trigger Count are correct.

6.4 Restore the Test Condition and View Alarm History

  1. Return the measured distance to 3000 or below under safe conditions.
  2. Manually trigger another uplink, or wait for the next scheduled uplink, and confirm under [Data Collection] that the Latest Value no longer meets the alarm condition.
  3. Return to [Real-time Alarms] and confirm that the alarm recovers automatically.
  4. Go to [Data Collection] and confirm that the applicable alarm count on the Device card has decreased.
  5. Go to [Alarm Management] > [Alarm History] and confirm that the Distance_High record can be found.

image.png

Figure 6-3 View Alarm History

If the alarm condition is still present, do not use Manual Clear as a substitute for resolving the actual abnormal condition. Correct the condition or restore the test value before handling the alarm record.

Chapter 7 Troubleshooting

This chapter groups common checks under general system operation, LoRaWAN Device onboarding, optional Modbus TCP Data Collection, MQTT Data to Cloud, Modbus TCP Data Forwarding, and Alarm Management. First confirm that the gateway network and system time are correct. For Data to Cloud, Data Forwarding, or Alarm Management issues, confirm that upstream Data Collection is operating normally. If the cause remains unclear, review [Debug Log] and the complete software manual.

7.1 General System Issues

Symptom

Checks

Most page functions do not respond or the page displays -1

Check whether the network cable between the management computer and gateway is loose and confirm that the computer can still access the gateway management address. Reopen the page after connectivity is restored and confirm whether the last operation was saved.

Time or timestamps are incorrect

Check the RobustOS Pro Time Zone, System Time, and NTP status. Use periodic synchronization for an online gateway and manually synchronize an offline gateway at regular intervals. After changing the time, check recently generated collection, MQTT, forwarding, and alarm data.

7.2 LoRaWAN Device Onboarding Issues

Symptom

Checks

The Payload Codec for the Device cannot be found

Do not select a Codec for another model. Follow How to Convert LoRaWAN Sensor Codec Formats and Import to E2C Field to obtain, convert, import, test, and publish the applicable Codec.

Publish LoRa synchronization fails

Check the LNS Engine status, confirm that the Profile and Codec are published, verify that the Device identity fields are complete, and review the failure details in [Sync History].

The Device does not join

Check the LoRa antenna, radio coverage, Region, MAC Version, Regional Parameters Revision, Activation Method, Device EUI, Join EUI, and Application key. Review [Events] and [Live Frames].

The Device is online but distance has no value

Confirm that the Codec Uplink Test succeeds and that the test payload produces distance as an int (int32) Tag. Check the decoding result of the actual uplink in [Live Frames].

The LoRaWAN Device is operating normally but is shown as offline

Check both Expected Uplink Interval in the Device Profile and Online Detection Threshold in the Device configuration. Expected Uplink Interval should reflect the Device's normal uplink behavior. Online Detection Threshold determines how long E2C Field waits without receiving an uplink before marking the Device as offline. It must not be less than Expected Uplink Interval and should allow sufficient margin for delayed or missed uplinks. Set it to twice the Device heartbeat period or 24 hr according to the Device behavior and project requirements. After changing the settings, republish the applicable Profile and Device configurations.

Data updates less frequently than expected

Check the Device reporting and heartbeat settings. A LoRaWAN Device may sleep for an extended period. Changing the Tag Group reporting interval, MQTT reporting interval, or page refresh interval does not change the radio uplink frequency of the Device.

7.3 Modbus TCP Data Collection Issues (Optional)

Symptom

Checks

The Wired Device does not connect

Confirm that the data source is running; check whether the gateway can access the Device IP Address and Port; verify the IP Address, Port, and Slave Address; and check the firewall on the computer or site network.

The Tag has no value or does not update

Check that the Function Code, Address, Data Type, and byte order match the Device documentation; confirm that the Device and Tag were published; and wait for at least one Polling Cycle.

The value is incorrect

Check the Tag Data Type, byte order, address base, and Data Operation configuration, and compare the result with the original value in the Device.

The cause remains unclear

Go to [Debug Log] and review the collection information and communication errors.

7.4 MQTT Data to Cloud Issues

Symptom

Checks

The MQTT Cloud Service does not connect

Confirm that the Broker is running; check Server Address and Port; verify that the gateway can access the Broker and that the firewall permits the target Port; and, when authentication or encryption is used, check the username, password, SSL/TLS, certificates, and MQTT Version.

MQTTX connects but E2C Field does not

MQTTX can use localhost when it runs on the Broker computer. E2C Field must use the Broker LAN IP Address or host name accessible from the gateway.

The Cloud Service is connected but no data is received

Confirm that distance has a valid Latest Value, Group_01 contains distance, and the Publish message is enabled and uses the correct Group. Check that the configured Topic Alias exactly matches the Topic subscribed to by the receiver and that the receiver is connected to the same Broker.

A client disconnects repeatedly

Confirm that E2C Field, MQTTX, and other connected clients use different MQTT Client IDs.

7.5 Modbus TCP Data Forwarding Issues

Symptom

Checks

The client cannot connect

Confirm that Modbus TCP Slave is enabled and started; verify the gateway IP Address and Port; check the network and firewall; and confirm that the current connections have not reached Maximum Connections.

The client connects but the value is zero, incorrect, or does not update

Confirm that distance still has a valid Latest Value. Check Slave ID 1, Function Code 03, starting Address 1, Quantity 2, Mapped Data Type int (int32), Mapped Value Setting, and byte order. Confirm that the client interprets the two registers as one signed 32-bit integer.

The client address does not appear to match the mapping table

Confirm whether the client uses protocol offsets starting at 0 or reference addresses such as 40001. Convert the client address according to Function Code 03 and the Mapped Address shown in E2C Field. For Modbus Poll in this example, use Address 1.

7.6 Alarm Management Issues

Symptom

Checks

The alarm is not generated

Confirm that the rule uses LDDS75_Sensor_01 and distance, that the Latest Value meets the Condition, and that Comparison Value, Trigger Interval, and Trigger Count are correct. If the Device has not sent a new uplink, manually trigger one or wait for the next scheduled uplink.

The alarm does not recover automatically

Confirm that the Latest Value of distance no longer meets the alarm condition. If the Device has not reported the restored condition, trigger or wait for another uplink.

The alarm record is not as expected

Check the gateway System Time and confirm whether the same rule already has an active alarm that has not recovered.