MindConnect IoT2050 Compatibility with 6ES7647-0KA02-0AA2 Shield

David Krause15 min read
I/O ModulesSiemensTechnical Reference
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Overview: The Compatibility Question

The SIMATIC MindConnect IoT2050 is Siemens' industrial-grade edge gateway designed for secure cloud connectivity (MindSphere / Industrial Edge) and on-premise data acquisition. Integrators often attempt to expand its digital input (DI) count using the SIMATIC IoT2000 Arduino-form-factor shield family. The most common question raised on Siemens SiePortal and integrator channels is whether the 6ES7647-0KA02-0AA2 — a 10x DI sink/source Arduino Shield originally engineered for the IOT2020 and IOT2040 platforms — can be deployed on a MindConnect IoT2050.

The manufacturer-confirmed answer is no: only the 6ES7647-0KA01-0AA2 Input/Output Module is officially supported by the MindConnect IoT2040 and MindConnect IoT2050 firmware images. The sink/source input module can physically mate with the IoT2050 because both the IOT2040 and IOT2050 expose the standard Arduino Uno R3 pin header, but it is not bound into the MindConnect Asset Manager configuration layer, has no template entry, and therefore sits outside the validated solution envelope.

Engineering reality check: "Not officially supported" means there is no firmware integration, no Asset Manager I/O mapping template, no validated boot image, and no warranty or support coverage. A field-validated workaround exists in the IOT2050 Example Image, but transferring the same approach to a MindConnect-branded IoT2050 shifts all risk to the integrator.

SIMATIC IoT2000 Shield Portfolio

Siemens markets two Arduino Uno R3 form-factor shields for the IoT2000 family. The shields are mechanically and electrically similar — both stack onto the host's 32-pin Arduino header — but they have distinct catalog numbers, distinct I²C device maps, distinct firmware bindings, and a non-overlapping list of officially supported hosts.

Catalog Number Designation Channel Count Signal Type Officially Supported Hosts
6ES7647-0KA01-0AA2 SIMATIC IoT2000 Input/Output Module Mixed: 4× DI, 2× DO, 2× AI DI 24 V DC sink/source, DO MOSFET, 0–10 V AI MindConnect IOT2040, MindConnect IOT2050
6ES7647-0KA02-0AA2 SIMATIC IoT2000 Input Module Sink/Source 10× DI Sink or source selectable, 24 V DC, optoisolated SIMATIC IOT2020, SIMATIC IOT2040 (Example Image only)

The catalog-number suffix is the differentiator: -0KA01- denotes the I/O module that was integrated into the MindConnect stack and exposes its channels through the Asset Manager I/O configuration; -0KA02- denotes the dedicated 10x DI sink/source module that was engineered around the IOT2020/IOT2040 Example Image and was never back-ported into the MindConnect firmware layer.

Official Compatibility Matrix

The following matrix summarizes the manufacturer-stated compatibility as of the current MindConnect firmware releases. Cells marked No are confirmed by Siemens MindConnect product management; cells marked Physical only mean the shield seats on the header and the 5 V/3.3 V rails are connected, but no firmware binding exists.

Host Platform Firmware / Image 6ES7647-0KA01-0AA2 6ES7647-0KA02-0AA2
SIMATIC IOT2020 Example Image No (mechanical mismatch on IOT2020 footprint) Yes (officially supported)
SIMATIC IOT2040 Example Image Yes Yes (officially supported)
MindConnect IOT2040 MindConnect firmware Yes (only supported shield) No (not configurable in Asset Manager)
SIMATIC IOT2050 (Basic / Advanced) Example Image Yes (not MindConnect-managed) Physical only — confirmed on IOT2050 Advanced in lab testing
MindConnect IOT2050 MindConnect firmware Yes (only supported shield) No (not configurable in Asset Manager)
Key statement from Siemens MindConnect product management: "The only SIMATIC I/O Shield supported by the MindConnect IoT's (2040 & 2050) is the SIMATIC IoT2000 Input / Output Module 6ES7647-0KA01-0AA2. The SIMATIC IoT2000 Input Module Sink/Source 6ES7647-0KA02-0AA2 is not supported by the MindConnect IoT's (also not by the MindConnect IoT2040). It is not possible to use it as it is not possible to configure it within the Asset Manager of the device."

