Difference between revisions of "Domnev"

From Teltonika Networks Wiki
 
(86 intermediate revisions by the same user not shown)
Line 1: Line 1:
<p style="color:red">The information in this page is updated in accordance with [https://wiki.teltonika-networks.com/view/FW_%26_SDK_Downloads'''00.07.03.1'''] firmware version .</p>
+
<p style="color:red">The information on this page is updated in accordance with the [https://wiki.teltonika-networks.com/view/FW_%26_SDK_Downloads'''00.07.08'''] firmware version .</p>
==Introduction==
+
__TOC__
 +
==Summary==
 
This article contains instructions on how to send M-Bus data to the server using various protocols.
 
This article contains instructions on how to send M-Bus data to the server using various protocols.
  
==Configuration overview and prerequisites==
+
==Configuration overview & prerequisites==
 
 
 
Before we begin, let's take a look at the configuration that we are attempting to achieve and the prerequisites that make it possible.
 
Before we begin, let's take a look at the configuration that we are attempting to achieve and the prerequisites that make it possible.
  
Line 13: Line 13:
 
* An end device (PC, Laptop, Tablet, Smartphone) for configuration;
 
* An end device (PC, Laptop, Tablet, Smartphone) for configuration;
  
If you're having trouble finding any page or some of the parameters described here on your device's WebUI, you should turn on '''"Advanced WebUI"''' mode. You can do that by '''clicking''' the '''"Basic"''' button '''under''' '''"Mode,"''' which is located at the top-right corner of the WebUI.
 
[[File:TRB143 advanced.gif|border|center|class=tlt-border|1004x1004px]]
 
  
==Node-RED installation and setup==
+
{{Template:Networking_rutos_manual_basic_advanced_webui_disclaimer
 +
| series = RUTX
 +
}}
  
We are going to set up Node-RED in a Linux virtual machine. For Node-RED to work, you would need to install Node.js version 14.00 or higher. If you already have Node.js installed, verify the Node.js version using this command:
+
 
<pre>
+
==Adding M-Bus devices==
node -v
+
To add a new device to the configuration press [[File:Add Button.png|60x90px]] button which is shown below.
</pre>
+
 
If you do not have Node.js installed, run these commands to install it:
+
[[File:Mbus adding new device.png||border|class=tlt-border]]
<pre>
+
 
sudo apt install curl
+
===Device configuration===
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash –
 
sudo apt-get install -y nodejs
 
</pre>
 
Once we have Node.js installed, we can install Node-RED. Use this command to install:
 
<pre>
 
sudo npm install -g –unsafe-perm node-red
 
</pre>
 
Use the command '''''node-red''''' to start a local server. Here is how the terminal should look like if the server starts correctly:
 
[[File:Server is running node red terminal.png|border|600px|class=tlt-border]]
 
 
----
 
----
Once you have the local server running, use the local IP and port number in your internet browser. In this case, we are using 127.0.0.1:1880:
+
You will be granted to a new window. Configure your M-Bus device accordingly:
[[File:Use server address in web browser.png|border|500px|class=tlt-border]]
+
 
 +
# '''Name''': Enter the desired name of the M-Bus device
 +
# '''Address type''': select which M-Bus address will be used
 +
# '''Primary/Secondary address''': specify M-Bus address
 +
 
 +
[[File:Mbus adding new device configuration v3.png|border|class=tlt-border]]
  
For MQTT usage, we are going to need MQTT-specific nodes. Use the side menu to navigate to the Manage Palette section and install these nodes:
+
Test if the M-Bus device is reachable by a specified primary/secondary address. To do so click on [[File:Ping_device_option_mbus.png|110x110px]]. You might get on of two outputs:
*node-red-contrib-aedes
 
*node-red-contrib-mqtt-broker
 
  
[[File:Manage palette and download these mqtt nodes.png|border|500px|class=tlt-border]]
+
* If you have specified correct primary/secondary address, you will receive:
 +
[[File:Mbus device pingable v2.png|border|class=tlt-border|300px]]
  
==Configuration==
+
* If you have specified incorrect primary/secondary address, you will receive (if you do not know what address should be used, refer to the Scanning for available M-Bus devices (PRIDET URL) secion:
 +
[[File:Mbus device not pingable v2.png|border|class=tlt-border|300px]]
  
===M-Bus Data to Server via MQTT===
+
Once finished, save the configuration by clicking [[File:Savenapply button.png|Savenapply button.png]].
 +
 
 +
===Scanning for available M-Bus devices===
 
----
 
----
This section contains information on how to send M-Bus data to the server on Node-RED using the MQTT protocol.
+
 
====Data to Server configuration====
+
If you are not sure what address your M-Bus devices have, you can try scanning for the available M-Bus devices. To do so click on [[File:Scan button.png]] button.
 +
 
 +
====Scan settings====
 
----
 
----
The '''[[TRB143_Data_to_Server|Data to Server]]''' feature provides you with the possibility to set up data senders that collect data from various sources and periodically send it to remote servers. This section will walk you through configuring the Data to Server to send M-Bus data to the Node-RED server. To configure Data to Server, '''access the router's WebUI''' and navigate to '''Services''', then '''Data to Server''':
+
You will be granted to a new window. Configure scan settings accordingly:
  
# '''Enable''' instance;
+
# '''Scan type''': select which M-Bus address will be scanned
# '''Name:''' Enter '''desired''' '''instance name''';
+
# '''Scan range''': From what M-Bus address scanning will start and M-Bus address until scanning will be performed.
# '''Data source:''' M-bus;
+
[[File:Mbus scan.png|border|class=tlt-border]]
# '''Protocol:''' MQTT;
 
# '''JSON format:''' Enter what '''data''' you would like '''to send''';
 
# '''URL/Host/Connection string:''' Enter '''address of server''';
 
# '''Port:''' Enter '''server port''';
 
# '''Topic''': Enter '''desired''' '''topic name'''
 
  
[[File:Mbus data to server MQTT renewed.png|border|class=tlt-border|1094x1094px]]
+
To start the scan click on [[File:Start scan button.png]] button.
  
====M-Bus configuration====
+
====Found devices====
 
----
 
----
The '''[[TRB143_M-Bus|M-Bus Settings]]''' section is used to configure the general service functionality. To set up a new M-Bus instance, go to '''Services → M-Bus:'''
+
Once the scan is finished you should see the list of M-Bus devices that TRB143 were able to find:
 +
 
 +
[[File:Mbus scanned devices add.png|border|class=tlt-border]]
  
# '''Enable''' M-Bus;
+
You can either [[File:Pencil2.png]] '''(1)''' M-Bus devices primary address or [[File:Add Button.png|60x90px]] '''(2)''' to the M-Bus devices list.
# '''ID''': Enter desired '''instance name''';
 
# '''Add''';
 
  
[[File:M bus configuration correct.png|border|class=tlt-border|904x904px]]
+
==Gathering M-Bus data==
  
After this, you should be redirected to the configuration page for the M-Bus instance:
+
If the device successfully added to the list, under the General settings you should see that the Status changes to <span style="color:green">Active</span>.
  
[[File:M bus instance creation.png|border|class=tlt-border|904x904px]]
+
[[File:Mbus status active v2.png|border|class=tlt-border]]
  
# '''Enable''' instance;
+
===Data collecting groups===
# '''Name''': Enter your '''desired name''';
+
----
#'''Period''': Enter '''desired period''';
+
To reach data collecting groups configuration press [[File:Pencil2.png]] button. [[File:Add Button.png|60x90px]] button lets you to create a new instance.
At the bottom of the M-Bus instance, you should see the Request Configuration section. It is used to configure requests from M-Bus devices.  
 
  
[[File:HEX data type.png|border|class=tlt-border|904x904px]]
+
[[File:Mbus data collect overview.png|border|class=tlt-border]]
  
# '''Enable''' request configuration;
+
====Data collecting group instance====
# '''Slave address:''' Enter '''desired slave address''';
 
# '''Data type:''' Select desired data type (this time we will be using '''HEX''');
 
# '''Save & apply''' changes.
 
====Node-RED configuration====
 
 
----
 
----
Below you can see the Node-Red block diagram that is used to receive data and its configuration:
+
 
* '''aedes broker block''' - Broker;
+
Each data collection group contains the following information. Configure device accordingly:
* '''MQTT in block''' - mbus;
+
 
* '''Debug''' - debug 2;
+
# '''Enabled''': on
[[File:Node-rs-topology.png|border|center|class=tlt-border|654x654px]]
+
# '''Name''': desired name of the instance
 +
# '''Period''': desired time duration between data retrievals
 +
# '''Data type''': desired data type to process the received data. Depending on your needs you can select between 5 different data types: '''JSON, XML, ASCII, Hexadecimal''' and '''Binary'''.
 +
 
 +
[[File:Mbus data collect group v2.png|border|class=tlt-border]]
 +
 
 +
You can check if your configuration works accordingly by pressing the [[File:Mbus test button.png]] button. You should see the data in a pop-up field:
 +
 
 +
[[File:Mbus TEST output.png|border|class=tlt-border]]
 +
 
 +
====Group values====
 
----
 
----
 +
To reach group values configuration press [[File:Pencil2.png]] button:
 +
 +
[[File:Mbus edit group values.png|border|class=tlt-border]]
 +
 +
There you can adjust additional settings:
 +
 +
# '''Enable''': Enable/disable data group value.
 +
# '''FCB toggle''': FCB (Frame Count-Bit), one-bit counter for reliable server-client communication.
 +
# '''Manufacturer information''': Select to include manufacturer information in the payload.
 +
# '''Selected parameters''': Select to include the all parameters saved from device, or a custom subset of them. If the custom is selected you can specify '''frame''', '''record''' numbers and also a '''paramater'''
 +
 +
[[File:Mbus device groupsa.png|border|class=tlt-border]]
  
[[File:Node-red-broker-new.png|border|left|class=tlt-border|474x474px|left]]
 
[[File:Node-red-debug-new.png|border|right|class=tlt-border|474x474px|right]]
 
<table class="nd-othertables_2" style="display: inline-table;">
 
    <tr>
 
        <td width=755; style="border-bottom: 1px solid white;">
 
# '''MQTT Port''': 1883;
 
# '''WS Bind''': port;
 
# '''Done''';
 
</td>
 
<td width=755; style="border-bottom: 1px solid white;">
 
# '''Output''': msg. payload;
 
# '''To''': debug window;
 
# '''Done''';
 
</td>
 
    </tr>
 
</table>
 
  
 +
==Sending data to the server==
 +
This section contains information on how to send M-Bus data to the server using MQTT and HTTP protocols.
 +
 +
===Data to Server configuration===
 
----
 
----
[[File:Node-red-subscriber-configuration.png|border|class=tlt-border|1094x1094px]]
+
To set up Data to Server, navigate to Services → Data to Server. Enter desired name of the instnace and hit [[File:Add Button.png|60x90px]] button which is shown below.
  
# '''Edit:''' Configure MQTT-Broker node;
+
[[File:Mbus data to server create.png|border|class=tlt-border]]
# '''Name''': Enter '''desired MQTT-Broker nodes name;'''
+
 
# '''Server''': '''127.0.0.1''' as we will be using '''Node-RED as MQTT-Broker''';
+
===Data configuration===
# '''Port''': 1883;
 
# '''Update''': Save the changes;
 
# '''Server''': Select '''MQTT-Broker''' that you have '''just created''';
 
# '''Action''': Subscribe to single topic;
 
# '''Topic''': Enter the '''topic''' that you have '''set in Data to Server configuration''';
 
# '''Qos''': 0;
 
# '''Output''': Auto-Detect;
 
# '''Update''': Save the changes;
 
====Results====
 
 
----
 
----
If you have taken all of the steps described above, the configuration is complete. Below you can see M-Bus data output in HEX format.
 
[[File:MQTT broker HEX data.png|border|class=tlt-border|404x404px]]
 
  
===M-Bus Data to Server Via HTTP===
+
[[File:Mbus data to server configuration.png|border|class=tlt-border]]
 +
 
 +
 
 +
Once finished configuring Data configuration tab click on [[File:Mbus data to server collection edit.png|160x160px]] button.
 +
 
 +
===Collection configuration===
 
----
 
----
This section contains information on how to send M-Bus data to the server on Node-RED using the HTTP protocol.
+
 
====Data to Server configuration====
+
[[File:Mbus data to server collection configuration.png|border|class=tlt-border]]
 +
 
 +
Once finished configuring Collection configuration tab click on [[File:Mbus data to server server button.png|160x160px]] button.
 +
 
 +
===Server configuration===
 
----
 
----
To set up Data to Server, navigate to '''Services''' '''→ Data to Server:'''
 
  
[[File:Mbus HTTP data to server config.png|border|class=tlt-border|1094x1094px]]
+
====HTTP configuration====
# '''Enable''' instance;
 
# '''Name:''' Enter '''desired''' '''instance name''';
 
# '''Data source:''' M-bus;
 
# '''Protocol:''' HTTP;
 
# '''JSON format:''' Enter what '''data''' you would like '''to send''';
 
# '''URL/Host/Connection string:''' Enter '''address of server''' and '''port''';
 
====M-Bus configuration====
 
 
----
 
----
Go to Services '''→ M-Bus →''' the '''instance''' you have created '''→ edit.''' After that, scroll down to '''Request configuration → edit.''' There you will be able to change the data type.
 
  
[[File:Mbus XML data type.png|border|class=tlt-border|954x954px]]
+
[[File:Mbus data to server HTTP configuration.png|border|class=tlt-border]]
  
# '''Enable''' request configuration;
+
====MQTT configuration====
# '''Slave address:''' Enter '''desired slave address;'''
 
# '''Data type:''' Select desired data type (this time we will be using '''XML''');
 
# '''Save & apply''' changes.
 
====Node-RED configuration====
 
----
 
Below you can see the Node-Red block diagram that is used to receive data and its configuration:
 
* '''TCP in block''' - tcp:8080;
 
* '''Debug''' - debug;
 
[[File:HTTP node-red.png|border|class=tlt-border|center|514x514px]]
 
----
 
[[File:HTTP node-RED block config.png|border|left|class=tlt-border|474x474px|left]]
 
[[File:Node-red-debug-new.png|border|right|class=tlt-border|534x534px|right]]
 
<table class="nd-othertables_2" style="display: inline-table;">
 
    <tr>
 
        <td width=755; style="border-bottom: 1px solid white;">
 
# '''Type''': Listen on;
 
# '''Port''': 8080;
 
# '''Output''': Stream of String;
 
# '''Done''';
 
</td>
 
<td width=755; style="border-bottom: 1px solid white;">
 
# '''Output''': msg. payload;
 
# '''To''': debug window;
 
# '''Done''';
 
</td>
 
    </tr>
 
</table>
 
====Results====
 
 
----
 
----
If you have taken all of the steps described above, the configuration is complete. Below you can see M-Bus data output in XML format.
 
[[File:XML data Mbus.png|border|class=tlt-border|304x304px]]
 
===MQTT broker===
 
This section contains information on how to send M-Bus data to the server on Node-RED using a Teltonika router as a MQTT broker.
 
----
 
====Data to Server configuration====
 
----
 
To set up Data to Server, navigate to '''Services''' '''→ Data to Server:'''
 
  
[[File:MQTT broker data to server config.png|border|class=tlt-border|1094x1094px]]
+
[[File:Mbus data to server MQTT configuration.png|border|class=tlt-border]]
# '''Enable''' instance;
 
# '''Name:''' Enter '''desired instance name''';
 
# '''Data source:''' M-bus;
 
# '''Protocol:''' MQTT;
 
# '''JSON format:''' Enter what '''data''' you would like '''to send''';
 
# '''URL/Host/Connection string:''' Localhost IP;
 
# '''Port:''' enter '''server port''';
 
# '''Topic''': enter '''desired topic name''';
 
====MQTT broker configuration====
 
----
 
The '''MQTT Broker''' is an entity that listens for connections on the specified port and relays received messages to MQTT client. To set up MQTT Broker go to S'''ervices → MQTT → Broker:'''
 
  
[[File:Mbus MQTT Broker.png|border|class=tlt-border|954x954px]]
+
Once finished configuring Server configuration tab click on [[File:Savenapply button.png|Savenapply button.png]] button.
# '''MQTT broker''': On;
 
# '''Local port''': 1883;
 
====M-Bus configuration====
 
----
 
Go to Services '''→ M-Bus →''' the '''instance''' you have created '''→ edit.''' After that, scroll down to '''Request configuration → edit.''' There, you will be able to change the data type.
 
  
[[File:Mbus BIN data type.png|border|class=tlt-border|854x854px]]
 
# '''Enable''' request configuration;
 
# '''Slave address''': Enter '''desired slave address''';
 
# '''Data type''': Select desired data type (this time we will be using '''BIN''');
 
# '''Save & apply''' changes.
 
====Node-RED configuration====
 
----
 
[[File:MQTT broker node-RED.png|border|center|class=tlt-border|514x514px]]
 
----
 
[[File:Node-red-debug-new.png|border|left|class=tlt-border|474x474px|right]]
 
  
----
 
[[File:Node-red-mqtt-in-TRBroker.png|border|class=tlt-border|1100x1100px]]
 
# '''Edit:''' Configure MQTT-Broker node;
 
# '''Name''': Enter '''desired MQTT-Broker nodes name;'''
 
# '''Server''': '''127.0.0.1''' as we will be using '''Node-RED as MQTT-Broker''';
 
# '''Port''': 1883;
 
# '''Update''': Save the changes;
 
# '''Server''': Select '''MQTT-Broker''' that you have '''just created''';
 
# '''Action''': Subscribe to single topic;
 
# '''Topic''': Enter the '''topic''' that you have '''set in Data to Server configuration''';
 
# '''Qos''': 0;
 
# '''Output''': Auto-Detect;
 
# '''Update''': Save the changes;
 
====Results====
 
----
 
If you have taken all of the steps described above, the configuration is complete. Below you can see M-Bus data output in BIN format.
 
[[File:MQTT BIN data.png|border|class=tlt-border|304x304px]]
 
 
==See Also==
 
==See Also==
* [[TRB143_M-Bus|M-Bus]]
+
 
* [[TRB143_Data_to_Server|Data to Server]]
 
* [[TRB143_MQTT#MQTT_Broker|MQTT Broker]]
 
 
==External links==
 
==External links==
[https://nodered.org/docs/getting-started/ Node-RED]
+
[https://flespi.io/#/ Flespi.io]

Latest revision as of 09:32, 22 August 2024

The information on this page is updated in accordance with the 00.07.08 firmware version .

Summary

This article contains instructions on how to send M-Bus data to the server using various protocols.

Configuration overview & prerequisites

Before we begin, let's take a look at the configuration that we are attempting to achieve and the prerequisites that make it possible.

Prerequisites:

  • TRB143;
  • M-Bus device;
  • Server;
  • An end device (PC, Laptop, Tablet, Smartphone) for configuration;


If you're having trouble finding this page or some of the parameters described here on your device's WebUI, you should turn on "Advanced WebUI" mode. You can do that by clicking the "Advanced" button, located at the top of the WebUI.

Networking rutos manual webui basic advanced mode 75.gif


Adding M-Bus devices

To add a new device to the configuration press Add Button.png button which is shown below.

Mbus adding new device.png

Device configuration


You will be granted to a new window. Configure your M-Bus device accordingly:

  1. Name: Enter the desired name of the M-Bus device
  2. Address type: select which M-Bus address will be used
  3. Primary/Secondary address: specify M-Bus address

Mbus adding new device configuration v3.png

Test if the M-Bus device is reachable by a specified primary/secondary address. To do so click on Ping device option mbus.png. You might get on of two outputs:

  • If you have specified correct primary/secondary address, you will receive:

Mbus device pingable v2.png

  • If you have specified incorrect primary/secondary address, you will receive (if you do not know what address should be used, refer to the Scanning for available M-Bus devices (PRIDET URL) secion:

Mbus device not pingable v2.png

Once finished, save the configuration by clicking Savenapply button.png.

Scanning for available M-Bus devices


If you are not sure what address your M-Bus devices have, you can try scanning for the available M-Bus devices. To do so click on Scan button.png button.

Scan settings


You will be granted to a new window. Configure scan settings accordingly:

  1. Scan type: select which M-Bus address will be scanned
  2. Scan range: From what M-Bus address scanning will start and M-Bus address until scanning will be performed.

Mbus scan.png

To start the scan click on Start scan button.png button.

Found devices


Once the scan is finished you should see the list of M-Bus devices that TRB143 were able to find:

Mbus scanned devices add.png

You can either Pencil2.png (1) M-Bus devices primary address or Add Button.png (2) to the M-Bus devices list.

Gathering M-Bus data

If the device successfully added to the list, under the General settings you should see that the Status changes to Active.

Mbus status active v2.png

Data collecting groups


To reach data collecting groups configuration press Pencil2.png button. Add Button.png button lets you to create a new instance.

Mbus data collect overview.png

Data collecting group instance


Each data collection group contains the following information. Configure device accordingly:

  1. Enabled: on
  2. Name: desired name of the instance
  3. Period: desired time duration between data retrievals
  4. Data type: desired data type to process the received data. Depending on your needs you can select between 5 different data types: JSON, XML, ASCII, Hexadecimal and Binary.

Mbus data collect group v2.png

You can check if your configuration works accordingly by pressing the Mbus test button.png button. You should see the data in a pop-up field:

Mbus TEST output.png

Group values


To reach group values configuration press Pencil2.png button:

Mbus edit group values.png

There you can adjust additional settings:

  1. Enable: Enable/disable data group value.
  2. FCB toggle: FCB (Frame Count-Bit), one-bit counter for reliable server-client communication.
  3. Manufacturer information: Select to include manufacturer information in the payload.
  4. Selected parameters: Select to include the all parameters saved from device, or a custom subset of them. If the custom is selected you can specify frame, record numbers and also a paramater

Mbus device groupsa.png


Sending data to the server

This section contains information on how to send M-Bus data to the server using MQTT and HTTP protocols.

Data to Server configuration


To set up Data to Server, navigate to Services → Data to Server. Enter desired name of the instnace and hit Add Button.png button which is shown below.

Mbus data to server create.png

Data configuration


Mbus data to server configuration.png


Once finished configuring Data configuration tab click on Mbus data to server collection edit.png button.

Collection configuration


Mbus data to server collection configuration.png

Once finished configuring Collection configuration tab click on Mbus data to server server button.png button.

Server configuration


HTTP configuration


Mbus data to server HTTP configuration.png

MQTT configuration


Mbus data to server MQTT configuration.png

Once finished configuring Server configuration tab click on Savenapply button.png button.


See Also

External links

Flespi.io