-
Notifications
You must be signed in to change notification settings - Fork 2
Making an Instrument Available from the GUI
John Holt edited this page Oct 31, 2016
·
17 revisions
Wiki > Deployment > Making an Instrument Available from the GUI
The new instrument must be added to the list of available instruments, so that users can control it from the Ibex GUI. The list of available instruments is stored in a PV called CS:INSTLIST
, which runs on the beam status IOC, and is therefore independent of any specific instrument.
The content of the PV is a string in json format, compressed and hexed, for example:
[
{"name": "LARMOR", "hostName": "NDXLARMOR", "pvPrefix": "IN:LARMOR:"},
{"name": "ALF", "hostName": "NDXALF", "pvPrefix": "IN:ALF:"},
{"name": "DEMO", "hostName": "NDXDEMO", "pvPrefix": "IN:DEMO:"},
{"name": "IMAT", "hostName": "NDXIMAT", "pvPrefix": "IN:IMAT:"},
{"name": "MUONFE", "hostName": "NDEMUONFE", "pvPrefix": "IN:MUONFE:"},
{"name": "ZOOM", "hostName": "NDXZOOM", "pvPrefix": "IN:ZOOM:"},
{"name": "IRIS", "hostName": "NDXIRIS", "pvPrefix": "IN:IRIS:"},
]
To add a new instrument to this list proceed as follows:
- Create a new git issue for adding the instrument to the list (for traceability)
- Check the current PV value from an EPICS terminal:
caget -t -S CS:INSTLIST|uzhex
- Write a new value to the PV with the new instrument appended. To write a new compressed and hexed value to PV there is a utility Python script
C:\Instrument\Apps\EPICS\ISIS\inst_servers\master\scripts\set_instrument_list.py
, add the instrument to the dictionary in this script. - Verify that all the instruments are picked up by the GUI (e.g. there are no parsing errors):
IBEX -> Switch Instrument
and that they have the correct alarm server and configuration loaded.