From GNU Radio documentation, the control_loop block proposes loop bandwidth values in the range $[\frac{2\pi}{200}, \frac{2\pi}{100}]$ in radians per sample.
Some blocks, like the new timing symbol sync block recommends a value around $2\pi\cdot 0.040$. Given sample rate $R_{sample}$ and symbol rate $R_{symbol}$, the symbol rate can be expressed in radians per sample as
$$2\pi\frac{ R_{symbol}}{R_{sample}} = \frac{2\pi}{N}$$
where $N$ is the oversampling ratio is samples per symbol. From literature, the loop bandwidth around a few percentages of the symbol rate (say 3% for example) is recommended.
I have a problem in relating the recommended control_loop values to the values suggested in the literature. Suppose for example the signal is oversampled by a factor of $N = 100$ samples per symbol.
A loop bandwidth value of say $\frac{2\pi}{100}$ will be equivalent to 100% of the symbol rate, which doesn't seem to be logical. The same loop bandwidth will be equivalent to 3% for an oversampling factor of $N = 3$.
I think that the ratio between the loop bandwidth and the symbol rate depends on $N$. For example, in the figure below, I don't think a loop bandwidth of $\frac{2\pi}{100}$ would mean the same thing to the FLL and the PFB ($N = 4\,\text{sps}$) as it will to the Costas loop ($N = 1\,\text{sps}$).
- Why don't the recommended values in control_loop take N into account?
- How can the loop bandwidth in GNU Radio synchronization be configured as a percentage of the symbol rate?