TCP binding: unable to get any output

Hi all,

I’m currently running OpenHab 2.2 in Docker and I’m having some trouble to get the TCP binding to work.


  • My ubuntu VM which runs Docker is able to send TCP packets to the destination device (verified using WireShark on the host machine) so I’m excluding firewall as a possible root cause.

  • OpenHAB doesn’t log any error on the item or binding configuration

  • the input for the item is read using Modbus and this works fine (item state is updated on change)

  • I have the eventbus extented using MQTT and can see that the command for the item comes through

  • No TCP traffic is generated by the OpenHAB binding (verified with WireShark)


  • item (V1)

Switch DO_01_1 “Kitchenlight”
{ modbus="<[Wago750_DO:0]",
WagoTCP=">[ON:‘ABC’], >[OFF:‘DEF’]", autoupdate=“false”}

  • item (V2)

Switch DO_01_1 “Kitchenlight”
{ modbus="<[Wago750_DO:0]",
WagoTCP=">[ON:‘MAP(’], >[OFF:‘MAP(’]", autoupdate=“false”}

  • map for item V2 (


  • tcp binding config

# all parameters can be applied to both the TCP and UDP binding unless
# specified otherwise
# Port to listen for incoming connections
# Cron-like string to reconnect remote ends, e.g for unstable connection or remote ends
# WagoTcp.reconnectcron=0 0 0 * * ?
# Interval between reconnection attempts when recovering from a communication error,
# in seconds
# Queue data whilst recovering from a connection problem (TCP only)
# Maximum buffer size whilst reading incoming data
# Share connections within the Item binding configurations
# Share connections between Item binding configurations
# Share connections between inbound and outbound connections
# Allow masks in ip:port addressing, e.g.* etc
# Pre-amble that will be put in front of data being sent
# Post-amble that will be appended to data being sent
# Perform all write/read (send/receive) operations in a blocking mode, e.g. the binding
# will wait for a reply from the remote end after data has been sent
# timeout, in milliseconds, to wait for a reply when initiating a blocking write/read
# operation
# Update the status of Items using the response received from the remote end (if the
# remote end sends replies to commands)
# Timeout - or 'refresh interval', in milliseconds, of the worker thread
# Timeout, in milliseconds, to wait when "Selecting" IO channels ready for communication
# Used character set

Would anyone have any idea why this is occuring or how to troubleshoot this further? I’m stuck here :slight_smile:

Note: in the docker-compose file there’s an gap configured for port 2000, yet this shouldn’t be necessary in the first place as it’s an outbound connection out of the container.

Any assistance is much appreciated!

looks like I was overthinking this, commenting everything in my tcp.cfg file and using ‘tcp’ in my item configuration got things working.