Overview

From Bruce Hill on March 2, 2023:

For DRP we setup this gateway:
drp on pscag03 serving PVs from 172.21.155.255 (a.k.a. the "152" subnet) subnet to hutches

Clients on daq-drp.pcdsn (the "152" subnet) are able to directly access hutch PVs using our standard EPICS_CA_AUTO_ADDR_LIST=YES via any of the pscag0* hosts which all have interfaces for these subnets.

In late 2023 ports were open so that ACR and S3DF can access DAQ EPICS across subnets without a gateway using EPICS_CA_ADDR_LIST and EPICS_PVA_ADDR_LIST (cpo has notes on how to do this from ACR, need to put those notes here).

We propose to export DAQ:NEH:tmo (read-only) from the tmo gateway.  This is for variables like DAQ:NEH:tmo:0:DeadFrac created by the prom2pvs process.  We also export DAQ:NEH:XPM (read-write) from the drp gateway so that control-level processes running on machines like tmo-daq can program XPM's.

On April 15, 2024 the drp gateway exposed DAQ:NEH:* and DRP:*, we will try removing these on April 22, 2024.  There is also a DET:*, which we should try to remove as well on April 22, 2024.

There are special rules that are read-write from DRP:

mcc-daq.pvlist:EM1K0:GMD:HPS:BLD:PAYLOAD           ALLOW RWDRP
mcc-daq.pvlist:EM2K0:XGMD:HPS:BLD:PAYLOAD          ALLOW RWDRP
rix.pvlist:RIX:TIMETOOL:.*      ALLOW RWDRP 1
rix.pvlist:MR4K2:FIM:W8:.* ALLOW RWDRP 1
rix.pvlist:MR3K2:FIM:W8:.* ALLOW RWDRP 1
rix.pvlist:RIX:FIM:W8:03.* ALLOW RWDRP 1
rix.pvlist:RIX:CRIX:W8:.* ALLOW RWDRP 1
tmo.pvlist:DAQ:TMO:HSD:1_DA.*    ALLOW  RWDRP   1
tmo.pvlist:TMO:TIMETOOL:.*      ALLOW RWDRP 1
tmo.pvlist:MR2K4:FIM:W8:.* ALLOW RWDRP 1
tmo.pvlist:MR3K4:FIM:W8:.* ALLOW RWDRP 1
txi.pvlist:TXI:TIMETOOL:.*      ALLOW RWDRP 1

also this one for the tmo laser wave8:
las-amo.pvlist:LM1K4:W8:04:.*                ALLOW RWTMODAQ 1

cpo thoughts:

  • gmd/xgmd should be removed, but I will confirm with the group
  • RIX:RIM:W8 is old and should be removed (replaced by CRIX wave8)
  • don't understand the TIMETOOL ones, but may be necessary.  cpo will think.

When we make the changes, we will check:

  • the daq runs
  • grafana works
  • TIMETOOL still works

Matt writes about the GMD/XGMD variables above:  "Yes, these are the variables you describe (to determine the structure of the bld).  I think read only should be fine.  Also, I think pvget is expected to fail.  I think the proper access is something like pvinfo." (although cpo tried and couldn't get either pvget or pvinfo to work).  Matt later adds: "The PV is actually EM1K0:GMD:HPS:BLD_PAYLOAD which is still inaccessible.  I think that's because the accelerator doesn't yet have a PVA gateway.  Our bld process uses EPICS_PVA_ADDR_LIST=172.27.131.255 to access it directly" so the above entries in mcc-daq.pvlist are incorrect and can be removed completely.

Timetool arrays are in the cnf files.  This allows the drp process to write to the timetool variable hosted by the hutch.

(ps-4.6.3) tmo-daq:scripts> grep TTALL tmo.cnf
 { host: 'drp-srcf-cmp026', id:'tmo_atmopal_0', flags:'spu', env:epics_env, cmd:drp_cmd0+' -l 0x1 -D opal -k ttpv=TMO:TIMETOOL:TTALL'},
(ps-4.6.3) tmo-daq:scripts> 

Work on April 23, 2024

Zach and cpo removed the bld-payload variables above since they were spelled incorrectly, and don't need to be writeable from the DAQ.  Also removed the RIX:FIM:W8:03 since we believe that FIM as renamed to the CRIX fim.  Also removed tmo.pvlist:DAQ:TMO:HSD:1_DA.* since it is only for one channel.  Removed DET:*, *DRP.*, *DAQ:NEH.* (replaced the latter with DAQ:NEH:XPM) in drppvlist.

DAQ:NEH:tmo are the variables that Ric's prometheus exporter generates and are readable in tmo.pvlist.  Added DAQ:NEH:rix to rix.pvlist.  Restarted rix/tmo/drp/mcc-daq gateways.

Bypassing Gateways

Router work has been done to allow EPICS variables to be accessed using EPICS_CA_ADDR_LIST and EPICS_PVA_ADDR_LIST.  Some details are here: ACR Realtime Feedback#RouterNetworkSupport

  • No labels