daniestevez / gr-satellites

GNU Radio decoder for Amateur satellites
GNU General Public License v3.0
758 stars 156 forks source link

PDU Head/Tail crashes with soft bit PDU #507

Open mondbaron opened 11 months ago

mondbaron commented 11 months ago

I tried to use PDU Head/Tail to retrieve the tail without the ASM of a soft bit PDU stream:

BPSK Demodulator -> Sync and create PDU soft -> PDU Head/Tail -> ...

The sync block finds a packet and afterwards the flowgraph crashes with

***** VERBOSE PDU DEBUG PRINT ******
()
pdu length =       8320 bytes (printing disabled)
************************************
thread_body_wrapper :error: ERROR thread[thread-per-block[22]: <block pdu_head_tail(4)>]: pmt_u8vector_elements: wrong_type #[-1.129528 -1.015640 1.115806 0.741441 -0.994889 ...

Using: GNU Radio Companion 3.10.6.0

daniestevez commented 11 months ago

Indeed PDU Head/Tail currently assumes that the PDU contains an u8vector. Certainly it could be made to to work with any type of PMT uniform vector (and now that I look at the code again, there is no need to copy the data to a second vector cut_msg).

By the way, the output of Sync and create PDU soft does not include the ASM. But a PDU Head/Tail supporting f32vector would be needed if you want to skip headers as well.