getRadioTime causing error message
2 views (last 30 days)
Show older comments
Please help me understand why this code:
version
tx = comm.SDRuTransmitter('Platform','B210','SerialNum','31DEAC3','CenterFrequency',90e6);
rx = comm.SDRuReceiver('Platform','B210','SerialNum','31DEAC3','CenterFrequency',90e6);
tx.getRadioTime;
rx.getRadioTime;
tx(ones(1e5,1));
rx();
Produces this error message, and how to fix it:
>> mwe
ans =
'23.2.0.2428915 (R2023b) Update 4'
Win32; Microsoft Visual C++ version 14.2; Boost_107800; UHD_4.2.0.0-vendor
---------- see libuhd version information above this line ----------
Error using reportSDRuStatus
An error occurred: Could not execute UHD driver command in 'createDriver_c': Conflicting PPS sources:
Internal and External.
The transmitter and the receiver of the same radio must use the same PPS source.
Error in comm.internal.SDRuBase/setupImpl
Error in mwe (line 7)
rx();
0 Comments
Answers (1)
Avadhoot
on 12 Feb 2024
Hey Robert,
I get that you are trying to transmit and receive a signal on the "SDRuTransmitter" and "SDRuReceiver". You have set up the transmitter and receiver correctly. The error you see is occuring because there is a conflict between the Pulse Per Second (PPS) sources for the transmitter and receiver of the B210 software-defined radio.
PPS is a signal used for time synchronization between various components of a communication system, and it is critical that both the transmitter and receiver agree on the source of this signal. Here it appears that one part of the radio (either the transmitter or the receiver) is configured to use an internal PPS source while the other part is configured to use an external PPS source. For proper operation, both the transmitter and receiver need to use the same PPS source.
Please make sure that both the transmitter and the receiver are configured to use the same source. You can do this by using the "PPSSource" property of the transmitter and receiver objects. You need to add the following code after you define the transmitter and receiver.
tx.PPSSource = 'Internal';
rx.PPSSource = 'Internal';
If you are not using an external source, then you can set the "PPSSource" property to 'Internal'. This is the default setting for the property.
If the error does not go away after this or if you are using an external source, then you need to adjust the settings of your hardware and ensure that the PPS signal is correctly configured. In case of an external source you need to make sure that the transmitter and receiver are connected to the same external PPS signal.
For more information about the "PPSSource" property refer to the below documentation:
I hope this helps.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!