Dear Users Thanks for the reply Marcus. I understand that getting phase difference almost zero is difficult, but I should get phase difference consistent when i change the frequency. what is happening is that when i change the frequency i am getting a phase diff i.e 100 degree, next time for the same frequency i should get the same phase different but it is different every time. Some time there is a difference in LO frequency also i.e Suppose I set my center frequency 3.5GHz , one channel I am getting 3.5001and in other channel 3.4999 GHz. If i tune this frequency again then frequencies are same. This i have verified many times. This problem is there only I change my frequency dynamically.
I even tried for Stream Command uhd::stream_cmd_t cmd(uhd::stream_cmd_t::STREAM_MODE_STOP_CONTINUOUS);usrp_source1->issue_stream_cmd(cmd,0); Delayms(10); uhd::stream_cmd_t cmd1(uhd::stream_cmd_t::STREAM_MODE_START_CONTINUOUS);) Delayms(10); usrp_source1->issue_stream_cmd(cmd,1); so that my steam start when both channels are locked and ready for data but that also did not help. Regards,Arun Verma From: Marcus D. Leech via USRP-users <usrp-users@lists.ettus.com> To: usrp-users@lists.ettus.com Sent: Monday, 17 December 2018 9:44 AM Subject: Re: [USRP-users] Phase Offset problem when center frequency is changed dynamically On 12/15/2018 08:02 AM, Arun kumar Verma via USRP-users wrote: Dear Users I am facing problem of phase offset when i change center frequency dynamically for TwinRX with X310 setup. Here is my C++ code, Please advise usrp_source1->set_rx_lo_source("internal",uhd::usrp::multi_usrp::ALL_LOS,0); usrp_source1->set_rx_lo_source("companion",uhd::usrp::multi_usrp::ALL_LOS,1); usrp_sourceDOA1->set_command_time(usrp_sourceDOA1->get_time_now() + uhd::time_spec_t(0.01)); usrp_sourceDOA1->set_center_freq(m_CenterFrequency,0); usrp_sourceDOA1->set_center_freq(m_CenterFrequency,1); usrp_sourceDOA1->clear_command_time(); I feel set_command_time is not working properly. When i start the X310 my phase difference is almost zero but as i change my frequency pjhase difference is random in nature. Regards, Arun Verma Since you're using the "companion" configuration (where the 2nd-channel LO is a "copy" of the first), you'll inevitably be dealing with physical path-length issues between the output of the first-channel synthesizer and the two-or-more mixers involved. Since there's almost no way to make the path-lengths electrically the same, given the array of switches, and circuit-board traces involved, there'll be some non-zero difference in the electrical path lengths. This will manifest as different phase offsets at different frequencies. It will also change slightly with temperature, since circuit traces that are non-zero-length change electrical length with temperature changes. The good news is that it should be fairly reproducible, and can be characterized for your configuration, and you can build a table and use that for phase compensation. This is very much like the "inside the radio" version of what inevitably happens out in your antenna "plumbing": (A) Getting *exact* phase matches even with apparently "identical" pieces of coax and other bits of plumbing is near-impossible. This gets worse with shorter wavelengths. (B) Those phase lengths will inevitably change with temperature. Further, it's even worse, because none of these transmission paths have a dielectric constant of 1.0, which means that smaller physical length differences are "ampified" by the slower velocity in these lines--that is, wavelengths are physically shorter, so that a physical difference affects more of a wavelength. _______________________________________________ USRP-users mailing list USRP-users@lists.ettus.com http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
_______________________________________________ USRP-users mailing list USRP-users@lists.ettus.com http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com