Production facilities with Siemens S7 controllers generate valuable data. But how do you make this data accessible for modern monitoring systems, dashboards, and analytics? The S7 Connector bridges this gap: A middleware solution that connects S7 protocols with MQTT, SparkplugB, and the Unified Namespace (UNS).
Siemens S7-300/400/1200/1500 controllers are widely used in industry. However, integrating these systems into modern cloud or edge computing platforms requires powerful middleware:
The S7 Connector solves these challenges through a standards-based architecture.
The S7 Connector is based on proven Industrial IoT standards:
MQTT (Message Queuing Telemetry Transport) is a lightweight, reliable publish-subscribe protocol. It enables:
SparkplugB is the MQTT specification for Industrial IoT and offers:
The Unified Namespace is a central information architecture that:
Example topic structure:
uns/site/area/plant/parameter
uns/Bremen/Hall1/PLC1/Temperature
uns/Bremen/Hall1/PLC1/Pressure
Report-by-Exception reduces network traffic by typically 80-95%. Data is only transmitted when values change. Additionally, a push feature for time-controlled transmission is available – ideal for time-series databases.
Integrated configuration generators automatically create a complete config.yaml from TIA Portal exports:
# CLI Generator
s7gen -in db_export.st -out config.yaml -base "uns/Site/Area/PLC1"
# Or via Web UI
s7gen-web
This significantly simplifies setup. Complex data structures and UDTs are automatically detected.
The S7 Connector enables not only data reading but also write operations to the PLC:
UNS-JSON Mode:
mosquitto_pub -t "uns/Site/PLC1/cmd/SpeedSetpoint" -m '{"value": 75.5}'
SparkplugB DCMD:
spBv1.0/Site/Area/DCMD/PLC1/SpeedSetpoint
This functionality is essential for SCADA systems and remote control of plants.
The S7 Connector supports various data formats:
This enables flexibility depending on use case and infrastructure.
The S7 Connector is suitable for diverse Industrial IoT scenarios:
SCADA Systems
Production Monitoring
Predictive Maintenance
MES Integration
Energy Monitoring
Environmental and Process Monitoring
Scalable One Unified Namespace, unlimited plants – no separate integration per PLC required.
Open MQTT + SparkplugB = vendor-independent, no vendor lock-ins, standards-based.
Real-time Sub-second latency between PLC data point and dashboard.
Maintainable Standard protocols, open-source stack, no black-box systems.
Future-proof Expandable to include additional assets and data sources without architectural changes.
Efficient Report-by-Exception significantly reduces network load and infrastructure costs.
The S7 Connector is fully Docker-compatible:
# Start Docker Compose
docker-compose up -d
# Multi-arch support for ARM and x86
docker buildx build --platform linux/amd64,linux/arm64 \
-t yourrepo/s7-connector:latest --push .
This enables flexible deployments – from edge devices (industrial PCs, Raspberry Pi) to cloud infrastructure.
The S7 Connector bridges the gap between proven Siemens automation technology and modern IoT platforms. Through support for MQTT, SparkplugB, and Unified Namespace, it seamlessly integrates into modern monitoring architectures.
Intelligent data transmission (Report-by-Exception) and easy configuration make it a robust, production-ready solution for industrial IoT scenarios.
Are you planning to integrate Siemens S7 controllers into your IoT infrastructure?
The S7 Connector helps you connect your plants quickly and reliably – standards-based and without vendor lock-in.