We use cookies to optimize site functionality and provide the best possible experience.
View our new Privacy and Protection of Personal Data here.
Accept Settings
INDEX

TLM Series LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler with 2 x 10/100Base-T(x) Ports, 1 x RS232 and 1 x RS485 Serial Ports and/or BPL (Broadband Power Line Link) User Manual

1. About TLM Series LoRaWAN EndNode Modems with Modbus TCP/RTU Scheduler

 

TLM Series LoRaWAN EndNode Modems are designed for industrial-grade Radio Frequency (RF) communication and particularly for facilities of rugged industry and infrastructure. TLM Series LoRaWAN EndNode Modems are tailored to perform various features such as wide temperature range, wide power input range and several connectivity ports. Thus, TLM Series LoRaWAN EndNode Modems are the best choice for facility management, sewage treatment, power utility, telecommunication, transportation and all other applications that require LoRaWAN connectivity.

REDZ Broadband Power Line (BPL) link allows device to communicate with full transparent TCP/IP standard over Low Voltage power lines and allows easy connection between TCP/IP based terminals without use of extra cables.

TLM Series LoRaWAN EndNode Modems can create a link between field devices and LoRaWAN server. Field devices with TCP/IP connectivity can be read via Modbus TCP protocol and data can be sent to LoRaWAN Server. Also field devices with RS232/RS485 Serial interface can be read in Modbus RTU protocol and data can be sent to LoRaWAN Server. Transparent connection between field devices and applications and LoRaWAN server is also available. Typical applications: Automated Meter reading, Wireless networks, Home – Building – Industrial Automation, Remote Control, Wireless Sensors, Telemetry, Wireless Alarm and Security Systems…

 

2. Hardware Features

TLM Series LoRaWAN EndNode Modems have the versions with and without BPL (Broadband Power Line) Link.

2.1 Features

  • Supports 2 x 10/100Base-T(X) ports
  • Supports Full/Half-Duplex, auto MDI/MDI-X on each port
  • DHCP Server Capability
  • Supports 1 x RS232 and 1 x RS485 Serial Connection up to 115200 Baud
  • Embedded web interface for ease of use
  • Radio Band Options:
    865MHz
    IN 865 MHz – India, LoRaWAN RF Communication
    868MHz
    EU 868 MHz – Europe, LoRaWAN RF Communication
    915MHz
    US 915 MHz – Covers US 902-928MHz ISM Band, LoRaWAN RF Communication
    923MHz
    AS 923 MHz – BN 923 MHz – Brunei, LoRaWAN RF Communication
    AS 923 MHz – KH 923 MHz – Cambodia, LoRaWAN RF Communication
    AS 923 MHz – ID  923 MHz – Indonesia, LoRaWAN RF Communication
    AS 923 MHz – JP 920 MHz – Japan, LoRaWAN RF Communication
    AS 923 MHz – LA 923 MHz – Laos, LoRaWAN RF Communication
    AS 923 MHz – NZ 915 MHz – New Zealand, LoRaWAN RF Communication
    AS 923 MHz – SG 920 MHz – Singapore, LoRaWAN RF Communication
    AS 923 MHz – TW 922 MHz – Taiwan, LoRaWAN RF Communication
    AS 923 MHz – TH 920 MHz – Thailand, LoRaWAN RF Communication
    AS 923 MHz – VN 920 MHz – Vietnam, LoRaWAN RF Communication
  • 3 Main Device Functions:
    LoRaWAN Modbus TCP Scheduler
    LoRaWAN Modbus RTU Scheduler
    LoRaWAN Transparent Mode (Transparent bridge between LoRaWAN and TCP/IP or Serial Side)
  • Up to 40 device connection in Modbus TCP or RTU Scheduler modes 
  • Up to 10 device connection in Transparent TCP/IP mode 
  • Definable Modbus Serial Interface for Modbus RTU (RS232 or RS485 usage in same device)
  • Selectable Modbus Function Code, Definable Register Address, Total Register Number, Query Interval and Time Out durations.
  • Built in LoRaWAN Duty Cycle Check for EU868 and AS923 Models
  • Built in LoRaWAN payload size check and User can read any data in any interval
    TLM will automatically split based on Maximum Payload Size allowed and Duty Cycle Block Times
  • Sub-Band Mask Configurable for US915 Model
  • Activation Over Air (OTAA) or Activation by Personalization (ABP) Selectable
  • User defined LoRAWAN Port
  • Adaptive Data Rate functionality
  • Selectable Uplink Data Rate
  • Selectable Power Level
  • LoRaWAN Class C and Class A support
  • Easy monitor of transmitted data on web interface
  • Easy to follow Device Status on web interface
  • Easy to follow LoRaWAN packages on web interface 
  • Black List and White List based TCP/IP connection filter in transparent mode
  • Firmware Upgrade over Web
  • 2 firmware storage capability on same device (1 active only)
  • AC or DC wide range power options
  • Wide operating temperature range from -25 to 70 °C AC and -40 to 85 °C DC power input versions
  • Rugged Metal IP-40 housing design
  • DIN-Rail mounting

2.2 Extra Features for Models with BPL

  • Supports 2 x 10/100Base-T(X) ports + 1 x BPL link
  • Wide range 3 phase AC input
  • Supports up to 30Mbps PHY rate on BPL with Up to 10 hops and 1000 nodes
  • Up to 432 sub-carriers from 2 to 28MHz analog bandwidth
  • Support LDPC-C FEC with 128-bit AES core
  • Plug and play with Master/Slave selection via web interface

 

 

3. Installation

Each device has a Din-Rail kit on rear panel. The Din-Rail kit helps device to fix on the Din-Rail. Slant the switch and mount the metal spring to Din-Rail.

Then Push the switch toward the Din-Rail until you heard a “click” sound.

 

4. Front Panel Description

4.1 TLM344 & TLM444 & TLM354 & TLM454 & TLM364 & TLM464 & TLM374 & TLM474

  1. Standard SMA female Antenna interface, 50 ohm
  2. Micro USB or USB Type-C Console port for LOG in 115200 baud
    Console Tx and Rx Blinks when data transmission occurs
  3. Device Status LEDs
    STATUS: Blinks based on device operation
    - When TCP line used blinks during no connection and keeps ON after TCP connection
    - When Serial line used keeps ON
    Device Tx and Rx Blinks when data transmission occurs
    SERVER: Keeps ON after selecting Server from Server-Client Operating Modes. Keeps OFF if Client operating Mode selected
  4. ETHERNET Activity LEDs for port 1, 2 and TLM device itself. Blinks during ethernet activity
  5. 5 pin Terminal Block
    RS232: Tx, Rx and GND pins
    RS485: A, B and GND pins
    Can be activated over web interface and baud rate/data type configurable
  6. 10/100Base-T(X) Ethernet ports

4.2 TLM745 & TLM755 & TLM765 & TLM775

  1. Standard SMA female Antenna interface, 50 ohm
  2. Micro USB or USB Type-C Console port for LOG in 115200 baud
    Console Tx and Rx Blinks when data transmission occurs
  3. Device Status LEDs
    STATUS: Blinks based on device operation
    -When TCP line used blinks during no connection and keeps ON after TCP connection
    -When Serial line used keeps ON
    Device Tx and Rx Blinks when data transmission occurs
    SERVER: Keeps ON after selecting Server from Server-Client Operating Modes. Keeps OFF if Client operating Mode selected
  4. ETHERNET Activity LEDs for port 1, 2 and TLM device itself. Blinks during ethernet activity
  5. 5 pin Terminal Block for Serial Line
    RS232: Tx, Rx and GND pins
    RS485: A, B and GND pins
    Can be activated over web interface and baud rate/data type configurable
  6. BPL Status LED
    ACTIVITY: Blinks during BPL Ethernet activity
    LINK: LED Turns ON if the link can be established over BPL
    MASTER INDICATION: LED Turns ON if the device is configured and powered as “BPL Master” device
  7. 10/100Base-T(X) Ethernet ports

 

5. Top Panel Description

5.1 TLM344 & TLM354 & TLM364 & TLM374


  1. Power Input DC: 5-48V DC (max. 60V). Polarity protected so that the power input can be connected in any direction
  2. Power LED: Turns ON when there is power in device
  3. Reset Buttons
    RESET TO SERVER: Resets the device to factory setting as Server from Server-Client Operating Modes
    RESET TO CLIENT: Resets the device to factory setting as Client from Server-Client Operating Modes
    Reset can be done at any time by pushing any of the buttons for more than 5 seconds.

5.2 TLM444 & TLM454 & TLM464 & TLM474

  1. Power Input AC: 100 - 240V AC (120 – 370V DC), 50Hz to 60Hz AC Input
  2. Power LED: Turns ON when there is power in device
  3. Reset Buttons
    RESET TO SERVER: Resets the device to factory setting as Server from Server-Client Operating Modes
    RESET TO CLIENT: Resets the device to factory setting as Client from Server-Client Operating Modes
    Reset can be done at any time by pushing any of the buttons for more than 5 seconds.

 

5.3 TLM745 & TLM755 & TLM765 & TLM775

  1. Power Input AC: 3 phase input, 110V–240V/50-60Hz. It is also ok to connect only single phase to the device such as L1-N connection only.
    AC Power supply use L1-N only. Phase 2-3 connections are used to BPL signal transmission.
  2. Power LED: Turns ON when there is power in device
  3. Reset Buttons
    RESET TO SERVER: Resets the device to factory setting as Server from Server-Client Operating Modes
    RESET TO CLIENT: Resets the device to factory setting as Client from Server-Client Operating Modes
    Reset can be done at any time by pushing any of the buttons for more than 5 seconds.

 

NOTE1 :  BPL Model can be purchased in 2 versions:

1. P-N Model: Phase to neutral model (Standart Model). That version gets power from terminal pins 1 and 2 from phase and neutral. It can also transmit data from that pins and other pins usage is optionAl (Ex: Master can be connected to all phases and slaves can be connected to relevant phases)

2. P-P Model: Phase to phase model. That version also gets power from terminal pins 1 and 2 from phase and neutral. Data transmission only done through terminal pins 3 and 4. Phase to phase connection can be done to data transmission pins for better performance.
If not used then phase and neutral can still be connected for data transmission for terminal pins 3 and 4.

 

NOTE2:  BPL Model can be purchased in DC model as well:

This model will be same as "P-P Model"( Phase to phase model) on data connection and gets 12V DC power from terminal pins 1 and 2. Data transmission only done through terminal pins 3 and 4.

 

6. Ethernet Cables

TLM Series LoRaWAN EndNode Modems have standard Ethernet ports. According to the link type, the switches use CAT 3, 4, 5, 5e UTP cables to connect to any other network device (PCs, servers, switches, routers, or hubs).

6.1 Cable Type and Specifications

Cable Type Max. Length Connector
10BASE-T Cat. 3, 4, 5 100-ohm UTP 100 m (328 ft) RJ-45
100BASE-TX Cat. 5 100-ohm UTP UTP 100 m (328 ft) RJ-45

6.2 ETH Cable Pin Assignments

With 100BASE-TX/10BASE-T cable, pins 1 - 2 are used for transmitting data and pins 3 - 6 are used for receiving data.

Pin Number Description
1 TD+
2 TD-
3 RD+
4 Not Used
5 Not Used
6 RD-
7 Not Used
8 Not Used

7. System Comparison Between CAT5 and BPL Links

  CAT5 Based System BPL Link Based System
Media CAT5 Power Line
Bandwidth 100Mbps Up to 30Mbps
Re-Wire Yes No, Using existing Power Line
Span <100m <600m
Multiple Nodes N/A Up to 10 hops/1000 nodes
Encryption Yes, but difficult to configure Yes, Plug & Play
Installment Difficult Easy, simply user power line
Installment Cost High Low
Total Cost High Low

 

NOTE1 :  BPL Model can be purchased in 2 versions:

1. P-N Model: Phase to neutral model (Standart Model). That version gets power from terminal pins 1 and 2 from phase and neutral. It can also transmit data from that pins and other pins usage is optionAl (Ex: Master can be connected to all phases and slaves can be connected to relevant phases)

2. P-P Model: Phase to phase model. That version also gets power from terminal pins 1 and 2 from phase and neutral. Data transmission only done through terminal pins 3 and 4. Phase to phase connection can be done to data transmission pins for better performance.
If not used then phase and neutral can still be connected for data transmission for terminal pins 3 and 4.

 

NOTE2:  BPL Model can be purchased in DC model as well:

This model will be same as "P-P Model"( Phase to phase model) on data connection and gets 12V DC power from terminal pins 1 and 2. Data transmission only done through terminal pins 3 and 4.

 

8. Serial Cables

TLM Series LoRaWAN EndNode Modems have 1 x RS232 and 1 xRS485 port. Serial line can be connected other serial devices such as RTUs, PLCs, energy meters or any other field device.

8.1 RS232 Cable Pin Assignments

1. Terminal connector for 3 wire Tx-Rx-GND RS232 data transmission

Pin Number Description
1 GND
2 Rx
3 Tx

8.2 RS485 Cable Pin Assignments

1. Terminal Connector for 2 wire RS485 connection and GND (if needed)

Pin Number Description
1 A
2 B
3 GND (Suggested to use)

 

9. Usage Scenarios and Connection Diagrams

Some of the usage scenarios of TLM Series LoRaWAN EndNode Modems are described below. Usages are not limited to that examples and user may create their own usage scenario. 

9.1 Send Field Modbus RTU Device Data to LoraWAN Server

TLM Series LoRaWAN EndNode Modems can read field Modbus RTU devices based on its Modbus RTU Scheduler and can send data to LoRaWAN server. TLM can automatically arrange data send interval and package size based on LoRaWAN regulations, user do not need to make calculations to fit to duty cycle, TLM can do it automatically for AS923 and EU868 Models. If package size is more than available payload size or if there are many packages in the queue, TLM can split/store in its memory until next available interval.

TLM Series LoRaWAN EndNode Modem set to Server Mode and device function set to Modbus RTU Scheduler. TLM can be individually connected to RS232 device and RS485 device, both serial interface can be active at same time. Field Modbus RTU devices such as protocol converters, energy analyzers, PLCs and remote IO devices can be read by TLM Series LoRaWAN EndNode Modem and their data can be send to LoRaWAN Server automatically.

9.2 Send Field Modbus TCP Device Data to LoraWAN Server

TLM Series LoRaWAN EndNode Modems can read field Modbus TCP devices based on its Modbus TCP Scheduler and can send data to LoRaWAN server. TLM can automatically arrange data send interval and package size based on LoRaWAN regulations, user do not need to make calculations to fit to duty cycle, TLM can do it automatically for AS923 and EU868 Models. If package size is more than available payload size or if there are many packages in the queue, TLM can split/store in its memory until next available interval.

TLM Series LoRaWAN EndNode Modem set to Client Mode and device function set to Modbus TCP Scheduler. TLM can be connected to field Modbus TCP devices and it has built in mechanism to keep connection alive. Field Modbus TCP devices such as protocol converters, energy analyzers, PLCs and remote IO devices can be read by TLM Series LoRaWAN EndNode Modem and their data can be send to LoRaWAN Server automatically.

9.3 Send Field TCP/IP Devices Data to LoraWAN Server Transparently

TLM Series LoRaWAN EndNode Modems can also act as transparent gateway between field TCP/IP devices and LoRaWAN server. TLM can listen data from field TCP/IP devices and can send received data to LoRaWAN server. TLM can automatically arrange data send interval and package size based on LoRaWAN regulations, user do not need to make calculations to fit to duty cycle, TLM can do it automatically for AS923 and EU868 Models. If package size is more than available payload size or if there are many packages in the queue, TLM can split/store in its memory until next available interval.

TLM Series LoRaWAN EndNode Modem set to Server Mode and device function set to Transparent. Field TCP/IP devices such as PLCs and local or remote software systems can connect to TLM listening port and can send data to LoRaWAN Server automatically.

9.4 Send Field Serial Devices Data to LoraWAN Server Transparently

TLM Series LoRaWAN EndNode Modems can also act as transparent gateway between field RS232 or RS485 Serial devices and LoRaWAN server. TLM can get data from field serial devices and can send received data to LoRaWAN server. TLM can automatically arrange data send interval and package size based on LoRaWAN regulations, user do not need to make calculations to fit to duty cycle, TLM can do it automatically for AS923 and EU868 Models. If package size is more than available payload size or if there are many packages in the queue, TLM can split/store in its memory until next available interval.

 TLM Series LoRaWAN EndNode Modem set to Client Mode and device function set to Transparent. Field RS232 or RS485 devices such as PLCs and local software systems can make link with TLM over serial interface and can send data to LoRaWAN Server automatically.

 

10. Configuration via WEB Interface

TLM Series LoRaWAN EndNode Modems can be configured over web interface.
Device will get IP from DHCP client when connected to a network. User can use discovery tool to see IP of the device.

Once the IP of the device is get, user may login the device by simply typing the Ip address of device.

NOTE: TLM default firmware runs with DHCP off and expects an IP lease. If user need static IP or prefers DHCP on during start up, additional firmware is available.

 

NOTE:  If there is no DHCP server in LAN, REDZ device will get default 192.168.1.1 IP if it is set as Server Mode. It will get default 192.168.1.100 IP if it is set as Client mode.

10.1 Connecting Web Interface

Simply write IP of the device to the http client. Google Chrome is suggested to use. Login screen will pop up.
Default user name: admin
Default password: admin

Main screen of device will appear with following information

Firmware Info, MAC details and Device Name on top

Menu Items on left

Menu Item details in center

10.2 MENU: Operating Mode

From this menu user may select the operating mode of the device. TLM has 3 Main Device Function:

  1. Modbus TCP Scheduler: TLM reads field Modbus TCP devices and send data to LoRaWAN Server.
  2. Modbus RTU Scheduler: TLM reads field Modbus RTU devices and send data to LoRaWAN Server.
  3. Transparent Mode: TLM sends any Package from TCP/IP or Serial Side to LoRaWAN Server.

Data is bidirectional in each device function, means LoRaWAN can also send data to field devices based on LoRaWAN class A or C.



Device ID” field is the unique Device ID of TLM device itself, based on LoRa Module serial number.

Device Name” field is used to identify device.

Device Function” field is used to select device behaviour. 

TLM can act as Modbus TCP Scheduler and send Modbus TCP data to LoRaWAN Server: TLM is set to Client Mode and "Device Function" is "Modbus TCP Scheduler".

TLM can act as Modbus RTU Scheduler and send Modbus RTU data to LoRaWAN Server: TLM is set to Server Mode and "Device Function" is "Modbus RTU Scheduler".

TLM can act as transparent gateway between field TCP/IP devices and LoRaWAN Server: TLM is set to Server Mode and "Device Function" is "LoRaWAN Transparent Modem". Field TCP/IP devices can connect listening port of TLM and can send data to LoRaWAN Server.

TLM can act as transparent gateway between field RS232 or RS485 serial devices and LoRaWAN Server: TLM is set to Client Mode and Device Function is "LoRaWAN Transparent Modem". Field serial devices can be connected to TLM and can send data to LoRaWAN Server.

 

NOTE: TLM Series LoRaWAN EndNode Modems have built in mechanism to check maximum allowed payload size. If package received (transparent package, Modbus TCP package or Modbus RTU package) exceeds maximum allowed payload size, then TLM automatically splits package and send split messages to LoRaWAN Server 1 by one by storing split message in memory.

TLM can store up to 100 last messages in its memory queue.

TLM can also automatically blocks data sending based on duty cycle and continues to send back again when duty cycle block time is over. First in messages in queue is send first (FIFO).

 

If Device Operating Mode is Server and "Device Function" is set as "Modbus RTU Scheduler", following settings will be shown.

Users may enter Modbus RTU Scheduler details including Serial interface settings and Modbus RTU command settings and query intervals.

NOTE:  Up to 40 commands can be activated in TLM Series LoRaWAN EndNode Modems. User can read many registers with 1 command. If the command response length exceeds maximum allowed payload then TLM splits the Modbus package, store it and send split packages 1 by 1 according to duty cycle limitations.

If Device Operating Mode is Client and "Device Function" is set as "Modbus TCP Scheduler", following settings will be shown.

Users may enter Modbus TCP Scheduler details including TCP/IP parameters and Modbus TCP command settings and query intervals.

 

NOTE:  Up to 40 commands can be activated in TLM Series LoRaWAN EndNode Modems. User can read many registers with 1 command. If the command response length exceeds maximum allowed payload then TLM splits the Modbus package, store it and send split packages 1 by 1 according to duty cycle limitations.

TLM has smart mechanism to manage TCP sockets and TLM will use up to 10 sockets to connect remote/local Modbus TCP devices. If all commands send to 1 TCP IP and port then 1 socket will be used, if there are more than 10 TCP IP address in list, then TLM will use next free socket to connect the next device.

 

