Skip to content

bladeRF-sink: Floating point values of 1.0 and above cause sign flip #5

@warnes

Description

@warnes

Passing complex values with I or Q of 1.0 or greater to bladeRF-sink causes the transmitted values for both I and Q to flip sign, presumably due to silent overflow of 12-bit values.

I have a bladeRF 2.0 xA9:

$ bladeRF-cli -e info -e version

  Board:                    Nuand bladeRF 2.0 (bladerf2)
  Serial #:                 de69817e887b4743ae2e4a622023f123
  VCTCXO DAC calibration:   0x1d8f
  FPGA size:                301 KLE
  FPGA loaded:              yes
  Flash size:               128 Mbit
  USB bus:                  4
  USB address:              45
  USB speed:                SuperSpeed
  Backend:                  libusb
  Instance:                 0


  bladeRF-cli version:        1.8.0-git-9ad89f65-dirty
  libbladeRF version:         2.4.1-git-9ad89f65-dirty

  Firmware version:           2.4.0-git-a3d5c55f
  FPGA version:               0.11.0 (configured by USB host)

I have connected TX1 connected to RX1 via a 50 Ohm loopback cable and 42 db of attenuators.

With the attached flowgraph (test_txrx.zip) and the settings:

  • TX Gain: 22db
  • Cos Amplitude: 0.999
    everything looks pretty good:
    image

However, when the amplitude of the signal source ("Cos Amplitude") is set to 1.0 or higher, the peaks of the cosine waves are 'flipped':
image
[NB: I'm not sure why the flip doesn't align with the peak of the output samples. Phase offset perhaps?]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions