Update: I found a way to make it work on the X310 (and in a limited way also for the B210)
If I implement it as a bursty transmission (with tx_sob, tx_eob and tx_time tag) I can calculate the time of the gain change from tx_time and the sample rate and add it to the tx_command tag. This only works for the X310. For the B210 the time tag doesn‘t work for some reason. But on a bursty transmission the position of the tx_command tag works to some extend (not on the exact sample asked for, but with some delay). > Am 30.03.2023 um 01:36 schrieb Jeff Long <willco...@gmail.com>: > > Just as a guess ... on the X310, all the tags arrived in the same work() > call, so they were all applied at the same time, spaced by the amount of time > it took to toggle the gain up and down over the ethernet interface. On the > B210, there must have been one tag per buffer. It's also possible that the > control interface on the X310 is out-of-band and the B210 is in-band. > > On Wed, Mar 29, 2023 at 2:12 PM Nicolas Buhr <buhr.nico...@gmx.de> wrote: >> That‘s ok. I can add arbitrarily long guard intervals, where I need to >> change the gain. I actually can not leave the radio gain at the highest >> needed, because I need about 30dB gain difference and at -30dB the ADC >> resolution isn‘t sufficient anymore. >> >> But if you could have a look at the pictures I posted on stackoverflow (Link >> below in my original post), it’s odd, that there is so much difference >> between the result with B210 and X310. >> >>> Am 29.03.2023 um 16:04 schrieb Jeff Long <willco...@gmail.com>: >>> >>> You will not get a radio to adjust its gain anywhere near that quickly. You >>> could leave the radio gain at the highest you will need, and vary the >>> amplitude of your signal. >>> >>> On Tue, Mar 28, 2023 at 5:46 PM Nicolas Buhr <buhr.nico...@gmx.de> wrote: >>>> Hi everyone, >>>> >>>> I already posted this to stackoverflow, but maybe somebody here can help >>>> me as well. >>>> >>>> I’m working with a USRP B210/X310 and I’m trying to send a frame with >>>> containing some payload, with synchronization sequences before and after >>>> the payload. For interesting measurements bit error rate measurements, I >>>> want to get a low SNR for the payload. Since I need a much better SNR for >>>> more synchronization, I’m trying to send the synchronization sequence with >>>> a high gain, while sending the payload with a much lower gain. >>>> >>>> Trying to implement this I encountered some unexpected behavior while >>>> using the tagged stream commands for the GNURadio block. So I went back >>>> and made the most simple setup, I could imagine. >>>> >>>> The results and the actual problem can be seen in the screenshots in my >>>> stackoverflow post: >>>> https://stackoverflow.com/questions/75869595/gnuradio-usrp-stream-tag-execution-not-as-expected >>>> >>>> Any ideas, where to look for/how to remove the error? >>>> >>>> >>>> Thanks in advance, >>>> >>>> Nicolas Buhr