Hey, I having been trying to debug my demodulator for a few days now and in due process i receive the following error message.
ValueError: itemsize mismatch : dbpsk_demod(5):0 using 1, sub_ff(15):0 using 4.
Now there are two things that i observed. 1) With the connect statement of these two at hand , sub_ff is expecting 4 float bytes which is only connected to "1 byte/sample" output by the dbpsk_demod block.
2) The output of the dbpsk_demod block (according to the line -- > io_sig_out = gr.io_signature(1,1,gr.sizeof_char) .. so its a dbpsk_demod_complex->character conversion where as the sub_ff is a "float --> float " .
My question is will a custom "gr_dbpsk_demod_cf" with a cosine function(that possibly uses a certain kind of cosine table) be useful to do the following :
1) keep the constellation in check (i.e 1 bit/symbol) at 0 and 180 degrees respectively.
2) ofcourse convert a complex to float. 3) How effective would such a cpp block be as opposed to a full fledged python block ?