Hardware Architecture: Arduino Uno R3 Pinout

The SIMATIC IOT2040 and IOT2050 both implement the standard Arduino Uno R3 shield pinout on their top-side header. This is the single technical reason the 6ES7647-0KA02-0AA2 can physically mate with a MindConnect IoT2050 in the first place. The relevant header assignments used by the IoT2000 input shields are summarized below.

Arduino Pin Shield Usage (typical) Direction (host view)
D0 (RX) Reserved / unused by shields —
D1 (TX) Reserved / unused by shields —
D2 Interrupt / expansion select Input
D3 I/O expander interrupt Input
D4–D7 I²C expander bank select / chip enable Output
D8 SPI CS or digital channel I/O
D9–D13 SPI, additional chip select I/O
A0–A5 DI state readback, configuration strapping Input / Analog
I²C SDA / SCL PCF8574 / PCA9535 I/O expander bus Bidirectional
5V, 3V3, GND, VIN Power rails to shield Power

Both shields rely on I²C-bus I/O expanders (typically NXP PCF8574 / PCF8575 or pin-compatible devices) to bring the physical 24 V DC field signals back onto 3.3 V CMOS levels readable by the host's SoC. The difference between the two catalog numbers is the I²C address map and the number of expanders populated on the PCB:

  • 6ES7647-0KA01-0AA2: Mixed I/O; a single 8-bit and a single 16-bit expander populate the board. The MindConnect Asset Manager I/O template knows these device addresses and exposes 4 DI, 2 DO, and 2 AI tags.
  • 6ES7647-0KA02-0AA2: 10x DI only; the board carries a multi-bank arrangement (typically two PCF8575 devices and an addressing shunt) that brings the 10 isolated inputs back to the host. The MindConnect firmware does not contain a matching Asset Manager template.

Because the I²C pull-ups on the IoT2000 hosts are 3.3 V and the expanders on the 6ES7647-0KA02-0AA2 accept 3.3 V logic, the electrical layer is functional. The constraint is software, not hardware.

MindConnect Software Constraints

MindConnect firmware is a curated, signed image that boots a Yocto Linux distribution with a MindSphere-aware configuration layer. The configuration layer is exposed to operators through the Asset Manager web UI (default on port 443) and the MindConnect API. Every supported sensor and I/O expansion carries a "channel description" in a JSON template that the Asset Manager loads at boot.

When the IoT2050 enumerates the Arduino header, the MindConnect firmware scans the I²C bus for the known expander addresses bound to the supported -0KA01- shield. If the supported chip signature is present, the Asset Manager renders the DI/DO/AI mapping pane. If the signature is absent, or if a foreign shield (such as the -0KA02-) is detected, the Asset Manager does not render a template and there is no path to map the 10 DIs to a data source, an MQTT topic, or an OPC UA node.

Consequence: The 10 input states are physically present on the host's I²C bus, but the MindConnect application stack has no code path to subscribe to them. They cannot be sent to MindSphere, cannot be logged, and cannot be exposed to an OPC UA client. They are functionally dead from the perspective of any MindConnect-aware application.

Asset Manager I/O Source Tree (Supported Shield)

For comparison, when the 6ES7647-0KA01-0AA2 shield is attached, the MindConnect Asset Manager renders the following I/O source tree. This is the tree the -0KA02- shield cannot generate.

IOT2050
└── Shields
    └── SIMATIC IoT2000 Input/Output Module (6ES7647-0KA01-0AA2)
        ├── Digital Inputs (4)
        │   ├── DI_0
        │   ├── DI_1
        │   ├── DI_2
        │   └── DI_3
        ├── Digital Outputs (2)
        │   ├── DO_0
        │   └── DO_1
        └── Analog Inputs (2)
            ├── AI_0 (0–10 V)
            └── AI_1 (0–10 V)

