Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • timing trigger types:
    • sequences
    • ac-line rate (1,5,10,30Hz...)
    • fixed-rate patterns (1, 10, 100, 1000, 10000, 71kHz, 929kHz)
  • need to coordinate hutch sequence-pattern scripts with accelerator sequence-pattern

Sequencing

The XPM may be configured to insert event codes 272-287 into the timing stream.  Four event codes are generated by each sequence engine within the XPM.  The XPM has 4 sequence engines allowing 16 event codes total.

Engine

Event Codes

0272-275
1276-279
2280-283
3284-287

A current example for doing this is done by executing:

(ps-4.5.24) bash-4.2$ python psdaq/psdaq/seq/seqprogram.py -h
usage: seqprogram.py [-h] [--engine ENGINE] seq pv

sequence pva programming

positional arguments:
  seq              sequence script
  pv               sequence engine pv; e.g. NEH:DAQ:XPM:0

optional arguments:
  -h, --help       show this help message and exit
  --engine ENGINE  sequence engine

(ps-4.5.24) bash-4.2$ python psdaq/psdaq/seq/seqprogram.py psdaq/psdaq/seq/33k_35k.py DAQ:NEH:XPM:6

The event codes generation by an XPM may be queried via a status PV.

(ps-4.5.24) bash-4.2$ pvget DAQ:NEH:XPM:6:SEQCODES

DAQ:NEH:XPM:6:SEQCODES 2023-01-19 10:35:20.971    

EventCode  Description  Rate

      272 "33kHz base" 33164
      273 "35kHz base" 35715
      274                  0
      275                  0
      276                  0
      277                  0
      278                  0
      279                  0
      280                  0
      281                  0
      282                  0
      283                  0
      284                  0
      285                  0
      286                  0
      287                  0


See https://github.com/slac-lcls/lcls2/blob/master/psdaq/psdaq/seq/burst.py for an example of how to generate complex patterns of event codes.