Got basic QPSK implementation working. Check out the examples. I made one that dumps a file just like the BPSK test (single_thread_qpsk.rs), and this is raw binary I/Q int16 interleaved and can be viewed with python like:
import numpy as np
import matplotlib.pyplot as plt
data = np.fromfile("qpsk_out.bin", dtype=np.int16)
data = data[::2] + 1j * data[1::2]
data = data[:1024]
plt.figure()
plt.subplot(211)
plt.plot(np.real(data))
plt.grid(True)
plt.subplot(212)
plt.plot(np.imag(data))
plt.grid(True)
plt.figure()
plt.psd(data)
plt.grid(True)
plt.show()
And I made another that works with comms-gui to push data for 10 seconds to a display. Try the time domain plot in particular. The waterfall seems broken, that'll have to be fixed.
Got basic QPSK implementation working. Check out the examples. I made one that dumps a file just like the BPSK test (single_thread_qpsk.rs), and this is raw binary I/Q int16 interleaved and can be viewed with python like:
And I made another that works with comms-gui to push data for 10 seconds to a display. Try the time domain plot in particular. The waterfall seems broken, that'll have to be fixed.