Data objects I/O controller

Allows to accept data objects as raw UDP packets from various 3rd party sources such as Matlab, LabView, other data modelling software as well as from compatible hardware.

Setup

Use the template EVA_DIR/share/svc-tpl/svc-tpl-controller-dobj.yml:

# EVA ICS data object controller service
command: svc/eva-controller-dobj
bus:
  path: var/bus.ipc
config:
  # UDP bridges for external software
  input:
    # all incoming UDP packets are processed with core data object named 'MyDataObject'
    - bind: localhost:25001
      data_object: MyDataObject
      # specify endianess (big/little, default: little)
      endianess: little
      # data buffer size, must be great or equal than the data object size
      # the default buffer capacity is max UDP packet size
      #buffer: 8192
  # Enable verbose mode
  #verbose: true
user: nobody

Create the service using eva-shell:

eva svc create eva.controller.dobj /opt/eva4/share/svc-tpl/svc-tpl-controller-dobj.yml

or using the bus CLI client:

cd /opt/eva4
cat DEPLOY.yml | ./bin/yml2mp | \
    ./sbin/bus ./var/bus.ipc rpc call eva.core svc.deploy -

(see eva.core::svc.deploy for more info)