753-646 KNX Module stuck on "Switch over in device mode failed" (FW 28 & FW 31)

Hi everyone,

I’m running out of ideas with a 753-646 KNX module that refuses to initialize. The master communication function block (FbKNX_Master) is constantly throwing the following error:

'Switch over in device mode failed'

On the physical module, the E LED is flashing green (initializing/syncing) and the G LED is solid red (internal error / configuration mismatch).

I have already upgraded the firmware hoping it would fix it, but the issue persists. Here is my exact timeline and hardware setup:

1. Setup 1 (Initial tests):

  • PLC: 750-8212/000-100 (Firmware 28)

  • Software: CODESYS V3.5 SP19 Patch 7

  • Hardware layout: PLC → 4x DALI modules (753-647) → KNX module (Slot 5).

  • Result: Constant “Switch over in device mode failed” error.

2. Setup 2 (Current environment):

  • PLC: 750-8212/000-100 upgraded to Firmware 31

  • Software: CODESYS V3.5 SP21 Patch 6

  • Result: Constant “Switch over in device mode failed” error.

What I have tried so far to troubleshoot:

  1. ETS6 Configuration: The module is configured and downloaded as a standard TP1-Module (Device Mode). XML files imported and network variables are correctly generated and visible.
  2. K-Bus Reorganization: To discard any K-Bus memory shifts or delays caused by the 4 DALI modules, I physically moved the KNX module to Slot 1 (right next to the CPU) and shifted the DALI cards behind it. I updated the CODESYS device tree accordingly.
  3. IEC Code: All data point instances (FbDPT_Switch mapping to M1_001_...) are actively called in the PLC_PRG cycle. The FbKNX_Master points to bModuleNo := 1.
  4. Downloads: Always performing “Clean All” and full cold downloads (avoiding Online Changes), followed by complete power cycles.

Since the issue happens on both FW28 and FW31, and even with the module in Slot 1, I suspect there is a silent mismatch between what the library expects and what the module firmware has stored.

Has anyone encountered this specific 'Switch over in device mode failed' error after a firmware change? Is there any hidden parameter or K-Bus buffer setting in CODESYS V3 that I might be missing?

Any insights or workarounds would be highly appreciated!

I am attaching some images that might help to better understand what I have done so far.

Thanks in advance,

image

For testing i only have one declaration now.

I called this in my programm.

Here is my Kbus.

I only have this in Symbol Configuration.

I imported the file and i can see my declaration.

I already asigned one Address Group with the same Data Type.

image

I use this device from the catalog.

After contacting the Wago support team, we discovered that my error was failing to assign the “dwIndex” input. In case this happens to you in the future, both “dwIndex” and “bPortKNX” must always be implemented.