Introduction: The Bridge between EtherCAT and K-bus
In Beckhoff's I/O system, the bus coupler is a key component for converting fieldbus protocols to internal terminal buses (K-bus or E-bus). For a large number of users who are still using the classic KL series bus terminals, BK1120, BK1150, and BK1250 provide a solution that combines EtherCAT high-performance networks with mature and stable K-bus terminals.
BK1120/BK1150: As EtherCAT slave stations, directly connect to the EtherCAT network and connect to KL series terminals (K-bus).
BK1250: Its special feature lies in its "terminal type" housing, which can be hung behind the E-bus (EL terminal) to achieve the conversion from E-bus to K-bus, thus mixing EL and KL terminals in the same terminal block.
These three couplers all support up to 64 KL terminals (up to 255 through K-bus extension), with a maximum process data input/output of 1024 bytes. They inherit all the advantages of the Beckhoff bus terminal system: automatic terminal recognition, flexible configuration, and high reliability diagnosis. This article is based on the official manual and systematically outlines the installation, parameterization (especially the register communication of KL terminal), diagnosis, and troubleshooting process of BK couplers, providing a practical guide for on-site engineers.
Mechanical installation and power wiring
2.1 Installation on DIN rail
BK1120 (width 49mm) and BK1150/BK1250 (width 15mm) are both installed on 35mm DIN rails (EN 60715). When installing, first hang the coupler on the upper edge of the guide rail and press down until the lock buckle clicks into place. When disassembling, use the orange release handle (or a screwdriver to pry the locking hook) to remove it. Requirements for enhancing mechanical load capacity: Use TH35-15 guide rails, install fixing components at both ends of the terminal block, with a distance of 5cm between the fixing points of the guide rails, and a total length of no more than 64 12mm terminals or 32 24mm terminals.
2.2 Power Supply and Grounding
The coupler requires 24V DC (-15%/+20%) power supply and is connected through the top spring terminal
Us (terminals 1 and 5): supplies power to the electronic part of the coupler and K-bus (maximum 1750mA for K-bus).
Up (terminals 2/6 and 3/7): Provides power to the power contacts for on-site power supply of peripheral devices (such as sensors), with a maximum current of 10A (requires 10A slow melting fuse).
PE (terminal 4/8): protective grounding, must be at a common potential with 0V and comply with PELV requirements.
Important isolation: There are three potential groups inside the coupler: EtherCAT side, K-bus electronic side, and power contact side, which are electrically isolated from each other (500V). PE contacts shall not be used for other potentials, and there is capacitive coupling between PE and the installation guide rail. The PE feeder shall be disconnected during insulation testing.
2.3 EtherCAT Network Wiring
Use standard CAT5e shielded Ethernet cables (such as Beckhoff ZB9010/9020), RJ45 connectors, and pins that comply with Ethernet standards (1/2 transmit, 3/6 receive). The coupler has automatic crossover function and supports direct or crossover lines. Two RJ45 interfaces (X1 IN/X2 OUT) are used for cascading, and the cable length between any two devices is ≤ 100m.

Startup behavior and distributed clock (DC)
After the coupler is powered on, it first performs a self check (red I/O ERR LED flashing), then scans the connected KL terminal to establish an internal structure list. If there are no errors, the I/O ERR LED will turn off and the coupler will enter the EtherCAT state machine process (Initiat → PREOP → SAFEOP → OP). If the terminal configuration is incorrect, the coupler will remain in the STOP state.
Regarding distributed clocks: BK1150 supports as a DC reference clock starting from revision number -0016 and firmware 01. To use it as a reference clock, check "Cyclic Mode Enable" and "Use as potential Reference Clock" in the "Advanced Settings" of TwinCAT. Infrastructure components such as system couplers are not used as DC references by default, but can be activated as needed.
Three ways to parameterize KL terminals (register communication)
Many parameters of KL series terminals (especially analog and special function terminals), such as range, filtering, user scaling, and bias, are managed through internal "registers". The BK coupler, as a gateway, provides the following three register access methods:
4.1 Approach 1: CoE Startup List - Recommended for Permanent Parameterization
This method automatically writes parameters to the specified KL terminal every time the system starts, even if the terminal is replaced, the parameters can be restored. Core steps:
In TwinCAT, select the "Startup" tab of the BK coupler.
Insert an entry in the PREOP → SAFEOP conversion:
Firstly, write 0x427F:00 as the target terminal number (the first KL terminal number is 1).
If you need to write protection registers (R32-R47), you need to first write register 31 as 0x1235 (code word). Set through 0x4280:20 (sub index=register number+1).
Write to other registers as needed (such as R33 offset, R34 gain, etc.), with each register corresponding to a sub index (register number+1), for example, register 33 → sub index 22 (hexadecimal).
The final reset code word is 0x4280:20=0.
Finally, clear the terminal selection: 0x427F:00=0.
These entries will be executed in order to ensure parameter distribution.
Example: Modify the user offset (register 33) of the third terminal (KL3314) to 0x04D2 (1234 decimal). Add: 0 to the startup list x427F:00 = 3,0x4280:20 = 0x1235,0x4280:22 = 0x04D2,0x4280:20 = 0,0x427F:00 = 0。
4.2 Approach 2: Online CoE Access
During operation, the KL terminal register can be directly read and written through the CoE directory of the BK coupler. Operation Method:
Select the "CoE Online" tab of the BK coupler.
Firstly, write 0x427F:00 as the target terminal number (2-byte value).
Then access different channels/pages of the register through indexes 0x4280~0x4287. Each channel has a maximum of 64 registers (0-63), with sub index=register number+1. For example, register 33 of channel 1 corresponds to 0x4280:22.
After modification, view the values online. Note: If the terminal number does not exist or does not support register communication, "SDO Abort" will be displayed.
4.3 Approach Three: AoE (ADS over EtherCAT) - Suitable for dynamic access of PLC programs
AoE allows access to KL terminal registers from PLC or remote TwinCAT stations via ADS protocol. A unique AmsNetId (such as 172.16.8.29.3.10) needs to be generated in the "Advanced Settings" → "Mailbox" → "AoE" of the BK coupler. Then, the ADS access parameters are:
AmsNetId: Generated AoE NetId
Port: 100 (fixed)
IndexGroup: 0 represents the coupler itself,>0 represents the terminal number (e.g. 3 represents the third KL terminal)
IndexOffset: The high word represents the channel number (0-3), and the low word represents the register number (16 bits)
For example, accessing register 31 (code word) of channel 2 on the third terminal, IndexGroup=3,IndexOffset=0x0001001F。 This method facilitates dynamic parameter adjustment in PLC programs without the need to intervene in the startup list.
Process data mapping and PDO configuration
The BK coupler automatically generates process images, but users can adjust PDO allocation (via 0x1C12/0x1C13). By default, analog (non digital) terminals are arranged in Word Alignment, while digital terminals are arranged compactly in bits. The status word (CouplerState) and control word (CouplerCtrl) occupy the first 16 bits of the process image with a fixed offset of 0. Non digital terminals (such as KL3062) occupy three parts (three 16 bit words) of "status/virtual word/data" for each channel, while digital terminals are arranged by bit or byte.
In TwinCAT, PDO allocation can be modified through the "Process Data" tab, such as disabling certain channels or changing data length. However, it should be noted that the modifications must be consistent with the actual configuration of the KL terminal, otherwise it will result in an "Invalid SM IN cfg" error (AL Status Code 0x001E).

