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$– hotpaw2Commented 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$– tue2017Commented Jan 31, 2020 at 20:11
-
$\begingroup$ Have a look on this tool: github.com/jgibbard/iqtool $\endgroup$– FranquisCommented Oct 1, 2020 at 20:40
1 Answer
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.