Bypassing Asset Manager

The only way to recover the data from the -0KA02- shield on a MindConnect IoT2050 is to bypass the MindConnect application stack and read the I²C expander addresses directly. This is what a developer on the IOT2050 Example Image (not MindConnect firmware) can do using a small userspace program. Two practical methods exist:

  1. Python with smbus2: Read the PCF8575 input ports at the expected I²C addresses (commonly 0x20, 0x21, 0x22 on the shield, jumper-selectable) and forward the bitmask to a custom agent.
  2. Node-RED with node-red-node-arduino or i2c contrib nodes: Pull the same registers and publish to a local broker. This works on the Example Image and is the path most often used in integrator prototypes.

Both methods require the user to replace the signed MindConnect image with an unsigned Example Image, which voids MindSphere onboarding and removes the field-proven security posture of the device.

Mechanical Considerations

Beyond the firmware/asset-manager question, integrators must also weigh the physical fit. The 6ES7647-0KA02-0AA2 was designed for the IOT2020/IOT2040 enclosure. The IoT2050 chassis is taller and uses a different top cover. There is no Siemens-supplied cover or mounting kit that accepts the 10x DI module on top of an IoT2050. In practice this means:

  • The shield sits above the IoT2050's aluminum extrusion and is exposed.
  • The shield's PCB-to-enclosure clearances are reduced; vibration and accidental contact risks increase.
  • The shield's 24 V DC field wiring (typically routed via Phoenix-style spring terminals on the shield) is exposed to operator touch — a potential concern for IP20-protected control cabinets.
  • EMC and ESD performance of the assembly has not been characterized by Siemens for the IoT2050 chassis.
Field note: The IOT2050 was not designed to accept the 10x DI shield in a closed-enclosure deployment. Using the combination in a cabinet rated less than IP54 is not advisable. Even in an IP54 cabinet, the lack of a cover forces custom 3D-printed or fabricated brackets for any installation intended to survive shipping and long-term vibration.

Field-Tested Configuration (Caveats)

Independent integrator testing has confirmed the following on an IOT2050 Advanced running the Siemens Example Image (not the MindConnect image):

  • The 6ES7647-0KA02-0AA2 seats cleanly on the Arduino Uno R3 header of the IOT2050.
  • The shield's 3.3 V I²C expander is enumerated on the bus and readable from userspace.
  • All 10 sink/source-selectable inputs are functional and respond to 24 V field signals.

These results do not transfer 1:1 to a MindConnect IoT2050 because:

  1. MindConnect firmware is a different Yocto layer with different kernel modules and a different I²C device-tree binding.
  2. MindConnect Asset Manager does not enumerate the shield's expanders — it only enumerates devices it has a template for.
  3. MindConnect's mc-iothub agent does not subscribe to the shield's expander registers and will not forward them to MindSphere even if you read them with a custom program inside the MindConnect image.
Risk statement: Any deployment using the 6ES7647-0KA02-0AA2 on a MindConnect IoT2050 — whether via Example Image re-flash, side-loaded custom agent, or any other workaround — is implemented at the integrator's own risk. Siemens provides no support, no firmware update path, and no functional guarantee.

Alternative Approaches

For projects that need 10+ digital inputs on a MindConnect-branded IoT2050, evaluate the following alternatives in order of preference:

1. Use the Supported Shield and Cascade External I/O

Pair the 6ES7647-0KA01-0AA2 (4 DI on the shield) with a downstream I/O system such as an ET 200S / ET 200SP head module over PROFINET, or a third-party Modbus TCP digital input module. The MindConnect Asset Manager can subscribe to the PROFINET or Modbus data source directly, and the supported shield becomes a smaller part of a much larger I/O count.

2. Use a MindConnect IoT2040

The MindConnect IOT2040 is a generation older than the IoT2050 but shares the MindConnect firmware architecture. The -0KA02- shield is still not officially supported, but the IOT2040's lifecycle in the MindConnect support window may be longer than the IoT2050's for projects with constrained update paths. Confirm MindConnect IOT2040 firmware update support status with Siemens before committing.

3. Switch to a Non-MindConnect IoT2050 Example Image

If the data acquisition requirement is the primary driver and cloud connectivity is secondary, the IoT2050 running the Example Image with a userspace agent (Node-RED, Python, or Eclipse Kura) is a viable, supportable path. The 6ES7647-0KA02-0AA2 works here, the I²C expanders are enumerable, and a Python agent can publish MQTT to any broker of your choice. This path removes MindSphere from the stack.

4. Use a Different IoT Gateway

For applications needing 10+ DI without the MindSphere binding, gateways from Phoenix Contact, Wago, HMS, or Hirschmann (now Belden) offer integrated DI counts of 8, 16, or 32 channels out of the box, with Modbus TCP / OPC UA / MQTT support and standard industrial certifications.

Decision Matrix

Requirement Recommended Hardware Notes
≤4 DI on MindConnect IoT2050 with cloud upload MindConnect IoT2050 + 6ES7647-0KA01-0AA2 Fully supported path. Asset Manager handles the mapping.
5–32 DI on MindConnect IoT2050 with cloud upload MindConnect IoT2050 + 6ES7647-0KA01-0AA2 + ET 200SP DI module over PROFINET PROFINET is a first-class data source in MindConnect Asset Manager.
10 DI, no requirement for MindSphere IOT2050 Advanced + 6ES7647-0KA02-0AA2 + custom Python/Node-RED agent on Example Image Outside MindConnect support envelope. Use only with explicit end-user risk acceptance.
10 DI, must stay on MindConnect firmware Not directly supported — use a PROFINET DI module or third-party Modbus TCP DI module Only officially supported shields can be used with MindConnect firmware.

Risk Assessment Summary

Risk Category Impact Likelihood Mitigation
Firmware update breaks custom I²C agent High — gateway goes offline or publishes stale data High (Siemens ships signed updates that may overwrite userspace) Pin firmware version; document the image; do not auto-update MindConnect IoT2050 used in this configuration
No MindSphere support if user opens a ticket High — no escalation path through Siemens Certain Get risk acceptance in writing from the end user before deployment
Mechanical fit / cover not available Medium — exposed PCB, ESD, accidental contact Certain Use a cabinet rated IP54 or better; design a custom bracket
EMC re-certification required for final assembly Medium-High — depends on end system Likely for CE-marked machinery Re-test the integrated assembly for conducted/radiated emissions and ESD
Security posture of custom agent High — MindConnect's curated security stack is bypassed High if Example Image is used Apply Industrial Edge security hardening, restrict network exposure, patch userspace libraries

Verification Procedure (When the Supported Shield Is Used)

Use the following steps to verify a working MindConnect IoT2050 + 6ES7647-0KA01-0AA2 installation before commissioning:

  1. Power-cycle the IoT2050 with the shield seated. Confirm that the green "Shield" LED on the 6ES7647-0KA01-0AA2 illuminates within 10 s of boot.
  2. Open the MindConnect Asset Manager UI at https://<ip-address>. Log in with the operator credentials.
  3. Navigate to Configuration > I/O Sources. Confirm that the I/O source tree shows the four DIs, two DOs, and two AIs as shown in the tree above.
  4. Apply a 24 V signal to each DI terminal in turn. Confirm in the Asset Manager live view that the corresponding DI tag transitions from 0 → 1 within the configured debounce time (default 50 ms).
  5. Force a DO to logical 1 from the Asset Manager. Confirm with a multimeter that the DO MOSFET closes and applies 24 V to the field terminal.
  6. Apply 0–10 V to each AI. Confirm the reported value in the Asset Manager matches within ±0.1 V.
  7. Create a MindSphere data source pointing at the I/O source. Confirm that telemetry from at least one DI arrives in the assigned MindSphere aspect within 60 s.

Migration Path Notes