Detailed explanation and troubleshooting of LED diagnosis
6.1 Power and Status LEDs
Us (green): The power supply of the coupler is normal.
Up (green): The power contacts are supplying power normally.
RUN (green): EtherCAT state machine indication: off=Initiat, flashing=PREOP, single flash=SAFEOP, constant light=OP.
ERROR (red): off=no error, flashing=error or lost frame.
LINK/ACT (green): X1/X2 port link/activity indicator.
6.2 K-bus error flashing code (I/O ERR LED flashing red)
When the I/O ERR LED flashes continuously or regularly, it indicates a K-bus fault. The error code consists of "fast flashing (start)"+"slow sequence (error code)"+"slow sequence (parameter)".
Error code (number of pulses) parameter description and solution measures
1 0 EEPROM checksum error using KS2000 to restore factory settings
1 n>0 Configuration table overflow reduces the number of terminals
2 n>0 configuration table item error check whether the configuration matches the terminal
30 K-bus command error: No terminal or damaged terminal, use the split method to locate
Check the n+1 terminal connection after disconnecting the 40 coupler
Check for broken wires at terminal n+1 and terminal KL9010 after terminal n of 4 n
5 n register communication error, replace the nth terminal
14 n terminal format error. Restart the coupler. If it still persists, replace the terminal
The number of 15n terminals is incorrect. Restart or restore to factory settings
16 n K-bus data length error, restart or restore to factory settings
Important: Continuous rapid flashing indicates EMC interference, and power, grounding, and shielding need to be checked.
6.3 EtherCAT Master Station Error Messages
AL Status Code 0x0003: K-bus error causing inability to enter SAFEOP, K-bus fault needs to be investigated.
AL Status Code 0x001E (Invalid SM IN cfg): Process data length mismatch, usually due to the configuration reported by the KL terminal not matching the TwinCAT ESI preset. Solution: Check if the terminal is in special mode (such as enabling other PDOs), or use KS2000 to verify the register configuration.
KS2000 configuration software communicates with ADS
KS2000 is the official Beckhoff software used for parameterizing KL terminals. To communicate with the BK coupler through the ADS channel, the steps are as follows:
Open the BK coupler's "EtherCAT" ->"Advanced Settings" ->"Mailbox" ->"AoE" in TwinCAT, click "Generate NetID" and "Initialize NetID".
Record the generated AmsNetId (e.g. 172.16.8.29.3.10).
In KS2000, select the communication channel as "ADS", enter the AmsNetId, and set the port to 100.
Test the connection, and once successful, you can read and modify the registers of each KL terminal online.
Firmware compatibility and version recognition
The firmware and hardware versions of BK1120/BK1150/BK1250 are identified by the serial number on the side label (e.g. 34 06 08 02:34 week/06 year/firmware 08/hardware 02). The manual provides a detailed version correspondence table, for example, BK1120 supports AoE starting from firmware 08 and more comprehensive features starting from firmware 19 (hardware 20). When replacing the coupler, it is necessary to ensure that the revision number of the new device is ≥ the revision number in the configuration to maintain compatibility.
Common fault cases and solutions
Possible causes and solutions for the fault phenomenon
The coupler cannot enter the OP K-bus terminal without terminating KL9010. Check if the end is connected to KL9010
Partial analog values are abnormal. User scaling is not loaded correctly. Check if the register write operation in the startup list is successful
I/O ERR flashes 3 times. If one terminal is damaged, use the paired method to troubleshoot. Remove the second half of the terminal and test it one by one
After replacing the terminal, parameters were lost and unused startup list was added. Register write entry was added to TwinCAT Startup
AoE communication failed. AmsNetId was not generated or there was an IP error in KS2000. NetId was regenerated and entered correctly in KS2000
When scanning, the ESI file version of 'Unknown Device' does not match. Update the ESI directory of TwinCAT or upload OnlineDescription from the device
