Skip to content

Including the ADC frequency offset in the phase compensation #571

Open
@Stockless

Description

@Stockless

ADC frequency offset is not being used in the handling of the ADC phase offset in the get_adc_phase_compensation function.

The proposed ideal solution steps are:

  1. Apply oversampling to the ADC data by calculating additional intermediate
    ADC samples (e.g. oversampling by a factor of 2, that should not be too
    expensive computationally);
  2. apply phase modulation in accordance with the frequency and phase settings
    of the ADC object;
  3. apply pass-band filtering similar to what is done by the hardware;
  4. compensate for the imperfect filter response and discard oversampling.

As a first approach, the recommendation is to implement the step 2 alone, adding a factor exp(-i * 2π * freq_offset * t), where t is the timing of the sample relative to the start of the ADC object.

Thanks to @m-a-x-i-m-z for taking the time to tell us about this error and the previously presented proposed solution.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions