A tag in Protolinker represents a specific piece of data exchanged through a protocol.
In other words, while a protocol defines how devices talk, a tag defines what information is being talked about.
For example, a temperature sensor connected via Modbus might have a tag called temperature, which holds the current reading in °C.
Why Tags Are Important #
Tags provide a consistent way to reference data across different protocols. Instead of remembering device addresses, register numbers, or message IDs, you work with clear, human-readable names.
This makes complex integrations much easier to manage, since you can:
- Identify values by meaningful names (e.g., motor_speed instead of register 40001).
- Link protocols together by mapping tags from one protocol to another.
- Monitor and debug data flow in a way that is understandable without deep protocol knowledge.
How Tags Work in Protolinker #
-
Tag Creation
- Tags are created inside Protolinker by defining a name (e.g., temperature), data type (e.g., float), and source (e.g., a Modbus register).
-
Tag Linking
- Once defined, tags can be linked between different protocols.
- For example: A Modbus tag temperature can be linked to an MQTT tag sensor/temperature, making the data from the Modbus sensor available to the MQTT topic and vice versa.
-
Tag Transformation (Optional)
- Protolinker supports applying simple transformations to tags using scripts.
- This is useful when you need to scale, convert, or filter the data before forwarding it.
-
Tag Usage
- Applications or external systems connected to Protolinker will only “see” or “publish” the tags, not the raw protocol addresses.
Example #
- Device side: Modbus sensor reports register 40001 = 253 (raw value).
- Protolinker tag: temperature = 25.3 °C (scaled).
- Output side: Published via MQTT as sensor/temperature = 25.3.
This way, tags act as the bridge between raw protocol data and meaningful, usable information.
