Cabinet Configuration YAML
A Cabinet Configuration YAML is used to test multiple station with one configuration file.
NOTE: Some tests fail when using this mode.
To setup a cabinet config file, you provide a list of individual station files and there names.
e.g.
stations:
  <station 1 name>: "<station 1 config file name e.g. station_1_config.yml>"
  <station 2 name>: "<station 2 config file name>"
  <station 3 name>: "<station 3 config file name>"
  <station 4 name>: "<station 4 config file name>"
  <station 5 name>: "<station 5 config file name>"
  <station 6 name>: "<station 6 config file name>"
NOTE: station names will overwrite the individual station name
Requirements
- Each station must have a different network interface, either physical or virtual. 
- Each station must have no overlapping TPMs 
- Each station tile_40g_subnet, must be separated by 2 * number of TPMs per station 
- Each station must have a unique station id and network ports 
- Stations should either use all subrack format for specifying TPMs or the tiles format not both 
Virtual Network Interface
To setup a virtual network interface (macvlan) on linux, run the following commands:
sudo sysctl -w net.ipv4.conf.all.arp_ignore=1
sudo sysctl -w net.ipv4.conf.all.arp_announce=2
sudo ip link add <macvlan name> link <physical nic interface name> type macvlan
sudo ifconfig <macvlan name> <macvlan ip> netmask 255.255.255.0
sudo ip route add <macvlan ip>/32 dev <macvlan name>
Failing Tests
The following tests fail when using cabinet testing mode. Most are likely to do with issues with the DAQ.
| Test Name | Error description | 
|---|---|
| adc | Test fails occasionally | 
| daq | see issue 3 in JANUS-119 | 
| channelizer | First station test passes and the rest fails | 
| pfb | First station test passes and the rest fails | 
| tile_beamformer | Has the error: cannot convert float Nan to integer | 
| flagging | Has the error: segmentation fault | 
| antenna_buffer | gets stuck and doesn’t receive any data | 
| init_station | Expected data rate 1.34 GiB/s, received data rate 1.25 GiB/s, this is due to how python gets the data rate. Data rate captured by other means matches the 1.34 GiB/s. Happens when full 300 MHz bandwidth is tested. | 
| channelizer_offline | TBC. New test, not yet tested in cabinet testing mode. | 
| tile_beam_tracking | TBC. New test, not yet tested in cabinet testing mode. | 
| independent_beams | TBC. New test, not yet tested in cabinet testing mode. | 
| spead_tile_beam | TBC. New test, not yet tested in cabinet testing mode. | 
| spead_station_beam | TBC. New test, not yet tested in cabinet testing mode. | 
| spead_raw_adc | TBC. New test, not yet tested in cabinet testing mode. | 
| spead_antenna_buffer | TBC. New test, not yet tested in cabinet testing mode. | 
| spead_channelised | TBC. New test, not yet tested in cabinet testing mode. |