Version v1.x.x (since 2019-10-16)
This is the latest version. For older revisions please refer to the version overview.
Note | ||
---|---|---|
| ||
If you are using 0.3.x firmware, please see the 0.3.x Manual. |
Key Features
LoRaWAN 1.0.x and 1.1 network servers supported
LoRaWAN Class A or Class C operation
LoRaWAN 1.1 time synchronisation
Configuration via USB or remotely via LoRaWAN downlink
ModBus ASCII and RTU modes supported
Readout of ModBus Coils, Discrete Inputs, Input Registers and Holding Registers
ModBus dialog mode via USB for easy configuration testing
Coexistence with 2nd Modbus Master possible (bus sharing, Listen before talk)
Target Measurement / Purpose
...
The Lobaro Modbus LoRaWAN Bridge works with all devices that act as a Modbus Client using RTU or ASCII (Modbus TCP is not supported). Some devices that have been used successfully with the Bridge:
Device | Type | Manufacturer | More information |
---|---|---|---|
Octave Ultrasonic Meter | Water meter | Arad Group | External Link |
ECL Controller | Heat/Hot Water Regulation | Danfoss | External Link |
UMD 97 | Smart Grid Power Meter | PQ Plus | External Link (German) |
DRS458DE | Power Meter | B+G E-Tech GmbH | External Link |
Product variants
The LoRaWAN Modbus bridge can be ordered in two standard variants. For even more customizations options see Hardware Variants overview.
...
For a detailed introduction into how this values need to be configured, please refer to the chapter LoRaWAN configuration in our LoRaWAN background article.
Name | Description | Type | Values |
---|---|---|---|
OTAA | Activation: OTAA or ABP | bool | true = use OTAA, false = use ABP |
DevEUI | DevEUI used to identify the Device | byte[8] | e.g. 0123456789abcdef |
JoinEUI | Used for OTAA (called AppEUI in v1.0) | byte[8] | e.g. 0123456789abcdef |
AppKey | Key used for OTAA (v1.0 and v1.1) | byte[16] | |
NwkKey | Key used for OTAA (v1.1 only) | byte[16] | |
SF | Initial / maximum Spreading Factor | int | 7 - 12 |
ADR | Use Adaptive Data Rate | bool | true = use ADR, false = don't |
OpMode | Operation Mode | string | A = Class A, C = Class C |
TimeSync | Days after which to sync time | int | days, 0 =don't sync time |
RndDelay | Random delay before sending | int | max seconds |
RemoteConf | Support Remote Configuration | bool | true =allow, false =deactivate |
LostReboot | Days without downlink before reboot | int | days, 0 =don't reboot |
Modbus/UART
There are several values that define the configuration via Modbus. These values depend on the Slave devices that you want to read out. Please refer to your Modbus Devices's manual to find out the correct configuration.
name | description | values |
---|---|---|
MbProt | Modbus-Protocol to use | RTU . ASCII |
MbBaud | UART Baud rate | 9600 , 19200 , 38400 , ... |
MbDataLen | UART data length | 7 , 8 , 9 |
MbStopBits | UART stop bits | 0.5 , 1 , 1.5 , 2 (written exactly like this) |
MbPar | UART parity | NONE , EVEN , ODD |
MbCron | Cron expression† defining when to read. | 0 0/15 * * * * for every 15 minutes |
MbCmd | List of Modbus Commands (see below). | 010300010003 |
PlFmt | Uplink Format | 1 , 2 , or 3 , see Payload Formats |
EnDL | Enable Downlinks | true = enable sending Modbus Commands via Downlink |
DialogMode | Enable Dialog Mode | true = set the Bridge to Dialog Mode |
LbtDuration | Listen-before-talk Duration | 0 = disables, 1 -3600 = seconds of lbt duration |
LbtSilence | Listen-before-talk Silence | 0 = disabled, 1 -3600 seconds of silence needed |
† See also our Introduction to Cron expressions.
...
The Modbus Bridge sends two different kinds of messages over three different LoRaWAN ports:
Direction | Port | Message |
---|---|---|
Uplink | 1 | Status messages. |
Uplink | 3 | Modbus Responses triggered by configuration. |
Uplink | 4 | Modbus Responses triggered by Downlinks. |
Uplink | 5 | Continuation of Responses that do not fit in a single Uplink. |
Downlink | 4 | Modbus Commands to be forwarded by the Bridge. |
In addition to the description we also supply a reference decoder usable in TTN at the end of this document.
...
Status messages are transmitted on port 1 and have a fixed length of 14 bytes.
name | pos | len | type | description | example |
---|---|---|---|---|---|
version | 0 | 3 | uint8[3] | Version of firmware running on the device | [0, 4, 1] ≡ v0.4.1 |
flag | 3 | 1 | uint8 | Status flag, for internal use | 0 |
temperature | 4 | 2 | int16 | Device's internal temperature in tenth °C | 246 ≡ 24.6°C |
voltage | 6 | 2 | uint16 | Voltage supplied by power source in mV | 3547 ≡ 3.547V |
timestamp | 8 | 5 | int40 | Internal date/time at creation of the status packet as UNIX timestamp | 1533055905 |
opMode | 13 | 1 | char | LoRaWAN Operation mode the device runs | A or C |
Data messages
Data messages contain responses to Modbus Commands received by the Bridge. The Bridge supports multiple Payload formats for different use cases. The format is selected by the configuration parameter PlFmt
:
...
Technical characteristics
Product | |
Type name | Modbus485-LoRaWAN |
Description | Modbus over LoRaWAN Bridge |
RF tranceiver | |
Type | Semtech SX1272 |
Frequency | 863 MHz to 870 MHz |
Max. TX Power | max. +14 dBm |
Typical RF Range | ≤2km |
Ideal RF Range | ≤10km (free line of sight) |
LoRa communication | |
Protocol | Class A / Class C LoRaWAN 1.1 EU868 |
Activation method | Over-the-air-activation (OTAA) Activation by personalization (ABP) |
Encryption | AES128 |
Modbus communication | |
Bus | RS-485 twisted pair wires (with optional GND) |
Protocol | RTU/ASCII |
Bus IO Protection | >±15 kV HBM Protection |
Bus IO Protection | >±12 kV IEC 61000-4-2 Contact Discharge |
Bus IO Protection | >±4 kV IEC 61000-4-4 Fast Transient Burst |
Max. RS485 Cable Length | 3m |
Environmental Requirements | |
Operating temperature | -20°C – 55°C |
Max installation height | 2m |
Standards | |
CE Declaration of Conformity
...