How-To: Accessing ACO Frontends Using ACO Tools


This how-to is just intended as a primer for non-specialists.

Disclaimer: There are many, many possibilities outside the scope of this how-to. For more details have a look at the following 'Rufbereitschafts HOW-TOs' by the FEE team

  • FESA Explorer maybe best for people that can't handle CLI
  • RDA seems to be the fastest
  • (P/I/D)DEX seems to do be a good compromise

FESA Explorer

Using the FESA Explorer requires an 'X'-session to ASL.

Use the command fex & ; checkout this example


This requires ssh to ASL only.

First, you must define your CMW directory server.
[user@asl742 ~]$ export  // example for 'PRO'

Use 'rda-get' to access FESA properties on a frontend

//get help
[user@asl742 ~]$ /common/usr/cscosv/bin/rda-get -h                       

// get info on a property of device (prints all fields)
[user@asl742 ~]$ /common/usr/cscosv/bin/rda-get -d ZT00ZM02 -p StatisticsAcquisition 

// get info on a specific field
[user@asl742 ~]$ /common/usr/cscosv/bin/rda-get -d ZT00ZM02 -p StatisticsAcquisition  -f actionCount


snoopy-spy pro snoops timing messages via the ASL command line and has a nice display, see here


MASP Simple Tool

This tool allows to get MASP device states in a simple and quick way. Examples:
[user@asl742 dm-unipz]$ /common/usr/cscofe/bin/masp_device_status UNIPZ    // gateway between UNIPZ and Data Master

[user@asl742 dm-unipz]$ /common/usr/cscofe/bin/masp_device_status WR2MIL   // gateways White Rabbit -> MIL

[user@asl742 dm-unipz]$ /common/usr/cscofe/bin/masp_device_status  00ZB    // FESA classes for bunch-2-bucket

MASP Expert Tool

masp_expert_tool pro is a nice tool to get lots of interesing info
  • 0: List chains
  • 1: List chain details
  • 8: show info on devices; devices operated by the timing groups are
    • U_DM_UNIPZ
    • U_WR2MIL_ESR
    • U_WR2MIL_SIS18
    • 00ZB

Example: Determine MASP Status of DM-UNIPZ (Coupling UNILAC <-> DM)
[user@asl742 ~]$ /common/usr/cscofe/bin/masp_expert_tool pro
choose an option:              // select '8'
select device (q to quit):     // select < RET > for all devices
                               // here: select U_DM_UNIPZ
signal                         status       emitter      faulty_mask  particle_transfer
U_DM_UNIPZ.OP_READY            OK           CUSTOM       False        SIS18_RING   
U_DM_UNIPZ.ONLINE              OK           CUSTOM       False        SIS18_RING   


This requires ssh to ASL only. See info by FEE for more details.
  • pdex: device explorer for Pro
  • ddex: device explorer for Dev
  • idex: device explorer for Int
It not only supports FESA devices but also 'old' devices using 'Device Access'. Another advantage is that it displays node and DU name too! As an additional requirement, you need to add the following at the very end of your .bashrc
# User specific aliases and functions
. /common/usr/cscofe/scripts/accdefs


// get help
[user@asl742 ~]$ pdex -h

// get info on a device (*node*, *DU name*)
[user@asl742 ~]$ pdex ZT00ZM02

// get info on a property of a device (prints all fields)
[user@asl742 ~]$ pdex ZT00ZM02 StatisticsAcquisition

// get info on a specific field
[user@asl742 ~]$ pdex ZT00ZM02 StatisticsAcquisition actionCount

Determine Frontend of a Specific Nomen/Device

[user@asl742 ~]$ pdex GTH3MU1
NOMEN  = GTH3MU1 (PowerSupplyHebt_DU.scuxl0218 | BasicHvPS)

Determine Nomen/Device of a Specific Frontend

[user@asl742 ~]$ pdex scuxl0218
FEC_NAME = scuxl0218
Devices on the same FEC (sorted by timdom)
|         GHHTQT32 GHHTQT33 
|-- (521) GTH4QD31 GTH4QD32 GTV1MU1  
|-- (522) GTV1MU2 
|-- (513) GTH3MU1 
|-- (505) GTS1QD11 GTS1QD12 
|-- (502) GTE3QD11 GTE3QD12 GTE4QD11 GTE4QD12 GTE4QT21 
|         GTE4QT22 GTE4QT23 GTE4QT31 GTE4QT32 GTE4QT33 
|-- (517) GTH4QD11 GTH4QD12 GTH4QD21 GTH4QD22 GTH4MU1  

List Properties of a Specific Nomen/Device

[user@asl742 ~]$ pdex GTH3MU1 -l
NOMEN  = GTH3MU1 (PowerSupplyHebt_DU.scuxl0218 | BasicHvPS)
|-- Properties:
    |-- Acquisition
    |-- Configuration
    |-- Connect
    |-- DCMode
    |-- DCValue
    |-- DCValueAcq
    |-- DiagnosticSetting
    |-- Init
    |-- Inverter
    |-- Power
    |-- Reset
    |-- RunTimeInfo
    |-- Setting
    |-- Status
    |-- Version
    |-- ModuleStatus

-- DietrichBeck - 09 Nov 2019
Topic revision: r5 - 23 Mar 2022, DietrichBeck
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback