IND360 integration with MQTT
Connect the Mettler Toledo IND360 weighing controller to MQTT and stream live weight data into Node-RED and Ignition SCADA. No OPC license. No custom driver. Just MQTT.
In this video and guide, we explore how IND360 can be seamlessly integrated via MQTT with:
Node-RED: A flow-based, low-code programming tool for wiring together hardware, APIs, and online services, ideal for rapid IIoT prototyping. π https://nodered.org/docs/getting-started/local
Ignition by Inductive Automation is an industrial application platform for building SCADA, HMI, and IIoT solutions with unlimited clients and a web-based deployment model. π https://inductiveautomation.com/downloads/ignition
πΊ Video Tutorial
π What You Will Learn in This Video
In this hands-on demo, you will learn:
How to connect IND360 with Node-RED and Ignition SCADA using MQTT
How to read weight & status data in real time
How to send commands such as:
Zero scale
Tare scale
Preset tare
Clear tare
How to log the feedback in the database
Prerequisites
Mettler Toledo IND360
With network access via Ethernet
β Required
MQTT Broker
Shiftr (for testing) or Ignition Distributor
β Required
Node-RED
Installed locally or on server
Use Case 1
Ignition Gateway
Standard edition v8.3.4+
Use Case 2
Cirrus Link Modules
MQTT Distributor + MQTT Engine
Use Case 2
1. MQTT Broker Setup
Before connecting the IND360, you need a running MQTT broker. For initial testing, we use Shiftr, an MQTT broker with a visual connection map.
For production use, Ignition's built-in broker is used.
2. Enabling MQTT on IND360
In this step, we need to enable the MQTT service on the IND360 device.
Configure MQTT parameters
Fill in all fields as shown in the table below.
Client ID
IND360
Unique identifier for this device
Host
192.168.0.24
IP of your broker machine
Port
1883
Standard MQTT port
Topic
Root topic prefix
Username
Must match broker user
Supervision
Enabled
Enables keep-alive monitoring
3. Testing with Shiftr
Use Shiftr's visual broker map to confirm the IND360 is publishing data before integrating with Node-RED or Ignition.
Open the Shiftr dashboard to visualize the data flowing from the IND360 device
Use Case 1: Node-RED Integration
Use Node-RED as a lightweight MQTT client to read live weight data and send commands to the IND360 via the Shiftr broker.
Reading Weight Data
Subscribe to the measurements topic to receive live weight data as a JSON array.
ind360/devices/C249346600
ind360/devices/C249346600/alarms
ind360/devices/C249346600/scales/_
ind360/devices/C249346600/scales/_/measurements

Sending Commands
Each command follows the same pattern β an Inject node triggers a Function node that builds the payload, which is then published via an MQTT Out node.
tare
Sets net weight to zero using current gross as tare offset
Invoke:
ind360/devices/C249346600/commands/tare/invoke
Result:
ind360/devices/C249346600/commands/tare/result
tare-clear
Removes the tare offset, gross equals net again
Invoke:
ind360/devices/C249346600/commands/tare-clear/invoke
Result:
ind360/devices/C249346600/commands/tare-clear/result
zero
Sets current gross weight as the new zero reference point
Invoke:
ind360/devices/C249346600/commands/zero/invoke
Result:
ind360/devices/C249346600/commands/zero/result
tare-preset
Applies a manually entered known tare value
Invoke:
ind360/devices/C249346600/commands/tare-preset/invoke
Result:
ind360/devices/C249346600/commands/tare-preset/result

Tare Command β Function Node
Clear Command β Function Node
Zero Command β Function Node
Preset Tare Command β Function Node
Dashboard
You can use the dashboard 2.0 to visualize your value as shown below. Feel free to use the NodeRed flow for a ready-to-use dashboard.

Use Case 2: Ignition Integration
Ignition acts as both the MQTT broker (via MQTT Distributor) and the subscriber (via MQTT Engine). No external broker needed.
Install Ignition
Sign up for an account, download, and install Ignition. https://inductiveautomation.com/
Install MQTT Modules
Visit https://inductiveautomation.com/downloads/third-party-modules/8.3.4 β Match the version to your Ignition installation.
Install via Gateway β Platform β Modules
MQTT Distributor
Acts as the MQTT broker inside Ignition
1883
MQTT Engine
Subscribes and converts MQTT data to Ignition tags
β
Configure MQTT Distributor
Gateway β Connections β MQTT Distributor β Settings
Enable the distributor and verify that the port is set to 1883.
Create broker users
Go to Users and create two accounts:
ind360
ind360
IND360 device
ignition
ignition
MQTT Engine internal connection
nodered
nodered
(Optional) For Node-RED to subscribe and publishdata
Create Custom Namespace
Gateway β MQTT Engine β Namespaces β Custom β Create New
Namespace Name
IND360
Unique identifier
MQTT Topic
#
Wildcard captures all sub-topics
Root Folder
IND360_folder
Tag browser folder name
JSON Payload
β Checked
Auto-parses JSON into tags
Create Writable Tags
β Checked
Enables writing back to device
Dashboard & Commands
Once tags appear in the Tag Browser under MQTT Engine, bind them to Vision components for live display.

Useful scripts
Below are the scripts that are used for publishing the data to the MQTT broker via buttons
Tare Button Script
The payload must be byte-encoded using .encode(). Passing a plain string causes a silent failure; no error is shown, but the command is never published. Learn more about Python scripting here: https://docs.chariot.io/display/CLD80/ME%3A+Python+Scripting
Clear Button Script
Zero Button Script
Preset Tare Button Script
Take an input field and rename that to 'presetTare'
Add the script below to the Preset Tare button.
Feedback Logging to Database
Log real device confirmation to SQLite using a Gateway Tag Change script triggered by the result timestamp.
Create Database Table
First, create a table in the default database. Run the following script in the Tools > Database Query browser.
To delete the table, use the following script
Gateway Tag Change Script:
tare_result
Watch tag: [MQTT Engine]IND360_folder/ind360/devices/C249346600/commands/tare/result/_timestamp
clear_result
Watch tag: [MQTT Engine]IND360_folder/ind360/devices/C249346600/commands/clear/result/_timestamp
zero_result
Watch tag: [MQTT Engine]IND360_folder/ind360/devices/C249346600/commands/zero/result/_timestamp
preset_tare
Watch tag: [MQTT Engine]IND360_folder/ind360/devices/C249346600/commands/tare-preset/result/_timestamp
Table SQL Query Binding
To visualize the feedback in the table. Add a table to your screen and bind the data with the following script
Clear button
To clear the values in the table, you can use the following script
Topic Structure Reference
Command Payload Reference
tare
null
No content needed
tare-clear
null
No content needed
zero
null
No content needed
tare-preset
{"value": "2.0", "unit": "Kg"}
Value and unit required
Ignition Project
You can import this project in your Ignition designer to use it as a prototype:
Key notes:
β₯οΈ Work With Me
I regularly test industrial automation and IIoT devices. If youβd like me to review your product or showcase it in my courses and YouTube channel:
π§ Email: rajvir@codeandcompile.com or drop me a message on LinkedIn
Last updated