diff --git a/libraries/base/diag/tb/vhdl/tb_diag_rx_seq.vhd b/libraries/base/diag/tb/vhdl/tb_diag_rx_seq.vhd
index 1bd4841de59ecc1519cb26f25013e0f0cbc3926d..d3039932f7a8b3aa48a172611b30d8d0913eceb9 100644
--- a/libraries/base/diag/tb/vhdl/tb_diag_rx_seq.vhd
+++ b/libraries/base/diag/tb/vhdl/tb_diag_rx_seq.vhd
@@ -41,6 +41,7 @@ USE work.diag_pkg.ALL;
 ENTITY tb_diag_rx_seq IS
   GENERIC (   
     g_tx_cnt_incr    : INTEGER := -7;
+    g_tx_mod         : INTEGER := 0;
     g_rx_use_steps   : BOOLEAN := TRUE;
     g_rx_steps_arr   : t_integer_arr(c_diag_seq_rx_reg_nof_steps-1 DOWNTO 0) := (1, 0, -7, 3);
     g_seq_dat_w      : NATURAL := 16            -- = 12b for Lofar RCU test data, 16b for Lofar TBBI test data
@@ -66,6 +67,7 @@ ARCHITECTURE tb OF tb_diag_rx_seq IS
   -- Tx test data
   SIGNAL tx_diag_en     : STD_LOGIC;
   SIGNAL tx_diag_sel    : STD_LOGIC;
+  SIGNAL tx_diag_mod    : STD_LOGIC_VECTOR(g_seq_dat_w-1 DOWNTO 0) := TO_UVEC(g_tx_mod, g_seq_dat_w);
   SIGNAL tx_diag_req    : STD_LOGIC;
   SIGNAL seq_dat        : STD_LOGIC_VECTOR(g_seq_dat_w-1 DOWNTO 0);
   SIGNAL seq_val        : STD_LOGIC;
@@ -265,6 +267,7 @@ BEGIN
     rst      => rst,
     diag_en  => tx_diag_en,
     diag_sel => tx_diag_sel,
+    diag_mod => tx_diag_mod,
     diag_req => tx_diag_req,
     out_dat  => seq_dat,
     out_val  => seq_val
diff --git a/libraries/base/diag/tb/vhdl/tb_tb_diag_rx_seq.vhd b/libraries/base/diag/tb/vhdl/tb_tb_diag_rx_seq.vhd
index f3f1c323f51f5ed2fe2363756a8cc82e8f8cc053..23a520a906be7ce7ffdccb7e484912dd18da1582 100644
--- a/libraries/base/diag/tb/vhdl/tb_tb_diag_rx_seq.vhd
+++ b/libraries/base/diag/tb/vhdl/tb_tb_diag_rx_seq.vhd
@@ -31,12 +31,16 @@ ARCHITECTURE tb OF tb_tb_diag_rx_seq IS
 BEGIN
 
   -- g_tx_cnt_incr    : INTEGER := 1;
+  -- g_tx_mod         : INTEGER := 0;
   -- g_rx_use_steps   : BOOLEAN := TRUE;
   -- g_rx_steps_arr   : t_integer_arr(c_diag_seq_rx_reg_nof_steps-1 DOWNTO 0) := (OTHERS=>1);
   -- g_seq_dat_w      : NATURAL := 16
   
-  u_diag_sel                   : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 1, FALSE, (1,  1, 1, 1), 8);
-  u_diag_steps_incr_1          : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 1,  TRUE, (1,  1, 1, 1), 8);
-  u_diag_steps_incr_neg_7      : ENTITY work.tb_diag_rx_seq GENERIC MAP (-7,  TRUE, (1, -7, 1, 1), 8);
+  u_diag_sel                   : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 1,   0, FALSE, (1,   1, 1, 1), 8);
+  u_diag_steps_incr_1          : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 1,   0,  TRUE, (1,   1, 1, 1), 8);
+  u_diag_steps_incr_neg_7      : ENTITY work.tb_diag_rx_seq GENERIC MAP (-7,   0,  TRUE, (1,  -7, 1, 1), 8);
+  u_diag_steps_tx_mod          : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 1, 255,  TRUE, (1,   2, 1, 1), 8);  -- rx_step = 2**g_seq_dat_w - tx_mod + g_tx_cnt_incr = 256 - 255 + 1 = 2
+  u_diag_steps_tx_mod_incr_7   : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 7, 255,  TRUE, (7,   8, 7, 7), 8);  -- rx_step = 2**g_seq_dat_w - tx_mod + g_tx_cnt_incr = 256 - 255 + 7 = 8
+  u_diag_steps_tx_mod_incr_5   : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 5, 127,  TRUE, (5, 134, 5, 5), 8);  -- rx_step = 2**g_seq_dat_w - tx_mod + g_tx_cnt_incr = 256 - 127 + 5 = 134
   
 END tb;