v29_rx_state_s Struct Reference

`#include <v29rx.h>`

## Public Attributes

int | bit_rate
| The bit rate of the modem. Valid values are 4800, 7200 and 9600.
put_bit_func_t | put_bit
| The callback function used to put each bit received.
void * | put_bit_user_data
| A user specified opaque pointer passed to the put_bit routine.
modem_status_func_t | status_handler
| The callback function used to report modem status changes.
void * | status_user_data
| A user specified opaque pointer passed to the status function.
qam_report_handler_t | qam_report
| A callback function which may be enabled to report every symbol's constellation position.
void * | qam_user_data
| A user specified opaque pointer passed to the qam_report callback routine.
float | agc_scaling
| The scaling factor accessed by the AGC algorithm.
float | agc_scaling_save
| The previous value of agc_scaling, needed to reuse old training.
float | eq_delta
| The current delta factor for updating the equalizer coefficients.
complexf_t | eq_coeff [33]
| The adaptive equalizer coefficients.
complexf_t | eq_coeff_save [33]
| A saved set of adaptive equalizer coefficients for use after restarts.
complexf_t | eq_buf [33]
| The equalizer signal buffer.
float | symbol_sync_low [2]
float | symbol_sync_high [2]
float | symbol_sync_dc_filter [2]
float | baud_phase
float | training_error
| A measure of how much mismatch there is between the real constellation, and the decoded symbol positions.
float | carrier_track_p
| The proportional part of the carrier tracking filter.
float | carrier_track_i
| The integral part of the carrier tracking filter.
float | rrc_filter [27]
| The root raised cosine (RRC) pulse shaping filter buffer.
int | rrc_filter_step
| Current offset into the RRC pulse shaping filter buffer.
uint32_t | scramble_reg
| The register for the data scrambler.
uint8_t | training_scramble_reg
| The register for the training scrambler.
int | training_cd
| The current step in the table of CD constellation positions.
int | old_train
| TRUE if the previous trained values are to be reused.
int | training_stage
| The section of the training data we are currently in.
int | training_count
| A count of how far through the current training step we are.
int16_t | last_sample
| The value of the last signal sample, using the a simple HPF for signal power estimation.
int | signal_present
| >0 if a signal above the minimum is present. It may or may not be a V.29 signal.
int | carrier_drop_pending
| Whether or not a carrier drop was detected and the signal delivery is pending.
int | low_samples
| A count of the current consecutive samples below the carrier off threshold.
int16_t | high_sample
| A highest magnitude sample seen.
uint32_t | carrier_phase
| The current phase of the carrier (i.e. the DDS parameter).
int32_t | carrier_phase_rate
| The update rate for the phase of the carrier (i.e. the DDS increment).
int32_t | carrier_phase_rate_save
| The carrier update rate saved for reuse when using short training.
power_meter_t | power
| A power meter, to measure the HPF'ed signal power in the channel.
int32_t | carrier_on_power
| The power meter level at which carrier on is declared.
int32_t | carrier_off_power
| The power meter level at which carrier off is declared.
int | eq_step
| Current read offset into the equalizer buffer.
int | eq_put_step
| Current write offset into the equalizer buffer.
int | eq_skip
| Symbol counter to the next equalizer update.
int | baud_half
| The current half of the baud.
int | total_baud_timing_correction
| The total symbol timing correction since the carrier came up. This is only for performance analysis purposes.
int32_t | start_angles [2]
| Starting phase angles for the coarse carrier aquisition step.
int32_t | angles [16]
| History list of phase angles for the coarse carrier aquisition step.
int | constellation_state
| The position of the current symbol in the constellation, used for differential decoding.
logging_state_t | logging
| Error and flow logging control.

## Detailed Description

V.29 modem receive side descriptor. This defines the working state for a single instance of a V.29 modem receiver.

## Member Data Documentation

## baud_phase

float v29_rx_state_s::baud_phase

Baud phase for symbol sync.

Referenced by v29_rx_restart().

## symbol_sync_dc_filter

float v29_rx_state_s::symbol_sync_dc_filter[2]

DC filter for symbol sync.

Referenced by v29_rx_restart().

## symbol_sync_high

float v29_rx_state_s::symbol_sync_high[2]

High band edge filter for symbol sync.

Referenced by v29_rx_restart().

## symbol_sync_low

float v29_rx_state_s::symbol_sync_low[2]

Low band edge filter for symbol sync.

Referenced by v29_rx_restart().

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

- private/v29rx.h