Once the setting has been changed, “Save Configuration” button will be enabled.

After clicking button system will tell if the settings applied successfully or not.

 

NOTE 1: TLM Series LoRaWAN EndNode Modems can keep configuration of 2 different modes in its memory and once the configuration enabled, its already saved settings will be applied. Device can act as Server or Client at a time.

 

NOTE 2:  Settings will be applied once the device is rebooted from web interface or repowered manually.

 

10.3 MENU: Network Settings - Server

From this menu user may change the network settings of the device.

If Modbus RTU Device Function is selected:

  • User can activate DHCP server.
  • User can force device to a static IP.

If Transparent Device Function is selected:

  • User can change TCP Listening port for field devices.
  • User can select maximum number of clients allowed to connect device.
  • User can activate DHCP server.
  • User can force device to a static IP.

"Listening Port": TCP Port that TLM uses for incoming connections. Remote devices can use TLM IP and this port to connect to TLM for Radio communication. Not available if "Modbus RTU Scheduler" is selected as "Device Function".

"Maximum Number of Clients": Maximum numbers of incoming connections accepted. TLM can accept up to 10 simultaneous connection and all devices can send TCP data to Radio network. Not available if "Modbus RTU Scheduler" is selected as "Device Function".

"Use Static Address for Device": Set a static TCP IP for TLM from this part. Enable and enter network settings and TLM will be available to connect from this static IP locally or remotely (gateway must be set properly for remote WAN connection).

Following parameters available if “DHCP Server” setting is enabled. This is used if DHCP server is needed in network. TLM can distribute IP to field devices connected to it in this way.


Also if the device has Broadband Power Line (BPL) option:

User can select operating mode of BPL either MASTER or NODE.

NOTE: Standard firmware of REDZ BPL supports up to 10 hops and 1000 nodes. Only 1 device can be MASTER in same network.

 

Once the setting has been changed, “Save Configuration” button will be enabled.

After clicking button system will tell if the settings applied successfully or not.

 

NOTE 1: TLM Series LoRaWAN EndNode Modems can keep configuration of 2 different modes in its memory and once the configuration enabled, its already saved settings will be applied. Device can act as Server or Client at a time.

 

NOTE 2: Settings will be applied once the device is rebooted from web interface or repowered manually.

 

NOTE 3: If "LoRaWAN Transparent Modem" is selected as "Device Function" and if one of the Serial connections is enabled, the device will act as Serial to LoRaWAN Transparent Gateway and only following menu items will be available.

Same options are available when Device Function is set to Modbus RTU Scheduler as well.

 


10.4 MENU: Network Settings - Client

From this menu user may change the network settings of the device.

  • User can force device to a static IP.

If Transparent Device Function is selected:

  • User can enter IP of the Target Server.
  • User can change target TCP Server Listening port.

"Server Static Ip Address": Remote TCP IP adress that TLM will try to connect automatically. Not available if "Modbus TCP Scheduler" is selected as "Device Function".

"Listening Port": Remote TCP Port that TLM will try to connect automatically. Not available if "Modbus TCP Scheduler" is selected as "Device Function".

"Use Static Address": Set a static TCP IP for TLM from this part. Enable and enter network settings and TLM will be available to connect from this static IP locally or remotely (gateway must be set properly for remote WAN connection).

Following parameters and static IP settings available for “Use Static IP Address” setting.

Also if the device has Broadband Power Line (BPL) option:

User can select operating mode of BPL either MASTER or NODE.

NOTE:  Standard firmware of REDZ BPL supports up to 10 hops and 1000 nodes. Only 1 device can be MASTER in same network. If the device is in client mode, it is suggested to use “NODE” as setting.

Once the setting has been changed, “Save Configuration” button will be enabled.

 

After clicking button system will tell if the settings applied successfully or not.

 

NOTE 1: TLM Series LoRaWAN EndNode Modems can keep configuration of 2 different modes in its memory and once the configuration enabled, its already saved settings will be applied. Device can act as Server or Client at a time

 

NOTE 2: Settings will be applied once the device is rebooted from web interface or repowered manually.

 

NOTE 3: If "LoRaWAN Transparent Modem" is selected as "Device Function" and if one of the Serial connections is enabled, the device will act as Serial to LoRaWAN Transparent Gateway and only following menu items will be available.

Same options are available when Device Function is set to Modbus TCP Scheduler as well.

10.5 MENU: Serial Settings

This menu is available when

  • Device Function is set to LoRaWAN Transparent Modem.

Otherwise, menu item will not be available for Modbus RTU Scheduler or Modbus TCP Scheduler Device functions.

From this menu user may activate RS232 or RS485 connection. Once serial connection enabled, the device will act as Serial to LoRaWAN Transparent Gateway and some Network options will be disabled. Yet again web interface with basic network settings will be accessible.

  • User can select to activate RS232 line and can set baud rate and data type for serial line.
  • User can select to activate RS485 line and can set baud rate and data type for serial line.

Following settings are available for serial line.

"Baud rate": Serial communication baud rate selection.

"Line Control": Serial communication data type selection in form of Data bits-Parity-Stop bits. Available options are:
7_EVEN_1 (Not used in Modbus)
8_NONE_1
9_NONE_1
8_EVEN_1
8_EVEN_2
8_ODD_1
8_ODD_2
8_NONE_2
9_NONE_2

Once the setting has been changed, “Save Configuration” button will be enabled.

 

After clicking button system will tell if the settings applied successfully or not.

 

NOTE: TLM Series LoRaWAN EndNode Modems can keep configuration of 2 different modes in its memory and once the configuration enabled, its already saved settings will be applied. Device can act as Server or Client at a time. Let’s say TCP Server enabled in Server operating mode and RS232 serial line enabled in Client operating mode on same device, the device can switch between to settings simply by changing the mode.

 

NOTE: Settings will be applied once the device is rebooted from web interface or repowered manually.

 

NOTE: This page has same settings both for Server and Client operating modes. The Menu is available when Device Function is set to LoRaWAN Transparent Modem.


10.6 MENU: Device Status

From this menu user may monitor device status and statistics based on operating mode of device. The page also helps users to check device health and communication details.

"IP Address": TCP/IP address of TLM itself.

"App Status": It shows current status of TLM application. "SERVING CONNECTIONS" means device is ready for normal operation.

"Log Status": It is only available when "Log" is enabled from "Management" menu and shows current status of TLM logging. "LOG_STATE_TRYWRITELOG" means normal operation.

"Log Counter": It is only available when "Log" is enabled from "Management" menu and shows how many log lines has been transfered till now.

"N. of Module UART Errors": Number of module uart errors. Device will enter "Reboot State" if this number is above 20.

"N. of Module UART Input Overflow Errors": Number of module input overflow errors.

"N. of TCP Output Full Errors": Number of TCP output full errors during trying to send data to TCP side. Device will enter "Reboot State" if this number is above 5. Not available if one of serial line is enabled.

"N. of TCP Disconnections": Number of TCP disconnections from TLM. Not available if one of serial line is enabled.

"N. of CRC Errors on LoRa Input Messages": Number of CRC errors during getting LoRa packages.

"N. of Incorrect LoRa Characters Received": Number of Incorrect characters received during getting LoRa packages.

"N. of LoRa Messages Received Correctly": Number of LoRa packages received successfully over the LoRaWAN Network.

"N. of LoRa Messages Sent Correctly": Number of LoRa packages sent to LoRaWAN Network successfully.

"N. of Gateway Messages Received Correctly": Number of data packages received from Serial RS232 and RS485 side or TCP side based on TLM gateway settings.

"N. of Gateway Messages Sent Correctly": Number of data packages sent to Serial RS232 and RS485 side or TCP side based on TLM gateway settings.

"N. of LoRaWAN Messages Pending": Number of LoRaWAN messages pending in the memory of device.

NOTE:  Device can store up to 100 messages in memory and send to LoRaWAN Server in Frist in First Out (FIFO) method. 

"N. of LoRa Messages Lost": Number of LoRaWAN messages lost (and failed to transmit to LoRaWAN Server) due to too much data in memory queue. User can try reduce data query interval from field device in that case.

"Last LoRaWAN Message Duty Cycle Block Time (s)": Duty Cycle Block Time shows how much device will wait after last message sent to LoRaWAN Server due to Duty Cycle Limitations.

