Struct async_dsss_receiver_status_t¶
ClassList > async_dsss_receiver_status_t
One consistent picture of what the receiver is doing, by value. More...
#include <async_dsss_receiver_core.h>
Public Attributes¶
| Type | Name |
|---|---|
| uint64_t | both_down_samples |
| double | car_last_error |
| double | chip_phase |
| double | cn0_dbhz_est |
| int | code_locked |
| double | code_rate |
| double | doppler_hz |
| double | lock_metric |
| double | lock_threshold |
| int | locked |
| double | mpsk_last_error |
| uint64_t | refused_hits |
| int | state |
| uint64_t | state_samples |
Detailed Description¶
The status record of docs/design/async-dsss-receiver.md §11.3: a holder the controller of docs/design/async-dsss-parallel.md §4 reads it on demand, because the exclusions it hands the other receivers are keyed on this receiver's CURRENT code phase, not on its seed, and gets every field from one call between steps() calls, rather than assembling a picture from the one-at-a-time getters. It is a read of live state, not get_state(): the bytes triplet resumes the receiver elsewhere, this describes it here. Its doppler_hz is the live carrier (loop 1 plus loop 2), where get_doppler_hz() reports the estimate the chain was built from. No timestamp: the counters are in input samples, and the holder, which owns the sample clock, stamps them (docs/design/async-dsss-receiver.md §11.3).
Public Attributes Documentation¶
variable both_down_samples¶
Input samples both flags have been down without a break (the release clock); in lost it keeps counting samples since the flags dropped. With reacquire, the symbol lock flag's clock alone.
variable car_last_error¶
Pre-despread Costas residual, rad.
variable chip_phase¶
Code phase, chips: the live Dll's; while refining, the seed's advanced by the clock dilation since (what the hand-over starts from), so a refining receiver's signal can be excluded too.
variable cn0_dbhz_est¶
C/N0 estimate, dB-Hz (the seed's).
variable code_locked¶
Presence flag: the Dll's lock detector.
variable code_rate¶
The Dll's code rate, chips per nominal chip (~1.0 at lock), without the carrier aid; a coasting Dll's is its held rate.
variable doppler_hz¶
Where the emitter is NOW: the whole carrier estimate, Hz loop 1's plus what loop 2 has taken up beyond it (the seed while refining, 0 while searching, frozen where it was when lost). Only as good as locked: with the carrier unlocked, loop 1 free-runs and this wanders.
variable lock_metric¶
cos(2*phi) over the symbols, drives locked.
variable lock_threshold¶
locked declares strictly above this.
variable locked¶
Health flag: the symbol-lock detector.
variable mpsk_last_error¶
Post-despread carrier residual, rad.
variable refused_hits¶
Searching hits refused as seeds by the seed domain (a Doppler at or past fs/2), since create or reset. The search went on over each one's tail.
variable state¶
ASYNC_DSSS_RX_SEARCHING .. _LOST where it is.
variable state_samples¶
Input samples since state was entered.
The documentation for this class was generated from the following file native/inc/doppler/async_dsss_receiver/async_dsss_receiver_core.h