GNU Radio's SATNOGS Package
gr::satnogs::ax100_mode6 Class Reference

AX.100 mode 6 decoder. More...

#include <ax100_mode6.h>

Inheritance diagram for gr::satnogs::ax100_mode6:
gr::satnogs::decoder

Public Member Functions

 ax100_mode6 (crc::crc_t crc, whitening::whitening_sptr descrambler, bool ax25_descramble)
 
 ~ax100_mode6 ()
 
decoder_status_t decode (const void *in, int len)
 
void reset ()
 
- Public Member Functions inherited from gr::satnogs::decoder
int unique_id () const
 
 decoder (const std::string &name, const std::string &version, int input_item_size, size_t max_frame_len=8192)
 
virtual ~decoder ()
 
virtual size_t input_multiple () const
 
size_t max_frame_len () const
 
int sizeof_input_item () const
 
std::string name () const
 
std::string version () const
 

Static Public Member Functions

static decoder::decoder_sptr make (crc::crc_t crc=crc::CRC32_C, whitening::whitening_sptr descrambler=whitening::make_ccsds(), bool ax25_descramble=true)
 

Additional Inherited Members

- Static Public Attributes inherited from gr::satnogs::decoder
static int base_unique_id
 
- Protected Member Functions inherited from gr::satnogs::decoder
void incr_nitems_read (size_t nitems)
 
uint64_t nitems_read () const
 

Detailed Description

AX.100 mode 6 decoder.

Mode 6 Decoder for the AX100 modem of GomSpace.

In this particular mode, the modem encapsulates the payload inside an AX.25 frame. The payload is appended with a Castagnoli CRC32, scrambled with a CCSDS scrambler and encoded using the CCSDS compliant Reed Solomon.

This non-sense framing scheme is used mainly for getting data from legacy ham stations receiving and reporting AX.25 frames.

The implementation drops any kind of AX.25 information and does not check the 16-bit CRC, allowing the Reed Solomon to correct any error bits.

Constructor & Destructor Documentation

◆ ax100_mode6()

gr::satnogs::ax100_mode6::ax100_mode6 ( crc::crc_t  crc,
whitening::whitening_sptr  descrambler,
bool  ax25_descramble 
)

◆ ~ax100_mode6()

gr::satnogs::ax100_mode6::~ax100_mode6 ( )

Member Function Documentation

◆ decode()

decoder_status_t gr::satnogs::ax100_mode6::decode ( const void *  in,
int  nitems 
)
virtual

Decodes a buffer of input items contained in the in buffer. This method is called continuously by the frame_decoder. Based on the returned status data, the frame_decoder() instructs properly the GNU Radio scheduler and/or propagates decoded data.

As the number of input items may not enough to decode a frame, each decoder should keep internal state, so decoding can be accomplished after an arbitrary number of calls to this method

Parameters
inthe input items
nitemsthe number of input items contained in the in buffer
Returns
the status of the decoder after the call of this method. For more information refer to decoder_status()

Implements gr::satnogs::decoder.

◆ make()

static decoder::decoder_sptr gr::satnogs::ax100_mode6::make ( crc::crc_t  crc = crc::CRC32_C,
whitening::whitening_sptr  descrambler = whitening::make_ccsds(),
bool  ax25_descramble = true 
)
static

◆ reset()

void gr::satnogs::ax100_mode6::reset ( )
virtual

Resets the internal state of the decoder to the initial defaults

Implements gr::satnogs::decoder.


The documentation for this class was generated from the following file: