Hi all,

a lot going on here, but let me just confirm a few things:

- The _200 suffix is derived from the max analog bandwidth you get, but
like Chris says there is no analog filtering on the X440, so really it's a
maximum sampling rate (of 250Msps). With the _200 image, you get access to
resamplers, and thus also to lower sampling rates (and therefore analog
bandwidths, but you still need to filter outside of the X440).
- The _400 and _1600 images have no resamplers, but they have some
flexibility in the available sampling rates.
- 10 Msps is about the limit you can achieve on the device itself.

--M

On Fri, Feb 7, 2025 at 5:32 PM Chris Rogers <c1337rog...@gmail.com> wrote:

> I’d suggest taking a look at this section of the manual
> https://files.ettus.com/manual/page_usrp_x4xx.html#x440_usage_mcrs and
> the link Marcus sent
> https://kb.ettus.com/About_Sampling_Rates_and_Master_Clock_Rates_for_the_USRP_X440.
> This is a unique USRP architecture that requires some frequency and clock
> planning
>
> You should probably manually set your desired Master Clock Rate (MCR) and
> Converter Rate (Fc) based on your frequencies of interest. It’s important
> to note that the X440 has no analog front end, so you cannot adjust any
> analog bandwidth filters, but you can reduce the MCR and Fc which will
> reduce the bandwidth digitally, and DDC will further reduce the bandwidth.
> You can set these clocks in the device arguments. So basically, if you set
> rx_rate=100e6, you’ll be getting 100 MHz of bandwidth, but where in the
> spectrum that 100 MHz is located and how many aliases you’ll see is decided
> by how you configure the clocks and what you set the RF center frequency to.
>
> Your timeout error is probably caused by running UHD programs on the X440
> itself. It’s really designed to stream samples to it from a different host
> computer over the QSFP ports
>
> On Fri, Feb 7, 2025 at 8:44 AM Rilbert Lima via USRP-users <
> usrp-users@lists.ettus.com> wrote:
>
>> Thank you, Chris.
>>
>> I have updated the FPGA image from the USRP X440 to the X4_200, and upon
>> executing, the sampling rate has been reduced to approximately 5 Msps.
>>
>> Another matter I would like to inquire about is whether it is possible to
>> reduce the analog bandwidth of the signal from 200 MHz to 100 MHz. I am
>> aiming to use the X440 with OpenAirInterface5G in FR1, but since the image
>> is from the X4_200, which is tied to a 200 MHz bandwidth, I would like to
>> know if there is any workaround to perform this downgrade."
>>
>> However, in some tests that were performed, the receive timeout error
>> appears, even using the 5e6 sampling rate, increasing the value to 99 *Num
>> timeouts (Rx): 99*. And I don't know why these receive errors appeared.
>>
>>
>> root@ni-x4xx-342597F:/usr/lib/uhd/examples# ./benchmark_rate --rx_rate
>> 5e6 --tx_rate 5e6
>>
>> [INFO] [UHD] linux; GNU C++ version 11.4.0; Boost_107800;
>> UHD_4.7.0.0-0-ga5ed1872
>>
>> [00:00:00.029460] Creating the usrp device with: ...
>>
>> [INFO] [MPMD] Initializing 1 device(s) in parallel with args:
>> mgmt_addr=127.0.0.1,type=x4xx,product=x440,serial=342597F,name=ni-x4xx-342597F,fpga=X4_200,claimed=False
>>
>> [WARNING] [MPM.RPCServer] A timeout event occured!
>>
>> [INFO] [MPM.PeriphManager] init() called with device args
>> `fpga=X4_200,mgmt_addr=127.0.0.1,name=ni-x4xx-342597F,product=x440,clock_source=internal,time_source=internal,initializing=True'.
>>
>> Using Device: Single USRP:
>>
>> Device: X400-Series Device
>>
>> Mboard 0: x440
>>
>> RX Channel: 0
>>
>> RX DSP: 0
>>
>> RX Dboard: A
>>
>> RX Subdev: 0
>>
>> RX Channel: 1
>>
>> RX DSP: 1
>>
>> RX Dboard: A
>>
>> RX Subdev: 1
>>
>> RX Channel: 2
>>
>> RX DSP: 2
>>
>> RX Dboard: A
>>
>> RX Subdev: 2
>>
>> RX Channel: 3
>>
>> RX DSP: 3
>>
>> RX Dboard: A
>>
>> RX Subdev: 3
>>
>> RX Channel: 4
>>
>> RX DSP: 4
>>
>> RX Dboard: B
>>
>> RX Subdev: 0
>>
>> RX Channel: 5
>>
>> RX DSP: 5
>>
>> RX Dboard: B
>>
>> RX Subdev: 1
>>
>> RX Channel: 6
>>
>> RX DSP: 6
>>
>> RX Dboard: B
>>
>> RX Subdev: 2
>>
>> RX Channel: 7
>>
>> RX DSP: 7
>>
>> RX Dboard: B
>>
>> RX Subdev: 3
>>
>> TX Channel: 0
>>
>> TX DSP: 0
>>
>> TX Dboard: A
>>
>> TX Subdev: 0
>>
>> TX Channel: 1
>>
>> TX DSP: 1
>>
>> TX Dboard: A
>>
>> TX Subdev: 1
>>
>> TX Channel: 2
>>
>> TX DSP: 2
>>
>> TX Dboard: A
>>
>> TX Subdev: 2
>>
>> TX Channel: 3
>>
>> TX DSP: 3
>>
>> TX Dboard: A
>>
>> TX Subdev: 3
>>
>> TX Channel: 4
>>
>> TX DSP: 4
>>
>> TX Dboard: B
>>
>> TX Subdev: 0
>>
>> TX Channel: 5
>>
>> TX DSP: 5
>>
>> TX Dboard: B
>>
>> TX Subdev: 1
>>
>> TX Channel: 6
>>
>> TX DSP: 6
>>
>> TX Dboard: B
>>
>> TX Subdev: 2
>>
>> TX Channel: 7
>>
>> TX DSP: 7
>>
>> TX Dboard: B
>>
>> TX Subdev: 3
>>
>> [00:00:04.112276974] Setting device timestamp to 0...
>>
>> [WARNING] [0/DDC#0] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [0/DDC#0] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [MULTI_USRP] Could not set RX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DDC#0] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [0/DDC#0] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [MULTI_USRP] Could not set RX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DDC#0] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [0/DDC#0] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [MULTI_USRP] Could not set RX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DDC#0] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [0/DDC#0] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [MULTI_USRP] Could not set RX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DDC#1] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [0/DDC#1] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [MULTI_USRP] Could not set RX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DDC#1] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [0/DDC#1] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [MULTI_USRP] Could not set RX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DDC#1] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [0/DDC#1] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [MULTI_USRP] Could not set RX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DDC#1] The requested decimation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even decimation to ensure that a halfband filter is enabled.
>>
>> Decimations factorable by 4 will enable 2 halfbands, those factorable by
>> 8 will enable 3 halfbands.
>>
>> decimation = dsp_rate/samp_rate -> 49
>>
>> [WARNING] [MULTI_USRP] Could not set RX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [00:00:04.465504150] Testing receive rate 5.015510 Msps on 1 channels
>>
>> [WARNING] [0/DUC#0] The requested interpolation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even interpolation to ensure that a halfband filter is enabled.
>>
>> [WARNING] [MULTI_USRP] Could not set TX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DUC#0] The requested interpolation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even interpolation to ensure that a halfband filter is enabled.
>>
>> [WARNING] [MULTI_USRP] Could not set TX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DUC#0] The requested interpolation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even interpolation to ensure that a halfband filter is enabled.
>>
>> [WARNING] [MULTI_USRP] Could not set TX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DUC#0] The requested interpolation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even interpolation to ensure that a halfband filter is enabled.
>>
>> [WARNING] [MULTI_USRP] Could not set TX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DUC#1] The requested interpolation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even interpolation to ensure that a halfband filter is enabled.
>>
>> [WARNING] [MULTI_USRP] Could not set TX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DUC#1] The requested interpolation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even interpolation to ensure that a halfband filter is enabled.
>>
>> [WARNING] [MULTI_USRP] Could not set TX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DUC#1] The requested interpolation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even interpolation to ensure that a halfband filter is enabled.
>>
>> [WARNING] [MULTI_USRP] Could not set TX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> [WARNING] [0/DUC#1] The requested interpolation is odd; the user should
>> expect passband CIC rolloff.
>>
>> Select an even interpolation to ensure that a halfband filter is enabled.
>>
>> [WARNING] [MULTI_USRP] Could not set TX rate to 5.000 MHz. Actual rate is
>> 5.016 MHz
>>
>> Setting TX spp to 352
>>
>> [00:00:04.801908845] Testing transmit rate 5.015510 Msps on 1 channels
>>
>> [00:00:14.826000429] Benchmark complete.
>>
>> Benchmark rate summary:
>>
>> Num received samples: 50161056
>>
>> Num dropped samples: 0
>>
>> Num overruns detected: 0
>>
>> Num transmitted samples: 50201888
>>
>> Num sequence errors (Tx): 0
>>
>> Num sequence errors (Rx): 0
>>
>> Num underruns detected: 0
>>
>> Num late commands: 0
>>
>> Num timeouts (Tx): 0
>>
>> Num timeouts (Rx): 0
>>
>> Done!
>> _______________________________________________
>> USRP-users mailing list -- usrp-users@lists.ettus.com
>> To unsubscribe send an email to usrp-users-le...@lists.ettus.com
>>
> _______________________________________________
> USRP-users mailing list -- usrp-users@lists.ettus.com
> To unsubscribe send an email to usrp-users-le...@lists.ettus.com
>
_______________________________________________
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com

Reply via email to