Dear all,
the MID system is composed of 2 CRUs. However, when reading the RDH, both CRUs currently have ID=0.
How can we distinguish the two CRUs from the RDH?

Thanks in advance,

Hello @dstocco If you are looking for a unique way to identify the data sources (link by link) then you should not use the CRU ID as it depends on the HW installation (which could change due to reconfigurations, replacements etc…). You should rather use the Source ID which is the combination of System ID and SubSystem ID (cfr.

Take care,
– Roberto

Ciao @divia,
thanks for the info. Ok, so if I get it correctly SubSystemID = FEEID.

I know how to set the source ID.

roc-reg-write --I=pciaddress --address=0x00640004 --ch=2 --val="sourceID" #Link 0

but where can I find the equivalent command to set the FeeID?

The System ID and the SubSystem ID are set by the Front-End. This is very important, the data must be tagged from the very first step of the chain.

Take care,
– Roberto

@costaf : do you know what addresses I should change in roc-reg-write to set the FEEID?

The CRU-ID is a valid field to distinguish data coming from different CRUs for your code.
However it is not a field considered by the rest of the chain (like STFB)

Currently it is configurable by the detector but in the end it will be equal to the serial number (not decided yet, but very possible).

You can set it with the option

roc-config --cru-id

It is a valid way to identify data coming from different CRUs … as you can define it as you want. And even in the final system it will always ensure you that data is coming from different CRUs (even if the hardware changes, as it will follow the S/N of the CRU, that changes with the hardware).

The only way to set the FEE id per link is to use the roc-config with the configuration file.
A template of it can be found here

Same thing is for SYSTEM ID that can be set by roc-config.

An other thing to mention.
When running with the UL, these fields should be set by the UL and not via roc-config.
You should set with roc-config, only when running in streaming mode and collecting data from the GBT link directly.

Ciao Filippo,
the command cru-id works very well. Thanks!
Of course, we’ll set things properly once the UL is in place.