I am using a HW with LMS7002 RF transceiver chip. This chip takes IQ values as an input. 1. Can anyone point me to a sample IQ value generator? That I can use to test. 2. What will be the IQ values of a pure sine wave say (1kHz) and how to extract it, say if I try to generate it in software like python or C++? 3. How can I generate a signal that occupies a certain bandwidth say 30 MHz?

  • $\begingroup$ At what IQ data rate? 60 Msps? Random data fed to IQ inputs at 60 Msps will occupy 30 MHz of bandwidth (minus the output anti-alias filter cut-off). Also, the chip spec says the lowest RF frequency supported is 100 kHz, so a 1 kHz IQ sine wave likely won't work. $\endgroup$
    – hotpaw2
    Jan 31, 2020 at 20:00
  • $\begingroup$ Thanks for your response. 1Khz was just an example. 500KHz can be a good starting point for testing. So how can I generate IQ values for a 500 KHz wave? $\endgroup$
    – tue2017
    Jan 31, 2020 at 20:11
  • $\begingroup$ Have a look on this tool: github.com/jgibbard/iqtool $\endgroup$
    – Franquis
    Oct 1, 2020 at 20:40

1 Answer 1


The reason one uses a complex signal at baseband is so that one can distinguish between positive and negative frequency...otherwise, when the signal is mixed to a higher frequency, it will have two identical sidebands, taking up twice the spectrum. Without knowing what you're modulating, I can only offer general advice...take your real baseband signal taking up bandwidth 0..Fmax, and multiply it by exp(2*piiFmax/2*t) (note the 2s cancel out, but the form is more recognizable). This will heterodyne it down to a complex signal occupying -Fmax/2..Fmax/2, and that can be passed to the RF chip.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.