epics-modules / ip

APS BCDA synApps module: ip
http://epics-modules.github.io/ip/
Other
3 stars 9 forks source link

Oxford CS800: multiple controllers #33

Closed prjemian closed 4 years ago

prjemian commented 4 years ago

The stream-protocol support works when there is only one CS800 controller on the subnet. When there are multiple controllers, it is not certain to which controller the support will attach. It may even receive all of status packets broadcast on the subnet.

Write a sequence program to receive the status broadcasts and filter packets from the desired controller by ID (SetUpControllerNumber, parameter 1028). The simulator has been adjusted so a command-line parameter can set the controller ID of the simulator instance.

With this change, all CS800 controllers can be controlled from a single IOC (as described in a feature request to the asyn module). The default would attach to any controller, assuming that only one controller is running on the subnet. This could be checked using ID broadcast traffic on the UDP port 30303. Those broadcasts only include IP and MAC address but that could be enough. Better for the support to require controller ID to be specified and matched.

This work can follow merge of #28 so as not to delay further that PR.

prjemian commented 4 years ago

Follow this asyn issue before proceeding here.