In "Modbus RTU Master Status" part (Available when "Device Function" is Set to "Modbus RTU scheduler":

Device will show 10 lines in this part for connecting up to 40 devices described in command list.

"Modbus Slave Address": Is the Modbus Slave address for defined command that is executed.

"Modbus Slave Serial Port": Is the port defined for  command that is executed.

"Modbus Slave Data Type": Is the serial data baud rate and data type defined for command that is executed.

"Last Query Date": Is the last time the command executed.

"Last Modbus Package": Is the last modbus frame received for the command executed.

"Status": Is the status for command execution.

In "Connections" part (Available is "Device Function is Set to "LoRaWAN Transparent Modem":

Device can show up to 10 lines in this part based on "Maximum Number of Clients" setting under "Network Settings" Menu.

"Ip Address": Is the TCP IP address of client connected to TLM.

"Incoming Port": Is the TCP Port of socket used by client connected to TLM.

After clicking “Refresh Status” button, system will reload data only and will not reload page. Button will be disabled during reload for an instance. If timeout occurs during the reload, the button will be enabled again with warning of timeout. In normal operation reload of status data will be done immediately. "Reset Logs" button will reset device status parameres.

NOTE1: "Connections" list will not be visible if one of the serial lines is activated when device will act as Serial to LoRaWAN Server Transparent Modem.

NOTE 2:  "Client Operation Mode" has similar status menu. In client configuration TLM will connect remote TCP IP and port of device if "Device Function" is set to "LoRaWAN Transparent Modem", thus status menu will have extra item to show remote IP of the target TCP device.

if "Device Function" is set to "Modbus TCP Scheduler", menu will show "Modbus TCP Master Status" list.

Device will show 10 lines in this part for connecting up to 40 devices described in command list.

"Modbus Slave Address": Is the Modbus Slave address for defined command that is executed.

"Modbus Slave TCP IP": Is the TCP IP defined for  command that is executed.

"Modbus Slave TCP Port": Is the TCP Port defined for command that is executed.

"Last Query Date": Is the last time the command executed.

"Last Modbus Package": Is the last modbus frame received for the command executed.

"Status": Is the status for command execution.


10.7 MENU: LoRa Settings

From this menu user may change LoRaWAN parameters.

  • Select Activation method
    End-Device Activation Over the Air (OTAA)
    End-Device Activation by Personalization (ABP)
  • Enter Device Address, Network Session Key and Application Session Key if ABP selected
  • Enter Application EUI and Application Key if OTAA selected (device already have unique Device EUI)
  • Change LoRaWAN port
  • Activate or Deactivate Adaptive Data Rate
  • Select Uplink Data Rate
  • Select Tx Power Level (EIRP)
  • Select LoRaWAN Class A or Class C (only unicast messages supported)
  • Select LoRaWAN Data Transmission Method as with or without Acknowledgement message.
  • Enter Sub-Band Mask 1 and Sub-Band Mask 2 values for US915 models

TLM uses Semtech’s LoRa proprietary spread spectrum modulation technique. This modulation, in contrast to conventional modulation techniques, permits an increase in link budget and increased immunity to in-band interference. It achieves sensitivities 8 dB better than FSK modulation.

LoRa also provides significant advantages in both blocking and selectivity, solving the traditional design compromise between range, interference immunity and energy consumption.

Tx Power Level EIGRP is calculated as following:

Max. EIRP = MIN (Max. allowed EIRP, Max. RF Power + RF Gain + 2.15dB)

If ABP is selected, following settings will be available:

  • Device Address: A unique 32-Bit device-address, used for radio communication within a LoRaWAN network.
  • Network Session Key: A device-specific 128-Bit network session key used for MIC calculation and verification.
  • Application Session Key: A device-specific 128-Bit application session key used to encrypt and decrypt the payload field of application specific messages.

 

Sub-Band Mask 1 and Sub-Band Mask 2 values also available in this screen for US915 models

 

The details of how data sent to LoRaWAN Server and payload formatting is described in Chapter 12 "Read Modbus Data and send to LoRaWAN Server - Configuration Example for latest Payload Decoders" with example application.

NOTE 1: The Status Messages is sent in every connection to LoRaWAN Server.

Status Message - Device Status

Message sent to LoRaWAN Port number 1 in every connection to LoRaWAN Server

4 Bytes: TLM unique Device Id

1 Byte: Frame Type (Lower 4 bits) and Package Number (Upper 4 bits). If Package Number is 1 or more that means the package splitted.

0x00 : means status package for device status and package is the first package

1 Byte: Number of Modbus devices configured to be read

1 Byte: LoRaWAN Port of the response package

4 Bytes: RTC Time

3 Bytes: TLM Device firmware version

N Bytes (maximum 22): TLM Device name configured by user

 

NOTE 2: Modbus message sent to LoRaWAN configured Port (default is 3) and minimum send interval defined by modbus query interval.

 

4 Bytes: TLM unique Device Id

1 Byte: Frame Type (Lower 4 bits) and Package Number (Upper 4 bits). If Package Number is 1 or more that means the package splitted.

0x01: means Modbus RTU Payload and this is the first package

1 Byte: Modbus Slave Device Address

1 Byte: Modbus Function Code

2 Bytes: Modbus Data Start Address

2 Bytes: Modbus Data Total Registers

1 Byte: Total Data Size in Payload

Modbus Data Frames are shared 1 by 1 in following format, each data is 2 bytes

2 Bytes: Modbus Register Data

....Next data that maximum payload size allows

 

Once the setting has been changed, “Save Configuration” button will be enabled.

 

After clicking button system will tell if the settings applied successfully or not.

 

NOTE 1: TLM Series LoRaWAN EndNode Modems can keep configuration of 2 different modes in its memory and once the configuration enabled, its already saved settings will be applied. Device can act as Server or Client at a time. This way different LoRa settings can be stored in 2 different operating modes.

 

NOTE 2: Settings will be applied once the device is rebooted from web interface or repowered manually.

 

NOTE 3: This page has same settings both for Server and Client operating modes.


10.8 MENU: LoRa Status

From this menu user may monitor LoRa status and package details. Package from gateway side comes from either TCP/IP or RS232/RS485 serial line based on operating mode of device. The page also helps users to diagnose LoRaWAN connection status.

The page has several parts. 

LoRaWAN Network/Activation Status: 

"Network Status": That part shows if the TLM is Active in LoRaWAN Network or not. Following Options are available:
Active (ABP)
Active (OTAA)
Joining (OTAA)
If the devices goes to "Active" status, the other LoRaWAN network information will be available as well.

"Data Rate": Shows current data rate used to send data packets in the next uplink.

"LoRaWAN Port Number": Shows the LoRaWAN Port Number used for sending data packets in the next uplink.

"Maximum Payload Size": Shows maximum payload size allowed in LoRaWAN Network.

"Device Address": Shows unique 32-Bit device address that is used for sending data packets in LoRaWAN Network.

"Power Level (EIRP)": Shows current configured transmit power level.

Latest Sent and Received LoRaWan Data Message Details:

"Device Time": Shows the system time when latest LoRaWAN message sent.

"Data Rate": Shows the data rate of latest LoRaWAN message sent.

"Channel": Shows the channel of latest LoRaWAN message sent.

"Nu. Of Transmitted Packages": Shows the number of radio packages used for latest LoRaWAN message sent.

"Transmit Power Level (dBm)": Shows the transmit power level in dBm of latest LoRaWAN message sent.

"RF Msg. Air Time (ms)": Shows the airtime in miliseconds of latest LoRaWAN message sent.

"No Data Received Counter": Shows the numbe rof LoRaWAN messages received without any data.

"Device Time": Shows the system time when latest LoRaWAN message received.

"Data Rate": Shows the data rate of latest LoRaWAN message received.

"Channel": Shows the channel of latest LoRaWAN message received.

"RSSI (dBm)": Shows the RSSI value in dBm of latest LoRaWAN message received.

"SNR (dB)": Shows the SNR value in dB of latest LoRaWAN message received.

"RxSlot": Shows the Rx Slot value of latest LoRaWAN message received.

Latest LoRaWan and Gateway Side Message Details: 

Gateway side is TCP/IP or Serial side based on user settings.

"Device Time": Shows the system time when latest LoRaWAN message received.

"Message Type": That part shows latest received LoRaWAN message type. Following Options are available:
GET_NWK_STATUS_RSP
RECV_CDATA_IND
RECV_UDATA_IND
RECV_NO_DATA_IND
SEND_CDATA_TX_IND
SEND_CDATA_RSP
SEND_UDATA_TX_IND
SEND_UDATA_RSP
JOIN_NETWORK_IND
JOIN_NETWORK_TX_IND
OTAA_JOIN_NETWORK_RSP
OTAA_SET_JOIN_PARAM_RSP
ABB_ACTIVATE_DEVICE_RSP

"Payload in Hex": Shows latest LoRaWAN message received payload in Hexadecimal format.

"Payload As ASCII": Shows latest LoRaWAN message received payload in ASCII format.

"Device Time": Shows the system time when latest Gateway side message received.

"Payload in Hex": Shows latest Gateway side message received payload in Hexadecimal format.

"Payload As ASCII": Shows latest Gateway side message received payload in ASCII format.

 

NOTE: This page has same options both for Server and Client operating modes.



10.9 MENU: Security Settings - Server Only

NOTE:  This menu is available only if "Device Function" is set to "LoRaWAN Transparent Modem".


This menu is available only in Server Operating mode since it filters TCP/IP connections based on IP of the devices.
From this menu user may activate TCP IP filter based on White list (accepted packages from IP Address) or Black list ( rejected packages from IP Address). 

  • User can select to activate White List and TLM device will accept data packages only from the devices with addresses stated in the list.
  • User can select to activate Black List and TLM device will accept all data packages except from the devices with addresses stated in the list.

Following settings are available for any of the list.

 

NOTE: In this page user can enter 0.0.0.0 or the exact IP value of the device. The options with 0.0.0.0 will be discarded (not filtered).

Once the setting has been changed, “Save Configuration” button will be enabled.

After clicking button system will tell if the settings applied successfully or not.

 

NOTE 1: Settings will be applied once the device is rebooted from web interface or repowered manually.

 

NOTE 2: This page is only available for Server Operating mode.

 

10.10 MENU: Management

From this menu user may change parameters or send command to device 

  • User can change system time. There is no battery inside the device so clock will be lost after a power down and will set to default.

The device restarts itself every 86400 seconds (which means every 24 hours). There are also timeout restart routines in Server mode during listening clients and in Client Mode trying to connect to the server. ( both preset to 10 minutes which means device will restart system if fails to connect a server in Client mode or a client do not connect in preset time in Server mode)

  • User can change firmware of device. REDZ TLM LoRaWAN EndNode Modems has easy to use firmware capability and system can store 2 firmware at memory. After a firmware change, user can restore back old firmware anytime needed.

After a firmware change old configuration will be used for minor changes. If a major change occurs system will restore to factory default configuration.

  • User can change the login information.

  • User can change the debug level of the device. REDZ TLM LoRaWAN EndNode Modems series has micro USB or USB Type-C and gives log in 115200 - 8N1 format.
    Any terminal program can be used to listen the LOG over USB type-C or micro USB port of the device which is recognized as Virtual COM port in PC.
    LOG to remote UDP server is also available. If set to UDP server, then TLM will send LOG data to remote UDP server device.

  • User can restore to factory settings and force device to reboot. Factory settings restored for Client if the device in Client mode and factory settings are restored for Server if the device in Server mode.

Set Device Time” This part shows time at page load. Reload page to see updated time. Current local time shows the PC time. User can set the STG time based on shown PC time. The device sets the date and time and reboots.

In "Live Firmware Update" part:

Firmware upgrade is possible only with files that REDZ supplied. Once the file selected, TLM shows selected file:

Then “Upload Firmware” button must be clicked. TLM will start to upload file and show status on pop up screen.

Click "Close" when finished. If somehow LKM fails to upload, refresh webpage and try again please.

After successful upload, TLM will show "Alternative Firmware Date" and "Alternative Firmware Version" data.

Click "Reboot Alternative Firmware" and TLM will reboot with new firmware and show status on screen.

This will take 5 seconds only. Please wait .

Check firmware details from upper part of main screen please if the update firmware procedure finalized properly

 

NOTE 1:  User must refresh cache of their browser by clicking CTRL+F5 after a succesfull firmware change so that it will force browser to reload web interface (with latest updates/changes).

 

NOTE 2:  In major updates user must also reset device to factory settings.

 

In "Download / Upload Configuration" part:

User download current configuration of the device to a file or restore a previously defined configuration to device from file.

"Download Current Configuration": Downloads the configuration to a file. It uses "Device Name" for file name and the extensions will be "*.zcfg".
"Download Configuration File": Uploads the configuration from "*.zcfg" file.

 

In "Log" part:

User may activate Logging and see details of operation. There are different levels of Log with different amount of data. 

"None": Logging is closed
"Error": Only errors in systems will be logged
"Info": General info and errors will be logged
"Debug": All details regarding device operation will be logged

If "Console" is selected as output of Log, then micro USB or USB Type-C port of device will be used for logging. Proper cable must be connected and a teminal should be used to receive Log data. As an example "RealTerm" tool can be used.

Simply select COM port and set baud rate 115200 and data type 8N1 and then click open. Device will send log data.

 

If "UDP Server" is selected as output of Log, then proper tool must be used to get log data. User must set "UDP Server IP" and "UDP Server Port". Device will send Log to that address. As an example "Package Sender" tool can be used.

Click "File" and then "Settings". Enable "UDP Server" and set the port. Device will send Log data to UDP server.

Here is a video example to enable UDP log and receive data via UDP Server software. Video is created with CKL series but applies to all series.

 

NOTE: This page has same settings both for Server and Client operating modes.

 

11. Read Modbus Data and send to LoRaWAN Server - Configuration Example for older Payload Decoders

This section gives example how TLM Series LoRaWAN EndNode Modems can be used to read field Modbus RTU device and send data to LoRaWAN server.

Used devices:

  1.  TLM Series LoRaWAN EndNode Modem
  2. STG Series Wireless MBus – Modbus RTU/TCP Converter as Field Modbus RTU device
  3. LoRaWAN Gateway device and Loriot server as LoRaWAN server

11.1 Configure TLM LoRaWAN

As a first step user should select under Operating Mode page device Configuration and Device Function. For this example we set Server Operating Mode and Device Function as Modbus RTU Scheduler.

If field device is Modbus TCP, user should select Client Operating Mode and Device Function as Modbus TCP Scheduler.

Once the device function is set, a list with maximum 40 entries will be shown on Operating Mode page.

In our example TLM connected to field device and field device (STG Series Wireless MBus – Modbus RTU Converter) supports 3 different clients.

Modbus Serial Interface: Field device is connected to RS485 serial port. GND connection should be done.

Data Baud Rate and Type: Must be configured based on field Modbus device serial settings.

Modbus Slave Address: For each query, user should enter unique Modbus Slave address. TLM will query those slaves.

Function Code: Function Code of the entry should be configured based on field Modbus device. Following Modbus Function Codes are available:

Read Coil Status (FC=01)

Read Input Status (FC=02)

Read Holding Registers (FC=03)

Read Input Registers (FC=04)

Data Address and Total Number of Data: Modbus Command details should be configured based on field Modbus device. Data Address of first register and total number of data.

Query Interval and Timeout Value: Modbus Command minimum query interval and timeout value for that specific command.

Each entry is queried 1 by 1 and timeout value is valid if there is no response, so actual query intervals changes depending on number of enabled entries and query details of that entries in real application.

Usually, it is good idea to enter longer query intervals to save data usage.

Enable Query: Option to enable or disable entry. We need to query 3 slaves so that we enabled 3 entries only.

 

Click Save Configuration when all settings are done.

11.2 Define LoRaWAN Settings

Next step will be making the settings for LoRaWAN server.

Activation Method: We selected End-Device Activation Over-the-Air (OTAA) method for this example. Activation by Personalization (ABP) can also be selected if needed.

Also, device is defined in Loriot LoRaWAN Server with this specific Device EUI 70-B3-D5-8F-F0-03-8A-E6

Application Key and Aplication EUI: Values entered based on values in Loriot LoRaWAN Server.

LoRaWAN Port: Port is selected for this Application. Port 1 is used by TLM Status info, so any number between 2 and 255 can be entered here based on Application needs.

Data Rate and Other Settings: We selected Adaptive data rate so that TLM can arrange automatically the Uplink Data Rate based on LoRaWAN server side. Other settings are available based on Application needs. In this example LoRaWAN Class C is used.

Click Save Configuration when all settings are done and Restart device with command under Management menu.

11.3 Check Status of LoRaWAN Activation

LoRaWAN device activation can be monitored from TLM LoRa Status page.

 

Once the device is Active, it will start reading field Modbus devices.

If Activation takes longer than expected, user can also activate device LOG and try check details over console or UDP server log.

11.4 Monitor Read Modbus Data

Reading of Modbus devices can be monitored from Device Status page.

In this example all 3 queries are ok and we can see last messages from field device under Last Modbus Package column.

11.5 How Data Are Sent to LoRaWAN Server

When the device is Active, it will send status information to the server. Status information is always sent to LoRaWAN Port 1.

Status Frame has n bytes of data (max 28 bytes )

  • Frame Type: 1 Byte
  • Device ID: 4 Bytes
  • Target Port: 1 Byte
  • Device Date Time: 4 Bytes
  • Firmware Version: 3 Bytes
  • Device Name: (n Bytes, max 15)

Here is example message and its structure:



Number

Byte Count Data Explanation Example (Hex)
1 1 Byte Frame Type Gives detail of frame and used protocol
0x10: status frame and Modbus RTU target protocol
0x11: status frame and Modbus TCP target protocol
0x12: status frame and transparent protocol
10
2 4 Bytes Device ID Unique ID of the device that is shown on Operating Mode page
00 01 9F 0F
3 1 Byte Target Port LoraWan Port that will be used to send data 03
4 4 Bytes Device Date Time Here are sample codes to get Date Time Details
#define RTC_GET_SECONDS(t) ((t) & 0x3F)
#define RTC_GET_MINUTES(t) (((t) >> 6) & 0x3F)
#define RTC_GET_MONTHS(t) (((t) >> 12) & 0x0F)
#define RTC_GET_HOURS(t) (((t) >> 16) & 0x1F)
#define RTC_GET_DAYS(t) (((t) >> 21) & 0x1F)
#define RTC_GET_YEARS(t) ((((t) >> 26) & 0x3F) + 2000)
34 21 7D A7
5 3 Bytes Firmware Version Firmware version of TLM used 00 02 0F
6 Remaining Bytes (max 15) Device Name TLM Device Name that is shown on Operating Mode page

4c 4f 52 41 57 41 4e 5f 53 45 52 56 45 52

After status frame, TLM Series LoRaWAN EndNode Modem will send read Modbus data in special frame. Frame changes based on Modbus TCP or Modbus RTU reading.

 

Remaining Bytes Device Name of TLM: Device Name that is shown on Operating Mode page.

MODBUS RTU Frame:

Modbus RTU Data Frame has n bytes of data (Allowed by Maximum Payload Size which is also shown in LoRa Status Page)

  • Frame Type: 1 Byte
  • Slave ID: 1 Byte
  • Modbus Function Code: 1 Byte
  • Modbus Start Register Value: 2 Bytes
  • Total Registers Queried: 2 Bytes
  • Total Numbers of Data Bytes: 1 Bytes
  • Data Bytes: N bytes (Total Frame length will be less than or equal to Maximum Payload Size allowed)

Here is example data read by TLM and shown in Device Status page:

Here is how it is shown in Loriot LoRaWAN server:

Number Byte Count Data Explanation Example (Hex)
1 1 Byte Frame Type Gives detail of frame and used protocol
0x00: data frame and Modbus RTU target protocol
0x01: data frame and Modbus TCP target protocol
0x02: data frame and transparent protocol
00
2 1 Byte Slave ID Field Modbus Device Slave ID 03
3 1 Byte Modbus Function Code Modbus Function Code used to read that Field Modbus Device 03
4 2 Bytes Modbus Start Register Value Modbus Start Register value that query is done 00 00
5 2 Bytes Total Registers Queried Modbus Command Total Register Value queried 00 10
6 1 Byte Total Numbers of Data Bytes Shows how many data bytes will follow after this byte 20
7 N Bytes Data Data itself. Total Frame length will be less than or equal to Maximum Payload Size allowed
User should parse data based on their own application
19 14 21 90 09 b4 00 13 00 07 00 02 00 00 00 01 00 03 44 9a 3f ff 00 00 00 01 00 2d 36 2c ad 21

 

MODBUS TCP Frame:

Modbus TCP Data Frame has n bytes of data (Allowed by Maximum Payload Size which is also shown in LoRa Status Page)

  • Frame Type: 1 Byte
  • Field Device TCP IP: 4 Bytes
  • Field Device TCP Port:2 Bytes
  • Slave ID: 1 Byte
  • Modbus Function Code: 1 Byte
  • Modbus Start Register Value: 2 Bytes
  • Total Registers Queried: 2 Bytes
  • Total Numbers of Data Bytes: 1 Bytes
  • Data Bytes: N bytes (Total Frame length will be less than or equal to Maximum Payload Size allowed)

Here is example data read by TLM and shown in Device Status page:

Here is how it is shown in Loriot LoRaWAN server:

 

Number Byte Count Data Explanation Example (Hex)
1 1 Byte Frame Type Gives detail of frame and used protocol
0x00: data frame and Modbus RTU target protocol
0x01: data frame and Modbus TCP target protocol
0x02: data frame and transparent protocol
01
2 4 Bytes Field Device TCP IP TCP IP Value of field Modbus Device
192.168.0.119 in this example
C0 A8 00 77
3 2 Bytes Field Device TCP Port TCP Port Value of field Modbus Device
502 in this example
01 F6
4 1 Byte Slave ID Field Modbus Device Slave ID 0F
5 1 Byte Modbus Function Code Modbus Function Code used to read that Field Modbus Device 01
6 2 Bytes Modbus Start Register Value Modbus Start Register value that query is done 00 01
7 2 Bytes Total Registers Queried Modbus Command Total Register Value queried 00 08
8 1 Byte Total Numbers of Data Bytes Shows how many data bytes will follow after this byte 01
9 N Bytes Data Data itself. Total Frame length will be less than or equal to Maximum Payload Size allowed
User should parse data based on their own application
00

11.6 How Data Are Sent to LoRaWAN Server When Package Size is more than Maximum Payload Size 

TLM Series LoRaWAN EndNode Modems has unique feature to resize frames for LoRaWAN and also unique feature to calculate duty cycles based on LoRaWAN duty cycle limitations. Users do not need to worry on query interval or response size, TLM Series LoRaWAN EndNode Modems automatically splits and send read data.

Here is example reading command from TLM Modbus RTU Scheduler settings:

Here is example reading status from TLM Modbus RTU Scheduler settings:

Example Modbus response is 67 bytes, and based on Modbus RTU frame, Data is 62 bytes ( 31 registers):

02 03 3E 71 28 48 80 2C 2D 00 34 00 04 00 0C 00 00 00 01 00 02 00 00 00 00 00 00 00 01 00 03 00 00 00 00 00 00 00 01 00 07 00 00 00 00 00 00 00 01 00 0B 41 AD EB 85 00 00 00 01 00 0C 41 B0 3D 70 DB 3E

Maximum Payload size can be seen in LoRa Status page which is 51 bytes in this example:

TLM automatically divides data and send to LoRaWAN Server split messages and wait to send next part until duty cycle is available.

Here is device console LOG for the long Modbus frame and information regarding package split and duty cycle wait.

Here is how data is shown in Loriot LoRaWAN Server:

First Message

Number Byte Count Data Explanation Example Value (Hex)
1 1 Byte Frame Type 0x00: data frame and Modbus RTU target protocol 00
2 1 Byte Slave ID Field Modbus Device Slave ID 02
3 1 Byte Modbus Function Code Modbus Function Code used to read that Field Modbus Device 03
4 2 Bytes Modbus Start Register Value Modbus Start Register value that query is done 00 00
5 2 Bytes Total Registers Queried

Modbus Command Total Register Value queried

TLM automatically divides based on available Payload size

00 15
6 1 Byte Total Numbers of Data Bytes

Shows how many data bytes will follow after this byte
42 bytes + 8 bytes header information
Total 50 bytes,  byte still available in allowed payload size however t is not enough to show a register in 1 byte

2A
7 42 Bytes Data Split Data 71 28 48 80 2c 2d 00 34 00 04 00 0c 00 00 00 01 00 02 00 00 00 00 00 00 00 01 00 03 00 00 00 00 00 00 00 01 00 07 00 00 00 00

LOG shows that TLM waited 145 seconds after first message, then sent next part of split message.

Second Message

Number Byte Count Data Explanation Example Value (Hex)
1 1 Byte Frame Type 0x00: data frame and Modbus RTU target protocol 00
2 1 Byte Slave ID Field Modbus Device Slave ID 02
3 1 Byte Modbus Function Code Modbus Function Code used to read that Field Modbus Device 03
4 2 Bytes Modbus Start Register Value Modbus Start Register value that query is done is now start from Register 31 since first 30 of them queried and result shared in first message 00 15
5 2 Bytes Total Registers Queried

Modbus Command Total Register Value queried

Total 31 ( 0x1F) registers, 0x15 already shared now remaining 0x0A ( 10 registers) will be shared

00 0A
6 1 Byte Total Numbers of Data Bytes Shows how many data bytes will follow after this byte
0x14 equals to 20 bytes for remaining 10 registers
14
7 20 Bytes Data  Split Data 00 00 00 01 00 0b 41 ad eb 85 00 00 00 01 00 0c 41 b0 3d 70

 

12. Read Modbus Data and send to LoRaWAN Server - Configuration Example for latest Payload Decoders

TLM Series LoRaWAN EndNode Modems can be used to read field Modbus RTU (or Modbus TCP) devices and send modbus data to LoRaWAN server.

We used The "Things Network" as LoRaWAN Server in this application and Modbus Simulator software.

The payload decoder explained in this example applies to versions v2.02.02 and above.

12.1 Configure TLM LoRaWAN

As a first step user should select under Operating Mode page device Configuration and Device Function. For this example we set Server Operating Mode and Device Function as Modbus RTU Scheduler.

If field device is Modbus TCP, user should select Client Operating Mode and Device Function as Modbus TCP Scheduler.

Once the device function is set, a list with maximum 40 entries will be shown on Operating Mode page.

In our example TLM connected to Modbus simulator software and there will be 1 slave device.

Modbus Serial Interface: Field device is connected to RS485 serial port. GND pin is prefered to be connected.

Data Baud Rate and Type: Must be configured based on field Modbus device serial settings. In this example it is 9600 8N1.

Modbus Slave Address: For each query, user should enter unique Modbus Slave address. TLM will query those slaves. In this example there is one slave and adress is 1.

Function Code: Function Code of the entry should be configured based on field Modbus device. Following Modbus Function Codes are available:

Read Coil Status (FC=01)

Read Input Status (FC=02)

Read Holding Registers (FC=03)

Read Input Registers (FC=04)

In this example we use : Read Holding Registers (FC=03)

Data Address and Total Number of Data: Modbus Command details should be configured based on field Modbus device. Data Address of first register and total number of data. In this example register start at adress 1 and there are total 30 registers to be read.

Query Interval and Timeout Value: Modbus Command minimum query interval and timeout value for that specific command.

Each entry is queried 1 by 1 and timeout value is valid if there is no response, so actual query intervals changes depending on number of enabled entries and query details of that entries in real application.

Usually, it is good idea to enter longer query intervals to save data usage.

In this example we use query interval 11 seconds and timeout is 3 seconds.

Enable Query: Option to enable or disable entry. We need to query 3 slaves so that we enabled 3 entries only.

 

Click Save Configuration when all settings are done.

12.2 Define LoRaWAN Settings

Clicl "LoRa Settings" menu item to define LoRaWAN settings.

Activation Method: We selected End-Device Activation Over-the-Air (OTAA) method for this example. Activation by Personalization (ABP) can also be selected if needed.

Also, device is defined in The Things Network LoRaWAN Server with this specific Device EUI 70-B3-D5-8F-F1-01-85-75

Application Key and Aplication EUI: Values entered based on values in The Things NetworkLoRaWAN Server.

LoRaWAN Port: Port is selected for this Application.

Port 1 is used by TLM Device Status info
Port 3 is used to send Modbus Read data as default however any number between 3 and 255 can be entered here based on Application needs.

Data Rate and Other Settings: We selected SF7 data rate so that TLM can send with fastest Uplink Data Rate to LoRaWAN server side. Other settings are available based on Application needs. In this example LoRaWAN Class C is used.

 

Click Save Configuration when all settings are done and Restart device with command under Management menu.

12.3 Add End Device to LoRaWAN Server - Manual Method

In The Things Network LoRaWAN Server website, click "+ Register end device" and select "Enter end device specifics manually" and select following options:

Specify Join EUI and click confirm. This must be unique number for joining LoRaWAN Server.

Then enter the Device EUI 70-B3-D5-8F-F1-01-85-75 in this example and generate AppKey.

Click "Register end device" once finished.

Created device will be shown on screen.

TLM now can send data to LoRaWAN Server.


12.4 Add End Device to LoRaWAN Server - Select From Device List

In The Things Network LoRaWAN Server website, click "+ Register end device" and select "Select the end device in the LoRaWAN Device Repository". Then search for REDZ brand and select it as follows.

Select the model, hardware version, firmware version, profile and frequency plan:

Specify Join EUI and click confirm. This must be unique number for joining LoRaWAN Server.

Then enter the Device EUI 70-B3-D5-8F-F1-01-85-75 in this example and generate AppKey.

Click "Register end device" once finished.

Created device will be shown on screen.

TLM now can send data to LoRaWAN Server.

12.5 Check Status of LoRaWAN Activation

LoRaWAN device activation can be monitored from TLM LoRa Status page.

 

Once the device is Active, it will start reading field Modbus devices and send data to LoRaWAN Server.

If Activation takes longer than expected, user can also activate device LOG and try check details over console or UDP server log.

The Things Network LoRaWAN Server website "Live Data" can also be checked if TLM is sending data or not.

12.6 Monitor Read Modbus Data

Go to "Device Status" and check if Modbus devices are responding by checking "Last Modbus Package" data in "Modbus RTU Master Status" list.

 

12.7 How Data Are Sent to LoRaWAN Server

The Status Messages is sent in every connection to LoRaWAN Server.

Status Message - Device Status

Message sent to LoRaWAN Port number 1 in every connection to LoRaWAN Server

4 Bytes: TLM unique Device Id

1 Byte: Frame Type (Lower 4 bits) and Package Number (Upper 4 bits). If Package Number is 1 or more that means the package splitted.

0x00 : means status package for device status and package is the first package

1 Byte: Number of Modbus devices configured to be read

1 Byte: LoRaWAN Port of the response package

4 Bytes: RTC Time

3 Bytes: TLM Device firmware version

N Bytes (maximum 22): TLM Device name configured by user

Here is an example byte can be received by Server side:

00036FFE 00 01 03 60555496 020201 4C4F52415F4C575F534552564552

 

Number

Byte Count Data Explanation Example (Hex)
1 4 Bytes Device ID

Unique ID of the device that is shown on Operating Mode page

00036FFE 
2 1 Byte Frame Details

Gives detail of frame and frame counter


0xX0: Status Message - Device
0xX1: Modbus RTU Payload
0xX2: Modbus TCP Payload
0xX3: Transparent Payload - Serial
0xX4: Transparent Payload - TCP

0x0X: Frame counter, this is first frame

00
3 1 Byte Number of Modbus devices Configured to be read

1 Modbus device is being read by TLM

01
4 1 Byte Target Port LoraWan Port that will be used to send meter data 03
5 4 Bytes Device Date Time

Device date time, sampel function to parse this data is given in Payload Formatter part.


It is "2024-5-2 21:18:22"

60555496
6 3 Bytes Firmware Version

Firmware version of TLM used

It is "02.02.01"

020201 
7 Remaining Bytes (max 15) Device Name

TLM Device Name that is shown on Operating Mode page

It is "LORA_LW_SERVER"

4C4F52415F4C575F534552564552

Here is example screen from The Things Network LoRaWAn Server website:

Modbus Data Message

Message sent to LoRaWAN configured Port (default is 3) and minimum send interval defined by modbus query interval.

4 Bytes: TLM unique Device Id

1 Byte: Frame Type (Lower 4 bits) and Package Number (Upper 4 bits). If Package Number is 1 or more that means the package splitted.

0x01: means Modbus RTU Payload and this is the first package

1 Byte: Modbus Slave Device Address

1 Byte: Modbus Function Code

2 Bytes: Modbus Data Start Address

2 Bytes: Modbus Data Total Registers

1 Byte: Total Data Size in Payload

Modbus Data Frames are shared 1 by 1 in following format, each data is 2 bytes

2 Bytes: Modbus Register Data

....Next data that maximum payload size allows

Here is an example byte can be received by Server side:

00036FFE 01 01 03 0000 001E 3C 000100020003000400050006000700080009000A0000000000000000000F00000000000000000014000000000000000000190000000000000000001E

 

Number

Byte Count Data Explanation Example (Hex)
1 4 Bytes Device ID

Unique ID of the device that is shown on Operating Mode page

00036FFE
2 1 Byte Frame Details

Gives detail of frame and frame counter


0xX0: Status Message - Device
0xX1: Modbus RTU Payload
0xX2: Modbus TCP Payload
0xX3: Transparent Payload - Serial
0xX4: Transparent Payload - TCP

0x0X: Frame counter, this is first frame

01
3 1 Byte Modbus Slave Device Address

Modbus Address that the reading belongs to.

it is "1"

01
4 1 Byte Modbus Function Code

Modbus Function Code that the reading belongs to.

it is Read Holding Registers (FC=03)

03
5 2 Bytes Modbus Data Start Address

Start register address of the data sent to LoRaWAN Server.

it is "0"

0000
6 2 Bytes Modbus Data Total Registers

Total registers queried of the data sent to LoRaWAN Server.

it is "30"

001E
7 1 Byte Total Bytes Count

Total bytes of the data sent to LoRaWAN Server.

it is "60". Each register is 2 bytes, so there are 30 registers available.

3C
8 2 Bytes Modbus Data: 1

it is Decimal "1"

0001
9 2 Bytes Modbus Data: 2

it is Decimal "2"

0002
....... ....... .......

Every Modbus data parsed in same way

.......
37 2 Bytes Meter Data: 30

it is Decimal "30"

001E

Here is example screen from The Things Network LoRaWAn Server website:

12.8 How Data Are Sent to LoRaWAN Server When Package Size is more than Maximum Payload Size 

TLM Series LoRaWAN EndNode Modems has unique feature to resize frames for LoRaWAN and also unique feature to calculate duty cycles based on LoRaWAN duty cycle limitations. Users do not need to worry on query interval or response size, TLM Series LoRaWAN EndNode Modems automatically splits and send read data.

Here is example Modbus Package

00036FFE 01 01 03 0000 001E 3C 000100020003000400050006000700080009000A0000000000000000000F00000000000000000014000000000000000000190000000000000000001E

Here is how data is splitted:

Message 1: 

00036FFE 01 01 03 0000 0013 26 000100020003000400050006000700080009000A0000000000000000000F0000000000000000

 

Number

Byte Count Data Explanation Example (Hex)
1 4 Bytes Device ID

Unique ID of the device that is shown on Operating Mode page

00036FFE
2 1 Byte Frame Details

Gives detail of frame and frame counter


0xX0: Status Message - Device
0xX1: Modbus RTU Payload
0xX2: Modbus TCP Payload
0xX3: Transparent Payload - Serial
0xX4: Transparent Payload - TCP

0x0X: Frame counter, this is first frame

01
3 1 Byte Modbus Slave Device Address

Modbus Address that the reading belongs to.

it is "1"

01
4 1 Byte Modbus Function Code

Modbus Function Code that the reading belongs to.

it is Read Holding Registers (FC=03)

03
5 2 Bytes Modbus Data Start Address

Start register address of the data sent to LoRaWAN Server.

it is "0"

0000
6 2 Bytes Modbus Data Total Registers

Total registers queried of the data sent to LoRaWAN Server.

it is "19"

0013
7 1 Byte Total Bytes Count

Total bytes of the data sent to LoRaWAN Server.

it is "38". Each register is 2 bytes, so there are 19 registers available.

26
8 2 Bytes Modbus Data: 1

it is Decimal "1"

0001
9 2 Bytes Modbus Data: 2

it is Decimal "2"

0002
....... ....... .......

Every Modbus data parsed in same way

.......
26 2 Bytes Meter Data: 19

it is Decimal "0"

0000

Here is example screen from The Things Network LoRaWAn Server website:

Message 2: 

00036FFE 11 01 03 0013 000B 16 0014000000000000000000190000000000000000001E

Number

Byte Count Data Explanation Example (Hex)
1 4 Bytes Device ID

Unique ID of the device that is shown on Operating Mode page

00036FFE
2 1 Byte Frame Details

Gives detail of frame and frame counter


0xX0: Status Message - Device
0xX1: Modbus RTU Payload
0xX2: Modbus TCP Payload
0xX3: Transparent Payload - Serial
0xX4: Transparent Payload - TCP

0x1X: Frame counter, this is second frame

11
3 1 Byte Modbus Slave Device Address

Modbus Address that the reading belongs to.

it is "1"

01
4 1 Byte Modbus Function Code

Modbus Function Code that the reading belongs to.

it is Read Holding Registers (FC=03)

03
5 2 Bytes Modbus Data Start Address

Start register address of the data sent to LoRaWAN Server.

it is "19"

0013
6 2 Bytes Modbus Data Total Registers

Total registers queried of the data sent to LoRaWAN Server.

it is "11"

000B
7 1 Byte Total Bytes Count

Total bytes of the data sent to LoRaWAN Server.

it is "22". Each register is 2 bytes, so there are 11 registers available.

16
8 2 Bytes Modbus Data: 20

it is Decimal "20"

0014
9 2 Bytes Modbus Data: 21

it is Decimal "0"

0000
....... ....... .......

Every Modbus data parsed in same way

.......
18 4 Bytes Meter Data: 30

it is Decimal "30"

001E

Here is example screen from The Things Network LoRaWAn Server website:

 

12.9 Payload Formatter Example

Here is code for payload formatter used in The Things Network:

 

###############Code Start###############

function decodeUplink(input) {

  switch (input.fPort) {

    case 1:

      return {

        // Decoded data

        data: {

          deviceID: ((input.bytes[0] << 24) + (input.bytes[1] << 16) + (input.bytes[2] << 8) + (input.bytes[3])),

          frameType: getFrameType(input.bytes[4] & 0x0F),

          frameCounter: ((input.bytes[4] >> 4) & 0x0F),

          modbusQueryQty: input.bytes[5],

          targetPort: input.bytes[6],

          deviceTime: get_status_time((input.bytes[7] << 24) + (input.bytes[8] << 16) + (input.bytes[9] << 8) + (input.bytes[10])),

          firmwareVersion: `${input.bytes[11]}` +'.' + `${input.bytes[12]}` +'.' + `${input.bytes[13]}`,

          deviceName: getStringData(input.bytes, 14)

        },

      };

    

    case 3://Modbus

      return {

        // Decoded data

        data: {   

          deviceID: ((input.bytes[0] << 24) + (input.bytes[1] << 16) + (input.bytes[2] << 8) + (input.bytes[3])),

          frameType: getFrameType(input.bytes[4] & 0x0F),

          frameCounter: ((input.bytes[4] >> 4) & 0x0F),

          modbusID: input.bytes[5],

          functionCode: input.bytes[6],

          registerStartAdd: ((input.bytes[7] << 8) + (input.bytes[8])),

          registerQty: ((input.bytes[9] << 8) + (input.bytes[10])),

          totalNumberOfBytes: input.bytes[11],

          dataList: getDataList(input.bytes)

        },

      };

    case 4://Transparent

      return {

        // Decoded data

        data: {

          deviceID: ((input.bytes[0] << 24) + (input.bytes[1] << 16) + (input.bytes[2] << 8) + (input.bytes[3])),

          frameType: getFrameType(input.bytes[4] & 0x0F),

          frameCounter: ((input.bytes[4] >> 4) & 0x0F),

          dataList: getStringData(input.bytes, 5)

        },

      };

    default:

      return {

        errors: ['unknown FPort'],

      };

  }

}

 

function getFrameType(byte) {

  var frameTypes = ['Status Message - Device', 'Modbus RTU Payload', 'Modbus TCP Payload', 'Transparent Payload - Serial', 'Transparent Payload - TCP'];

  var frameTypeQty = frameTypeQty;

  

  if(byte >=0 && byte <=4)

    return frameTypes[byte];

  else

    return 'Unknown Frame';

}

 

 

 

function getStringData(bytes, startIndex) {

  var deviceNameS="";

 

  for(var i=startIndex;i<bytes.length;i++)

    deviceNameS = deviceNameS + String.fromCharCode(bytes[i]);

 

  return deviceNameS;

}

 

function get_status_time(hex){

 

  var hour= (((hex) >> 16) & 0x1F);

var min=  (((hex) >> 6) & 0x3F);

  var sec = ((hex) & 0x3F);

  var year= ((((hex) >> 26) & 0x3F) + 2000);

  var mon= (((hex) >> 12) & 0x0F);

  var day= (((hex) >> 21) & 0x1F);

  var time =  year +'-'+ mon +'-'+ day +' '+ hour +':'+ min +':'+ sec;

 

  return time;

}

 

function getDataList(bytes) {

  var dataLst = [];

  var data=0;

  var byteQuantity = 2;

  var byteCounter=0;

 

  for(var i=12;i<bytes.length;i++)

  {

    byteCounter++;

    data = data + (bytes[i] << (8 * (byteQuantity-byteCounter)));

 

    if(byteCounter === byteQuantity)

    {

      dataLst.push([data]);

      

      byteCounter = 0;

      data=0;

    }

    

  }

 

  return dataLst;

}

 

###############Code End###############

This code can be used as custom payload formatter in The Things Network LoRaWAn Server website.

 

13. Read Modbus Data and send to LoRaWAN Server - Video Example

12.1  Application Video Example for Send Field Modbus RTU Device Data to LoraWAN Server

TLM Series LoRaWAN EndNode Modems can read field Modbus RTU devices based on its Modbus RTU Scheduler and can send data to LoRaWAN server. TLM can automatically arrange data send interval and package size based on LoRaWAN regulations, user do not need to make calculations to fit to duty cycle, TLM can do it automatically for AS923 and EU868 Models. If package size is more than available payload size or if there are many packages in the queue, TLM can split/store in its memory until next available interval.

TLM Series LoRaWAN EndNode Modem set to Server Mode and device function set to Modbus RTU Scheduler. TLM can be individually connected to RS232 device and RS485 device, both serial interface can be active at same time. Field Modbus RTU devices such as protocol converters, energy analyzers, PLCs and remote IO devices can be read by TLM Series LoRaWAN EndNode Modem and their data can be send to LoRaWAN Server automatically.

Here is an example video for 868MHz version of TLM Series LoRaWAN EndNode Modem that reads Modbus registers over simulator software.

 

14. LoRaWAN Server Downlink - Modbus RTU Example

TLM Series LoRaWAN EndNode Modems can be used to read field Modbus RTU (or Modbus TCP) devices and send modbus data to LoRaWAN server. Meanwhile TLM Series LoRaWAN EndNode Modems can also be used send data to field devices as well.

We used "The Things Network" as LoRaWAN Server in this application and HUR series Modbus RTU remote IO device:

HUR Series Modbus RTU Remote I/O Devices can be connected to Digital field devices and Field Control or Central Software Control System can write parameters such as Turn ON a light or Turn on a valve. Communication protocol will be Modbus RTU. Outputs will be 5-275V AC-DC, 100mA Digital Optocoupler Output or 5Amperes 250VAC/30VDC Relay Output. Following devices can be used for this application:

  • HUR118 and HUR218 with 8 Channel 5-275V AC-DC, 100mA Digital Optocoupler Output

  • HUR128 and HUR228 with 8 Channel Digital 5Amps 250VAC/30VDC Relay Output

 

14.1 Configure TLM LoRaWAN and Send Data to LoRaWAN Server

As a first step user should create connection between TLM Series LoRaWAN EndNode Modems and LoRaWAN Server. Please follow setps descrivbed in Chapter 12: "Read Modbus Data and send to LoRaWAN Server - Configuration Example for latest Payload Decoders" ( or Chapter 11 based on your device version) and create connection.

Check field device Modbus definition, in this example, here are supported funciton codes:

 

HUR118 and HUR218 with 8 Channel 5-275V AC-DC, 100mA Digital Optocoupler Output

Uses Function Code 0x01: Read Coil Status to read status of output values

Uses Function Code 0x03: Read Holding Registers to read device parameters and status of monitoring values

Uses Function Code 0x05: Force Single Coil to set value of individual output values

Uses Function Code 0x06: Preset Single Register to set value of individual device parameter values

Uses Function Code 0x0F: Force Multiple Coils to set value of all output values at once

 

We will use FC:1 to read values and FC:5 to write values in this example based on following details

A. Read Output Values with Read Coil Status (FC=01)

Request

This command is requesting the ON/OFF status of discrete outputs # 01 to 08

from the slave device with address 1.

01 01 0001 0008 6C0C

01: The Slave Address (01 hex = address 1 )

01: The Function Code 1 (read Coil Status)

0001: The Data Address of the first output to read.

             ( 0001 hex = 01)

0008: The total number of outputs requested.  (08hex = 8) 

6C0C: The CRC (cyclic redundancy check) for error checking.

Response

01 01 01 19 9042

01: The Slave Address (01 hex = address 1 )

01: The Function Code 1 (read Coil Status)

01: The number of data bytes to follow (8 Outputs / 8 bits per byte = 1 byte)

19: Outputs 1 - 8 (0001 1001)

9042: The CRC (cyclic redundancy check).

The more significant bits contain the higher output variables. This shows that outputs 8-7-6 is off (0) and 5-4 is on (1), outputs 3-2 is off (0) and 1 is on (1). 

B. Write Individual Output Value with Force Single Coil (FC=05)

Request

This command is writing the contents of discrete output # 7 to ON in the slave device with address 1.

01 05 0006 FF00 6C3B

01: The Slave Address (01 hex = address 1 )

05: The Function Code 5 (Force Single Coil)

0006: The Data Address of the coil. (output# 7 = 7 hex)

             ( 0007 hex = 7  = output # 7 )

FF00: The value to write ( FF00 = ON,  0000 = OFF ) 

4E8B: The CRC (cyclic redundancy check) for error checking.

Response

The normal response is an echo of the query, returned after the coil has been written.

01 05 0006 FF00 6C3B

01: The Slave Address (01 hex = address 1 )

05: The Function Code 5 (Force Single Coil)

0006: The Data Address of the coil. (output# 7 - 1 = 6 = 06 hex)

FF00: The status written ( FF00 = ON,  0000 = OFF ) 

4E8B: The CRC (cyclic redundancy check) for error checking.

Here is TLM Series LoRaWAN EndNode Modem configuration to read HUR Modbus RTU Remote I/O device:

Here is live data in "The Things Network" as LoRaWAN Server:

 

14.2 Send Data to field Modbus RTU Device

TLM Series LoRaWAN EndNode Modems can be used send data to field devices. Sending data from LoRaWAN Server to field device will occur only during receiving data from field data device to LoRaWAN Server

NOTE:  Downlink only possible during uplink. User should configure sending intervals and LoRaWAN connection settings based on that.

Go to "Messaging" tab under end device in "The Things Network" LoRaWAN Server and select "Downlink". Enter payload as Modbus RTU message. Here are some examples for the HUR device used:

Digital out 1 OFF:  01 05 00 01 00 00 9C 0A

Digital out 1 ON:  01 05 00 01 FF 00 DD FA

 

Digital out 2 OFF:   01 05 00 02 00 00 6C 0A

Digital out 2 ON:   01 05 00 02 FF 00 2D FA

 

Digital out 3 OFF:    01 05 00 03 00 00 3D CA

Digital out 3 ON:    01 05 00 03 FF 00 7C 3A

 

Digital out 4 OFF:     01 05 00 04 00 00 8C 0B

Digital out 4 ON:     01 05 00 04 FF 00 CD FB

 

Digital out 5 OFF:      01 05 00 05 00 00 DD CB

Digital out 5 ON:      01 05 00 05 FF 00 9C 3B

 

Digital out 6 OFF:      01 05 00 06 00 00 2D CB

Digital out 6 ON:       01 05 00 06 FF 00 6C 3B

 

Digital out 7 OFF:       01 05 00 07 00 00 7C 0B

Digital out 7 ON:       01 05 00 07 FF 00 3D FB

 

Digital out 8 OFF:      01 05 00 08 00 00 4C 08

Digital out 8 ON:      01 05 00 08 FF 00 0D F8


For example to Turn On Digital Out 8, send Modbus RTU Hex message: 01 05 00 08 FF 00 0D F8 as follows and click "Schedule downlink".

During next upload this command will be sent through TLM Series LoRaWAN EndNode Modems to Modbus RTU field device which is HUR series Modbsu RTU Digital Output device and will Turn On out 8.

NOTE:  User can send any command to field Modbsu RTU device in this way just like using device through RS485 cable. All sent commands must be supported by field device.

 

14.3 LoRaWAN Server Downlink - Video Example

Here is video for same application:

Here is the physicall implementation of same example:

 

15. Product Selection

Model Operating Frequency 5-48V (max.60V) DC Power Input 100 - 240V AC (120 – 370V DC), 50Hz to 60Hz AC Power Input 3 Phase AC Power input, 110V–240V/50-60Hz AC Power Input 2 x 10/100 T(x) ETH Ports 1 x RS232 and 1 x RS485 Serial Ports BPL (Broadband Power Line) Link
TLM344 865MHz X     X X  
TLM444 865MHz   X   X X  
TLM745 865MHz     X X X X
TLM354 868MHz X     X X  
TLM454 868MHz   X   X X  
TLM755 868MHz     X X X X
TLM364 915MHz X     X X  
TLM464 915MHz   X   X X  
TLM764 915MHz     X X X X
TLM374 923MHz X     X X  
TLM474 923MHz   X   X X  
TLM775 923MHz     X X X X

 

16. Ordering Information

TLM344: 865MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports, 1 x RS232 & 1 x RS485, 5-48V (max. 60V) DC Power Input

TLM444: 865MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports, 1 x RS232 & 1 x RS485, 100 - 240V AC (120 – 370V DC), 50Hz to 60Hz AC Power Input

TLM745: 865MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports + 1 x BPL (Broadband Power Line) Link, 1 x RS232 & 1 x RS485, 3 Phase AC Power Input, 110V–240V/50-60Hz

TLM354: 868MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports, 1 x RS232 & 1 x RS485, 5-48V (max. 60V) DC Power Input

TLM454: 868MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports, 1 x RS232 & 1 x RS485, 100 - 240V AC (120 – 370V DC), 50Hz to 60Hz AC Power Input

TLM755: 868MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports + 1 x BPL (Broadband Power Line) Link, 1 x RS232 & 1 x RS485, 3 Phase AC Power Input, 110V–240V/50-60Hz

TLM364: 915MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports, 1 x RS232 & 1 x RS485, 5-48V (max. 60V) DC Power Input

TLM464: 915MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports, 1 x RS232 & 1 x RS485, 100 - 240V AC (120 – 370V DC), 50Hz to 60Hz AC Power Input

TLM765: 915MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports + 1 x BPL (Broadband Power Line) Link, 1 x RS232 & 1 x RS485, 3 Phase AC Power Input, 110V–240V/50-60Hz

TLM374: 923MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports, 1 x RS232 & 1 x RS485, 5-48V (max. 60V) DC Power Input

TLM474: 923MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports, 1 x RS232 & 1 x RS485, 100 - 240V AC (120 – 370V DC), 50Hz to 60Hz AC Power Input

TLM775: 923MHz LoRaWAN EndNode Modem with Modbus TCP/RTU Scheduler, 2x 10/100 T(x) ETH ports + 1 x BPL (Broadband Power Line) Link, 1 x RS232 & 1 x RS485, 3 Phase AC Power Input, 110V–240V/50-60Hz

LKM Series Electricity Meter Protocol to Modbus Protocol Gateways with MQTT (and LoRaWAN)
LKM Series Electricity Meter Protocol to Modbus Protocol Gateways with MQTT (and LoRaWAN)
STG Series WMBus (Wireless MBus) - Modbus Protocol Gateway with MQTT
STG Series WMBus (Wireless MBus) - Modbus Protocol Gateway with MQTT
TLM Series LoRa Modems and LoRaWAN EndNode Modems
TLM Series LoRa Modems and LoRaWAN EndNode Modems
CKL Series Modbus TCP and RTU Gateways and Serial to Ethernet Gateways
CKL Series Modbus TCP and RTU Gateways and Serial to Ethernet Gateways
BSB Series Industrial Unmanaged Ethernet Switch (with Broadband Power Line)
BSB Series Industrial Unmanaged Ethernet Switch (with Broadband Power Line)
REDZ Software Solutions
HUR Series Modbus TCP and RTU Remote I/O Devices with MQTT (and LoRaWAN)
MBC Series IEC62056-21 Protocol Auto Baud Changer
MBC Series IEC62056-21 Protocol Auto Baud Changer
KMK Series Optical Probes for Energy Meters
REDZ Software Solutions