Base Modem

Inheritance diagram of hermespy.modem.modem.BaseModem
class BaseModem(encoding=None, waveform=None, frame_generator=None, seed=None)[source]

Bases: Generic[CWT], RandomNode

Base class for wireless modems transmitting or receiving information over devices.

Configure a TransmittingModem, ReceivingModem or the convenience wrappers SimplexLink and DuplexModem implementing this abstract interface.

Parameters:
  • encoding (EncoderManager, optional) – Bit coding configuration. Encodes communication bit frames during transmission and decodes them during reception.

  • waveform (CWT, optional) – The waveform to be transmitted by this modem.

  • seed (int, optional) – Seed used to initialize the pseudo-random number generator.

property encoder_manager: EncoderManager

Description of the modem’s forward error correction.

Refer to Error Correction for further information.

property frame_duration: float

Duration of a single communication frame in seconds.

Convenience wrapper for the waveform frame_duration property.

property frame_generator: FrameGenerator
property samples_per_frame: int

Number of discrete-time samples per processed communication frame.

Convenience wrapper for the waveform sampling_rate property.

property sampling_rate: float

Sampling rate of the processed waveforms in Hz.

Convenience wrapper for the waveform sampling_rate property.

property symbol_duration: float

Duration of a single communication symbol in seconds.

Convenience wrapper for the waveform symbol_duration property.

property waveform: CWT | None

Description of the communication waveform emitted by this modem.

The only mandatory attribute required to transmit or receive over a modem.