Interest in an Apache PLC4X binding (Universal Industrial PLC API)

Hi all,

I thought I should introduce myself here as I think the Open-Source project I’m currently working on, could be beneficial to the OpenHab project.

I’m working on the Apache PLC4X (incubating) project. Here we are implementing drivers for communicating with all sorts of different industrial hardware (Mainly PLCs). The cool thing is that it has a universal API so it is possible to communicate with all sorts of devices using the same API. This makes integration in something like OpenHab quite easy.

Currently we support the following protocols:

  • S7 (0x32)
  • Beckhoff ADS
  • Modbus
  • Ethernet/IP
    and hopefully soon:
  • Opc-UA
  • Profinet
  • BacNET

So would an Apache PLC4X binding for OpenHAB be something interesting?



Modbus connectivity is covered already but few of my friends has asked about opc support :thinking:

Of course, the more bindings the better.

I would really appreciate to have a binding like that.

I think it would definitely be a great goal to have a OpenHab binding that can connect to native communication channels of different PLC’s as S7 or Beckhoff ADS.

Is there already work in progress or plans, to build such an PLC4X OpenHab binding?

As I currently do run a large OpenHab installation with a Beckhoff control in production, I could make myself available for testing, if anything in that direction comes up.

Hi Simon,

well there are plans, but I haven’t started working on that. Right now I’m concentrating on implementing features with a business-value. So OpenHAB integration will be something I’ll start working on as soon as I have some spare time.

However if you want to, I would be super-happy if you wanted to get started on that :slight_smile:


I started playing with plc4x/ads about a month ago and managed to write simple program to read and set state of an input.
What I did not manage yet was reading a state of output together with input (indexes from different groups). I also look forward for support of reading symbol table via ads just in same way as some of Beckhoff tools. Then we will be able to have 1st class binding with auto discovery and much more handy than modbus where discovery is not possible.


Hi @splatch

That sounds great.
Please let me know if you want to share anything or if you need help for testing or discussions about use cases.
Since I’have just a little knowledge in java developing and no experience with OpenHab binding implementation, i’m not sure if I could help with developing as well…


I think my biggest problem is lack of PLC/OT knowledge. Getting through it was a difficult journey. Beckhoff has decent docs, I managed to write simplistic program, however I am not certain if its fine. Having someone who knows this universe to verify my setup would be big help. I didn’t try yet sample from Plc4x website, maybe that’s something which will simplify my life.
Plc4x codebase is quite straight and once I got basic concepts I was fighting more with device than a code.
@chrisdutz is fluent on plc4x side and siemens he might be faster in getting whole thing up.
Anyhow - will share my updates if I will manage to get them running under openhab.

@chrisdutz and me will join forces in coming week (4-5 May 2019) to hack around few things which are necessary in order to get plc4x running in openHAB runtime. Once this will be completed we will have a good base to move forward and implement binding.
For everyone who is interested in topic, there is public event we will be part off co-organized by European Comission and Apache Software Foundation.

Participation is open and if you live around Brusels or will to travel then come by! There is lots to be covered - ie. Beckhoff ADS and many more which could be interesting for industrial applications.


@Tuny thanks for a like. You actually reminded me to post another event which is coming on 24 May 2019. It is one day before Smart Home Day Darmstadt 2019. All you need to do is to sign in to meetup group.
I will be there as well as other people who are much into the industry and getting connectivity troubles there solved.

See you there!