Hi Marcus, > Von: "Marcus D. Leech" <patchvonbr...@gmail.com> > On 12/08/2019 05:19 PM, Lukas Haase wrote: > > Hi Marcus, > > > >> You'll need to look at the API here: > >> > >> https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#a191b78b00d051d3d51c2f719361c1fb5 > >> > >> and here: > >> > >> https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#a607aee766d21228a7aaabde2771eb46f > >> > >> Basically, GRC will generate python code where it calls the > >> set_rx_freq() method (or set_tx_freq() method), and you need to modify this > >> code to have set_command_time() and clear_command_time() wrapped > >> around those operations. > > Thank you. > > > > As I understand you referenced the USRP driver whereas GRC creates gnuradio > > objects (e.g.: usrp_source > > https://www.gnuradio.org/doc/doxygen-3.7.2/classgr_1_1uhd_1_1usrp__source.html > > ) > > > > My dilemma is that I need to set the center frequency of the TX to "fc" and > > the center frequency of the RX to "2*fc" and its phase relationship should > > be identical for each "fc" (at least as long the USRP does not power cycle). > > > > The gnuradio API als exposes the USRP API you mentioned so I tried: > > > > now = self.uhd_usrp_sink_0.get_time_now() > > self.uhd_usrp_sink_0.set_command_time(now + uhd.time_spec(1)) > > self.uhd_usrp_source_0.set_command_time(now + uhd.time_spec(1)) > > > > self.uhd_usrp_source_0.set_center_freq(2*self.fcenter, 0) > > self.uhd_usrp_source_0.set_center_freq(2*self.fcenter, 1) > > self.uhd_usrp_sink_0.set_center_freq(self.fcenter, 0) > > > > self.uhd_usrp_source_0.clear_command_time() > > self.uhd_usrp_sink_0.clear_command_time() > > > > But this this the phase still jumps after a frequency change. > So, you're trying to measure the 2nd-harmonic energy of the TX signal?
Precicely. > What frequencies are involved here? Example: Transmit 900 Mhz (USRP Sink). Receive 1800 MHz (USRP Source). The received signal will have arbitrary phase phi1. Tune to frequency 950 MHz and receive 1900 MHz. The phase will be phi2. Then tuning back to 900 MHz and I need to read out phi1 again. Then tuning back to 950 MHz and I need to read out phi2 again. And so on. Does this make sense? Thanks, Luke _______________________________________________ USRP-users mailing list USRP-users@lists.ettus.com http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com