Domnev: Difference between revisions

From Teltonika Networks Wiki
No edit summary
No edit summary
Line 54: Line 54:


# '''Enable''' instance;
# '''Enable''' instance;
# '''Name:''' enter '''desired''' '''instance name''';
# '''Name:''' Enter '''desired''' '''instance name''';
# '''Data source:''' M-bus;
# '''Data source:''' M-bus;
# '''Protocol:''' MQTT;
# '''Protocol:''' MQTT;
# '''JSON format:''' enter what '''data''' you would like '''to send''';
# '''JSON format:''' Enter what '''data''' you would like '''to send''';
# '''URL/Host/Connection string:''' enter '''address of server''';
# '''URL/Host/Connection string:''' Enter '''address of server''';
# '''Port:''' enter '''server port''';
# '''Port:''' Enter '''server port''';
# '''Topic''': enter '''desired''' '''topic name''';
# '''Topic''': Enter '''desired''' '''topic name''';
# '''Update''': Save the changes;
 
Everything else can be left as default.
====M-Bus configuration====
====M-Bus configuration====
----
----
Line 69: Line 72:
# '''Add''';
# '''Add''';


Everything else can be left as default.
[[File:M bus instance creation.png|border|class=tlt-border|904x904px]]
[[File:M bus instance creation.png|border|class=tlt-border|904x904px]]


Line 75: Line 79:
#'''Period''': Enter '''desired period''';
#'''Period''': Enter '''desired period''';


Everything else can be left as default.
[[File:HEX data type.png|border|class=tlt-border|904x904px]]
[[File:HEX data type.png|border|class=tlt-border|904x904px]]


Line 82: Line 87:
# '''Save & apply''' changes.
# '''Save & apply''' changes.


Everything else can be left as default.
====Node-RED configuration====
====Node-RED configuration====
----
----
Line 123: Line 129:
# '''Qos''': 0;
# '''Qos''': 0;
# '''Output''': Auto-Detect;
# '''Output''': Auto-Detect;
# '''Update''': Save the changes;


Everything else can be left as default.
====Results====
====Results====
----
----
Line 136: Line 144:
[[File:Mbus HTTP data to server config.png|border|class=tlt-border|1094x1094px]]
[[File:Mbus HTTP data to server config.png|border|class=tlt-border|1094x1094px]]


Everything else can be left as default.
====M-Bus configuration====
====M-Bus configuration====
----
----
Line 145: Line 155:
# '''Save & apply''' changes.
# '''Save & apply''' changes.


Everything else can be left as default.
====Node-RED configuration====
====Node-RED configuration====
----
----
Line 196: Line 207:
# '''MQTT broker''': On;
# '''MQTT broker''': On;
# '''Local port''': 1883;
# '''Local port''': 1883;
Everything else can be left as default.
====M-Bus configuration====
====M-Bus configuration====
----
----
Line 203: Line 216:
# '''Data type''': Select desired data type (this time we will be using '''BIN''');
# '''Data type''': Select desired data type (this time we will be using '''BIN''');
# '''Save & apply''' changes.
# '''Save & apply''' changes.
Everything else can be left as default.
====Node-RED configuration====
====Node-RED configuration====
----
----

Revision as of 10:31, 31 January 2023

The information in this page is updated in accordance with 00.07.03.1 firmware version .

Introduction

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

Configuration overview and 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 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.

Node-RED installation and setup

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:

node -v

If you do not have Node.js installed, run these commands to install it:

sudo apt install curl
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash –
sudo apt-get install -y nodejs

Once we have Node.js installed, we can install Node-RED. Use this command to install:

sudo npm install -g –unsafe-perm node-red

Use the command node-red to start a local server. Here is how the terminal should look like if the server starts correctly:


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:

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:

  • node-red-contrib-aedes
  • node-red-contrib-mqtt-broker

Configuration

M-Bus Data to Server via MQTT


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


  1. Enable instance;
  2. Name: Enter desired instance name;
  3. Data source: M-bus;
  4. Protocol: MQTT;
  5. JSON format: Enter what data you would like to send;
  6. URL/Host/Connection string: Enter address of server;
  7. Port: Enter server port;
  8. Topic: Enter desired topic name;
  9. Update: Save the changes;

Everything else can be left as default.

M-Bus configuration


  1. Enable M-Bus;
  2. ID: Enter desired instance name;
  3. Add;

Everything else can be left as default.

  1. Enable instance;
  2. Name: Enter your desired name;
  3. Period: Enter desired period;

Everything else can be left as default.

  1. Enable request configuration;
  2. Slave address: Enter desired slave address;
  3. Data type: Select desired data type (this time we will be using HEX);
  4. Save & apply changes.

Everything else can be left as default.

Node-RED configuration


Below you can see the Node-Red block diagram that is used to receive data:

  • aedes broker block - Broker;
  • MQTT in block - mbus;
  • Debug - debug 2;

  1. MQTT Port: 1883;
  2. WS Bind: port;
  3. Done;

Everything else can be left as default.

  1. Output: msg. payload;
  2. To: debug window;
  3. Done;

Everything else can be left as default.


  1. Edit: Configure MQTT-Broker node;
  2. Name: Enter desired MQTT-Broker nodes name;
  3. Server: 127.0.0.1 as we will be using Node-RED as MQTT-Broker;
  4. Port: 1883;
  5. Update: Save the changes;
  6. Server: Select MQTT-Broker that you have just created;
  7. Action: Subscribe to single topic;
  8. Topic: Enter the topic that you have set in Data to Server configuration;
  9. Qos: 0;
  10. Output: Auto-Detect;
  11. Update: Save the changes;

Everything else can be left as default.

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.

M-Bus Data to Server Via HTTP


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



Everything else can be left as default.

M-Bus configuration


  1. Enable request configuration;
  2. Slave address: Enter desired slave address;
  3. Data type: Select desired data type (this time we will be using XML);
  4. Save & apply changes.

Everything else can be left as default.

Node-RED configuration


Below you can see the Node-Red block diagram that is used to receive data:

  • TCP in block - tcp:8080;
  • Debug - debug;

  1. Type: Listen on;
  2. Port: 8080;
  3. Output: Stream of String;
  4. Done;

Everything else can be left as default.

  1. Output: msg. payload;
  2. To: debug window;
  3. Done;


Everything else can be left as default.

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.

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


  1. Enable instance;
  2. Name: Enter desired instance name;
  3. Data source: M-bus;
  4. Protocol: MQTT;
  5. JSON format: Enter what data you would like to send;
  6. URL/Host/Connection string: Localhost IP;
  7. Port: enter server port;
  8. Topic: enter desired topic name;

MQTT broker configuration


  1. MQTT broker: On;
  2. Local port: 1883;

Everything else can be left as default.

M-Bus configuration


  1. Enable request configuration;
  2. Slave address: Enter desired slave address;
  3. Data type: Select desired data type (this time we will be using BIN);
  4. Save & apply changes.

Everything else can be left as default.

Node-RED configuration


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.

See Also

External links