diff --git a/applications/lofar2/designs/lofar2_unb2b_sdp_station/revisions/disturb2_unb2b_sdp_station_full_wg/tb_disturb2_unb2b_sdp_station_full_wg.vhd b/applications/lofar2/designs/lofar2_unb2b_sdp_station/revisions/disturb2_unb2b_sdp_station_full_wg/tb_disturb2_unb2b_sdp_station_full_wg.vhd
index af09b265d05b1bfe7eaa646c7af997e9ff9957b1..add612046c21acb3512352a156ecb351b11d6154 100644
--- a/applications/lofar2/designs/lofar2_unb2b_sdp_station/revisions/disturb2_unb2b_sdp_station_full_wg/tb_disturb2_unb2b_sdp_station_full_wg.vhd
+++ b/applications/lofar2/designs/lofar2_unb2b_sdp_station/revisions/disturb2_unb2b_sdp_station_full_wg/tb_disturb2_unb2b_sdp_station_full_wg.vhd
@@ -41,17 +41,22 @@
 --      . verify subband  99.5 in beamset 1
 --      . These subbands also appear at about half power in the other beamset
 --        but these values are not verified, because they are at the edge of
---        the subband and will in practise not be used. Since the purpose of
---        the 2x oversampled filterbank is to only use the beamlet frequencies
---        that are around the center of the subband, so the half of the
---        subbands from beamset 0 and half of the subbands from beamset 1.
+--        the subband and will in practise not be used. Therefore choose WG
+--        c_wg_ampl_sp_2 = c_wg_ampl_sp_0 / 3 to distinghuis them.
+--        The purpose of the 2x oversampled filterbank is to only use the
+--        beamlet frequencies that are around the center of the subband, so
+--        the half of the subbands from beamset 0 and half of the subbands
+--        from beamset 1.
 --
 -- Usage:
 --   > as 7    # default
 --   > as 12   # for detailed debugging
 --   > run -a  
---     manually add missing beamlet_arr2_im/re to wave window
---     manually add top level generics/constants to wave window
+--   . manually add missing beamlet_arr2_im/re to wave window, and manually
+--     copy beamlet_arr2_im[195:215] and [1170:1190] and the rx_beamlet_*
+--     index signals to have a more compact view of the relevant indices.
+--   . If c_subband_phase = 0.0 then beamlet_arr2_re entries are 0.
+--   . manually add top level generics/constants to wave window.
 --
 -- Remark: TB is based on tb_lofar2_unb2c_sdp_station_bf.
 -------------------------------------------------------------------------------
@@ -101,9 +106,9 @@ ARCHITECTURE tb OF tb_disturb2_unb2b_sdp_station_full_wg IS
   -- WG
   CONSTANT c_bsn_start_wg         : NATURAL := 2;  -- start WG at this BSN to instead of some BSN, to avoid mismatches in exact expected data values
   -- . ampl
-  CONSTANT c_beamlet_scale        : REAL := 1.0 / 2.0**8;
+  CONSTANT c_beamlet_scale        : REAL := 1.0 / 2.0**9;
   CONSTANT c_wg_ampl_sp_0         : NATURAL := NATURAL(7.0 / c_beamlet_scale);  -- choose < 8.0 to have no beamlet output overflow with unit weights and unit beamlet scale
-  CONSTANT c_wg_ampl_sp_2         : NATURAL := c_wg_ampl_sp_0 / 2;  -- use different ampl for sp_0 and sp_2 to distinghuis them
+  CONSTANT c_wg_ampl_sp_2         : NATURAL := c_wg_ampl_sp_0 / 3;  -- use different ampl for sp_0 and sp_2 to distinghuis them
   -- . phase
   CONSTANT c_subband_phase        : REAL := 0.0;  -- wanted subband phase in degrees = WG phase at sop
   CONSTANT c_wg_latency           : INTEGER := c_diag_wg_latency - 0;  -- -0 to account for BSN scheduler start trigger latency
@@ -406,14 +411,12 @@ BEGIN
 
     -- Read 3 packets to make sure we get 1 from each beamset. It can happen that two packets
     -- (but not three) from the same beamset are received back to back.
-    FOR packet IN 0 TO 8 LOOP
-      rx_beamlet_valid <= '0';
-
+    FOR packet IN 0 TO 24 LOOP
       -- Get beamlet_index from packet header
       proc_common_wait_until_high(ext_clk, tr_10GbE_src_out.sop);
       FOR I IN 0 TO 8 LOOP -- Packet header is 9.25 words wide, which can be discarded
         IF I = 7 THEN
-          v_beamlet_index_offset :=  c_sdp_N_pol_bf * TO_UINT(tr_10GbE_src_out.data(39 DOWNTO 24)); -- Read beamlet index
+          v_beamlet_index_offset := c_sdp_N_pol_bf * TO_UINT(tr_10GbE_src_out.data(39 DOWNTO 24));  -- Read beamlet index
           rx_beamlet_index_offset <= v_beamlet_index_offset;
         END IF;
         proc_common_wait_until_high(ext_clk, tr_10GbE_src_out.valid);
@@ -460,6 +463,10 @@ BEGIN
         beamlet_arr2_re(v_beamlet_index_offset + c_sdp_N_pol_bf * c_sdp_cep_nof_beamlets_per_block-1) <= tr_10GbE_src_out.data(55 DOWNTO 48);
         -- Loop for next block in packet
       END LOOP;
+      -- Make rx_beamlet_valid low for next header or after loop during verify.
+      -- Cannot wait one ext_clk cycle here to include last beamlet of block,
+      -- because next packet sop may follow immediately after this packet eop.
+      rx_beamlet_valid <= '0';
 
       -- Loop and wait for next packet.
     END LOOP;
@@ -478,9 +485,6 @@ BEGIN
     print_str("WPFB:");
     print_str(". c_exp_subband_ampl_sp_0   = " & real_to_str(c_exp_subband_ampl_sp_0, 20, 6));
     print_str(". c_exp_subband_ampl_sp_2   = " & real_to_str(c_exp_subband_ampl_sp_2, 20, 6));
-    print_str("BF:");
-    print_str(". c_exp_beamlet_ampl_sp_0   = " & real_to_str(c_exp_beamlet_ampl_sp_0, 20, 6));
-    print_str(". c_exp_beamlet_ampl_sp_2   = " & real_to_str(c_exp_beamlet_ampl_sp_2, 20, 6));
     print_str("");
     print_str("Beamlet output: (sp_0 at mid subband, sp_2 at subband edge, so at mid of os subband):");
     print_str(". c_exp_beamlet_index       = " & int_to_str(c_exp_beamlet_index));