Quick Start Guide of DAQ program - IAA-BURSTT/document GitHub Wiki
To start and stop data acquisition (DAQ) using utility scripts by Shih-Hao. THe scripts are intended to facilitate the operation.
The following run the script under /home/ubuntu/shwang/script
Check DAQ Status
[!IMPORTANT] Always check the status before doing further actions
./getDAQProcStat.sh
which shows the essential processes and their PIDs.
Start DAQ
./initDAQ.sh bf
where bf denotes beamforming, running the default version (rudp64_wrbd_3 at LTN).
To run a different version, do
./initDAQ.sh ${DAQMode}
For example, to run 16-bit DAQ mode, do
./initDAQ.sh rudp16
Please see the script to find the list of available DAQ modes.
The script consists of two parts, which can be run individually, as detailed below:
- Start and Monitor TCP socket listener to Shared Memory
- Start DAQ program bursttd, wrbd
Start and Monitor TCP socket listener to Shared Memory
To start sock2shmd for TCP socket listener and wshmd to monitor the status of shared memory
./shm.sh
[!NOTE] wshmd always follows sock2shmd for correct pointer to access the shared memory
Start DAQ program bursttd, wrbd
version dependent
Loading 1st Beamforming Matrix (E-W) on FPGA
[!TIP] the 1st BFM needs to be generated from 16-bit observation
[!NOTE]
bursttd* should be stopped before reloading 1st BFM
For LTN station,
(rfsoc) [ubuntu@burstt5 python_zcu216 (master)]$ python reload_burstt5-wsh.py bf64_300m --freq0 300. --bfmid LTN-bf16-300MHz-20250508-b0_minus_flip --no-reload
where --no-reload means do not reload bitcode (Important!), bf64_300m for choosing the bitcode (optional), setting starting frequency to 300 MHz, using the 1st BFM under folder /home/ubuntu/rfsoc/python_zcu216/BFM/LTN-bf16-300MHz-20250508-b0_minus_flip
Loading 2nd Beamforming Matrix (N-S) on server
For LTN station with 2m spacing,
./set2ndBFM.sh -s 2.0 -d 1 1.511 -d 2 1.074 -d 3 1.183 --flim 300. 700. --theta '-1.6 -1.68 9.57 30.95'
where the delay of FPGA is given by -d {FPGA ID,[0,3]} {delay in ns}, setting 300-700 MHz frequency range, and user-defined angles --theta '-1.6 -1.68 9.57 30.95' in degrees rather than default evenly-spaced ones.
In this example, the N-S beams point toward the Sun, Crab, 3C48, PSR B0329+54 at their transit, respectively
[!TIP]
The angles can be checked with
(kylin) $ obs_planner.py sun b0329+54 crab 3c48 -d 250601 --site longtien
Stop DAQ
[!NOTE]
remove the loop file to terminate the intensity streaming before running stopping DAQ below
./stopDAQ.sh
this kill the default version of sock2shmd, wshmd, wrbd, bursttd.
To kill other version
./stopDAQ.sh ${DAQMode}
where $DAQMode is the same as for initDAQ.sh. For example, to stop rudp16
./stopDAQ.sh rudp16