I'd like to generate a simple QPSK signal in GNU radio, but so far I haven't been able to get it to perform the way I'd like and I'm not sure if this has to do with some misunderstanding I have about how QPSK works or if I just am not familiar enough with GNU Radio.
Essentially, my conception of QPSK modulation is this - 2 bits are fed into the modulator (4 possible symbols - 00, 01, 10, 11) and, based on which combination of those 2 bits was received, one of 4 possible waveforms is generated (corresponding to +/-.707 +/- .707j). Thus, when using a QPSK modulator in GNU Radio I would expect to see, in the constellation diagram, a square with 4 points at each corner, but instead I see diamonds with thousands of points, even in the absence of any introduced noise. When I print the output of the QPSK modulator to a file sink, I also see more than 4 distinct points.
Is there a way to take a random input stream of 0's and 1's and produce a modulated signal from it, like QPSK, that has only one of four values? It is important for the simulation that I'm running that there are only 4 possible modulation values before noise is added to the system. Also, I will be sending these signals between USRP's, so if there is some way to generate a QPSK signal and transmit it on a carrier frequency between USRP's that doesn't rely on the PSK Mod block (I'm not too familiar with how to implement a raised cosine filter) that would be appreciated.