Engineers maintaining legacy IOT2020/IOT2040 installations that used the 6ES7647-0KA02-0AA2 shield and are now migrating to the MindConnect IoT2050 should be aware of the following migration constraints:

  • The 24 V field wiring from the legacy 10x DI shield can be reused, but it must be re-terminated to a different physical I/O module (typically an ET 200SP DI 8×24 V DC HF, catalog 6ES7131-6BF01-0BA0, or a third-party Modbus TCP DI block).
  • Pin-to-pin compatibility is not preserved between the 6ES7647-0KA02-0AA2 screw terminals and any PROFINET DI module; re-strip and re-terminate every conductor.
  • Sink vs. source configuration of the legacy field wiring must be re-validated against the new DI module's input wiring diagram. Do not assume that a "source" field device wired to the legacy shield is still wired correctly to a "sink" input on the new module.
  • Functional safety (SIL/PL) classifications of the legacy wiring do not transfer; the new module must be re-evaluated for the target safety integrity level.

Frequently Asked Questions

Is the 6ES7647-0KA02-0AA2 10x DI Shield officially supported on the MindConnect IoT2050?

No. Siemens MindConnect product management has confirmed that the 6ES7647-0KA02-0AA2 is not supported on the MindConnect IoT2040 or MindConnect IoT2050. The shield can be detected on the I²C bus on a non-MindConnect IOT2050 Example Image, but it cannot be configured inside the MindConnect Asset Manager, and there is no support or update path.

Which SIMATIC IoT2000 shield IS supported on the MindConnect IoT2050?

The 6ES7647-0KA01-0AA2 SIMATIC IoT2000 Input/Output Module is the only Arduino-form-factor shield supported by MindConnect firmware on both the IOT2040 and IOT2050. It exposes 4 DI, 2 DO, and 2 AI (0–10 V) channels through the MindConnect Asset Manager I/O source tree.

Why does the 6ES7647-0KA02-0AA2 physically fit on the IoT2050 even though it is not supported?

Both the IOT2040 and IOT2050 implement the standard Arduino Uno R3 shield pinout on their top header. The 6ES7647-0KA02-0AA2 was designed for the IOT2020 and IOT2040, so the mechanical and electrical interface matches. The constraint is software: the MindConnect firmware has no template for the shield's I²C expander addresses, so the Asset Manager has nothing to map.

Is the MindConnect IoT2040 still a viable option for projects that need the 10x DI shield?

No. The 6ES7647-0KA02-0AA2 is also not officially supported on the MindConnect IoT2040. It is only officially supported on the IOT2020 and IOT2040 running the Siemens Example Image (not MindConnect firmware). For MindSphere uploads with 10+ DI, the supported approach is to add a PROFINET or Modbus TCP DI module and use the 6ES7647-0KA01-0AA2 (or no shield at all) for native I/O.

What is the I²C address of the 6ES7647-0KA02-0AA2 expander, and can I read it directly on a MindConnect IoT2050?

The 6ES7647-0KA02-0AA2 typically uses PCF8574/PCF8575 I/O expanders at jumper-selectable I²C addresses in the 0x20–0x27 range. The exact address depends on the on-board address shunt. On a MindConnect IoT2050, the kernel exposes the I²C bus and the devices are electrically readable with i2cdetect, but the MindConnect application stack will not subscribe to the registers, and any userspace reader will be overwritten by signed MindConnect firmware updates. Direct read is therefore not a sustainable path on a production MindConnect device.

Does the IoT2050 have an enclosure cover that fits the 6ES7647-0KA02-0AA2?

No. Siemens does not offer a cover or mounting kit for the IoT2050 that accepts the 6ES7647-0KA02-0AA2 shield. Any installation using the combination must provide its own bracket, shielding, and cabinet protection to at least IP54.

Can I flash the IoT2050 Example Image onto a MindConnect-branded IoT2050?

Technically yes — the underlying hardware is the same. However, doing so removes the MindConnect firmware, breaks MindSphere onboarding, removes the curated security posture, and voids any MindConnect support contract. It is not a supported recovery path and should only be done on devices that are explicitly being repurposed away from MindSphere.

Back to blog