Open Mas313 opened 1 month ago
The entire frame, or TDMA slot, is 256 bit long, including preamble, crc, bit stuffing etc. Payload is 168 bit an holds all the AVDM data. NRZI encoder is in bitstring_to_frame_impl.cc, function void bitstring_to_frame_impl::nrz_to_nrzi(char *data, int length).
Thanks for the reply. I have observed that nrz_to_nrzi()
function generates NRZI but not bipolar 1s
and -1s
its like 0s
and 1s
. Does't GMSK Mod needs 1 & -1
bits for GMSK waveform shaping to limit its bandwidth.
Thanks
The GNURadio GMSK modulator expects packed unsigned bytes in (0, 1). Vector modulator expects unpacked signed bytes in (-1, 1). Packing for GMSK is done in void bitstring_to_frame_impl::byte_packing(char input_frame, unsigned char out_byte, unsigned int len).
Thanks for the reply. I have genrated nrzi data file as per your procedure/code and used gnuradio with plutosdr for gmsk generation 'GMSK Mod' block with file source connected. The result is not correct, might be i have done something wrong, the generated signal occupy more than 1 Mhz of bandwidth(used sdrsharp), For AIS bandwidthis to be within AIS limits within 15-25Khz for GMSK. Have you observed any such behaviour
Hi, The Variable ID sentence in the grc file holds 168 bit payload but AIS specifications says it to be 256 bits.
My Questions for better understanding are following, might be everything is already there but i am not getting it.
Thanks