Projects / OpENer


OpENer is an EtherNet/IP stack for I/O adapter devices. It supports multiple I/O and explicit connections and includes objects and services for making EtherNet/IP-compliant products as defined in the ODVA specification.

Operating Systems

Recent releases

  •  28 May 2012 18:42

    Release Notes: This release adds support for a delayed broadcast list identity response. It reworks network handling, resulting not only in clearer code but also in better performance. Assembly objects accept only the correct amount of data. An issue when input only should overtake a closed exclusive owner connection has been fixed. The EDS file has been updated to meet minimum requirements. Issues in produced point to point setup and in the address data encapsulation on big endian platforms have been fixed.

    •  22 Nov 2011 15:24

      Release Notes: This release adds support for application-triggered connections, a new forward open infrastructure which allows I/O connections to non-assembly objects, and support for the win32 platform. It fixes some issues with 64bit data type support.

      •  05 Jan 2011 09:44

        Release Notes: This release is a minor release that fixes several bugs. One of the biggest issues that were fixed is the handling of input only and listen only connections, which were not working in previous releases. Connected output assemblies cannot be written accidentally with explicit messages any more. Furthermore, the message and socket handling was improved for the PC platform.

        •  08 Jun 2010 13:06

          Release Notes: This release is a minor release, including a bunch of bug fixes. These improved the general stability of the stack, especially the handling of wrong data packets, which could put the stack on a wrong state or resulted in wrong return messages. The software now allows that objects do not have the getattributeAll and single services per default (e.g., Assembly object). Code cleanup has been done.

          •  29 Apr 2010 17:35

            Release Notes: The main improvements are the correct clean-up and shutdown of all connections and memory allocated when OpENer is terminated, an improved, new connection ID allocation algorithm as suggested by the EtherNet/IP(TM) specification, and get/set attributed for assembly objects. The major bugs that are solved are to correctly handle message originators, incorrect connection timeout, a fix for an issue with 16-bit IDs in connection paths, and using the right assembly IDs in the sample application.

            Recent comments

            01 Dec 2013 15:22 ah114088

            I wrote and recently published a Ruby module for EtherNet/IP:


            The repository contains a sample script that connects to a device which runs the OpENer sample application.

            20 Sep 2013 14:32 mharriman


            I am very interested in your progress on this. A Python EtherNet/IP stack would be awesome. Please keep us informed on your progress.

            12 Sep 2013 11:49 CapXilinx

            Hello Jason!

            Thank you for your hint on FreeBSD!

            Regarding your question for the python port, I will gladly add it to the project.

            Thank you for your support!

            08 Sep 2013 07:32 jasonvalenzuela

            Hello, I'm starting a Python project for which an Ethernet/IP stack would be highly desirable and am investigating incorporating your OpENer project into a Python module for this purpose. I have two questions along those lines:

            1. Would you want this incorporated into your project, say under src/ports/python?

            2. I stumbled across a small problem compiling under FreeBSD 9.1. Apparently sys/types.h and sys/socket.h are required before including netinet/in.h as found in opener_user_conf.h. Adding types.h and moving socket.h before in.h seems to work.

            Thank you,
            Jason Valenzuela


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.