1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-06-13 16:56:52 +00:00

Since applying reduced CED parameters can break PVT continuity due to an increase in the residuals, we disable their usage by default. New conf parameter TelemetryDecoder_1B.use_reduced_ced

This commit is contained in:
Carles Fernandez 2023-09-13 11:48:21 +02:00
parent fd57c34d5d
commit 7e5bc88632
No known key found for this signature in database
GPG Key ID: 4C583C52B0C3877D
4 changed files with 6 additions and 2 deletions

View File

@ -33,6 +33,7 @@ GalileoE1BTelemetryDecoder::GalileoE1BTelemetryDecoder(
DLOG(INFO) << "role " << role; DLOG(INFO) << "role " << role;
tlm_parameters_.SetFromConfiguration(configuration, role); tlm_parameters_.SetFromConfiguration(configuration, role);
tlm_parameters_.enable_reed_solomon = configuration->property(role + ".enable_reed_solomon", false); tlm_parameters_.enable_reed_solomon = configuration->property(role + ".enable_reed_solomon", false);
tlm_parameters_.use_ced = configuration->property(role + ".use_reduced_ced", false);
// make telemetry decoder object // make telemetry decoder object
telemetry_decoder_ = galileo_make_telemetry_decoder_gs(satellite_, tlm_parameters_, 1); // unified galileo decoder set to INAV (frame_type=1) telemetry_decoder_ = galileo_make_telemetry_decoder_gs(satellite_, tlm_parameters_, 1); // unified galileo decoder set to INAV (frame_type=1)
DLOG(INFO) << "telemetry_decoder(" << telemetry_decoder_->unique_id() << ")"; DLOG(INFO) << "telemetry_decoder(" << telemetry_decoder_->unique_id() << ")";

View File

@ -105,7 +105,8 @@ galileo_telemetry_decoder_gs::galileo_telemetry_decoder_gs(
d_enable_reed_solomon_inav(false), d_enable_reed_solomon_inav(false),
d_valid_timetag(false), d_valid_timetag(false),
d_E6_TOW_set(false), d_E6_TOW_set(false),
d_there_are_e6_channels(conf.there_are_e6_channels) d_there_are_e6_channels(conf.there_are_e6_channels),
d_use_ced(conf.use_ced)
{ {
// prevent telemetry symbols accumulation in output buffers // prevent telemetry symbols accumulation in output buffers
this->set_max_noutput_items(1); this->set_max_noutput_items(1);
@ -442,7 +443,7 @@ void galileo_telemetry_decoder_gs::decode_INAV_word(float *page_part_symbols, in
else else
{ {
// If we still do not have ephemeris, check if we have a reduced CED // If we still do not have ephemeris, check if we have a reduced CED
if ((d_band == '1') && !d_first_eph_sent && (d_inav_nav.have_new_reduced_ced() == true)) if ((d_band == '1') && d_use_ced && !d_first_eph_sent && (d_inav_nav.have_new_reduced_ced() == true))
{ {
const std::shared_ptr<Galileo_Ephemeris> tmp_obj = std::make_shared<Galileo_Ephemeris>(d_inav_nav.get_reduced_ced()); const std::shared_ptr<Galileo_Ephemeris> tmp_obj = std::make_shared<Galileo_Ephemeris>(d_inav_nav.get_reduced_ced());
std::cout << "New Galileo E1 I/NAV reduced CED message received in channel " << d_channel << " from satellite " << d_satellite << '\n'; std::cout << "New Galileo E1 I/NAV reduced CED message received in channel " << d_channel << " from satellite " << d_satellite << '\n';

View File

@ -152,6 +152,7 @@ private:
bool d_valid_timetag; bool d_valid_timetag;
bool d_E6_TOW_set; bool d_E6_TOW_set;
bool d_there_are_e6_channels; bool d_there_are_e6_channels;
bool d_use_ced;
}; };

View File

@ -43,6 +43,7 @@ public:
bool dump_crc_stats{false}; // telemetry CRC statistics bool dump_crc_stats{false}; // telemetry CRC statistics
bool enable_navdata_monitor{false}; bool enable_navdata_monitor{false};
bool there_are_e6_channels{false}; bool there_are_e6_channels{false};
bool use_ced{false};
}; };