OpENer - Open Source EtherNet/IP(TM) I/O Target Stack  2.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Extending OpENer

OpENer provides an API for adding own CIP objects and instances with specific services and attributes. Therefore OpENer can be easily adapted to support different device profiles and specific CIP objects needed for your device. The functions to be used are:

  • S_CIP_Class CreateCIPClass(EIP_UINT32 class_id, int number_of_class_attributes, EIP_UINT32 class_get_attribute_all_mask, int number_of_class_services, int number_of_instance_attributes, EIP_UINT32 instance_get_attribute_all_mask, int number_of_instance_services, int number_of_instances, char *class_name, EIP_UINT16 revision);
  • S_CIP_Instance *AddCIPInstances(S_CIP_Class *cip_object, int number_of_instances);
  • S_CIP_Instance *AddCIPInstance(S_CIP_Class * cip_class, EIP_UINT32 instance_id);
  • void InsertAttribute(S_CIP_Instance *instance, EIP_UINT16 attribute_number, EIP_UINT8 cip_type, void data);
  • void InsertService(S_CIP_Class *class, EIP_UINT8 service_number, CipServiceFunction service_function, char *service_name);