mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-11-14 13:54:57 +00:00
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into next
This commit is contained in:
commit
e7a879b117
@ -8,14 +8,15 @@
|
|||||||
This program is a software-defined receiver which is able to process (that is, to perform detection, synchronization, demodulation and decoding of the navigation message, computation of observables and, finally, computation of position fixes) the following Global Navigation Satellite System's signals:
|
This program is a software-defined receiver which is able to process (that is, to perform detection, synchronization, demodulation and decoding of the navigation message, computation of observables and, finally, computation of position fixes) the following Global Navigation Satellite System's signals:
|
||||||
|
|
||||||
In the L1 band:
|
In the L1 band:
|
||||||
- 🛰 BeiDou B1I (centered at 1561.098 MHz) :white_check_mark:
|
- 🛰 GLONASS L1 C/A (centered at 1602.00 MHz) :white_check_mark:
|
||||||
- 🛰 GPS L1 C/A (centered at 1575.42 MHz) :white_check_mark:
|
- 🛰 GPS L1 C/A (centered at 1575.42 MHz) :white_check_mark:
|
||||||
- 🛰 Galileo E1b/c (centered at 1575.42 MHz) :white_check_mark:
|
- 🛰 Galileo E1b/c (centered at 1575.42 MHz) :white_check_mark:
|
||||||
- 🛰 GLONASS L1 C/A (centered at 1602.00 MHz) :white_check_mark:
|
- 🛰 BeiDou B1I (centered at 1561.098 MHz) :white_check_mark:
|
||||||
|
|
||||||
In the L2 band:
|
In the L2 band:
|
||||||
- 🛰 GPS L2C (centered at 1227.60 MHz) :white_check_mark:
|
- 🛰 BeiDou B3I (centered at 1268.520 MHz) :white_check_mark:
|
||||||
- 🛰 GLONASS L2 C/A (centered at 1246.00 MHz) :white_check_mark:
|
- 🛰 GLONASS L2 C/A (centered at 1246.00 MHz) :white_check_mark:
|
||||||
|
- 🛰 GPS L2C (centered at 1227.60 MHz) :white_check_mark:
|
||||||
|
|
||||||
In the L5 band:
|
In the L5 band:
|
||||||
- 🛰 GPS L5 (centered at 1176.45 MHz) :white_check_mark:
|
- 🛰 GPS L5 (centered at 1176.45 MHz) :white_check_mark:
|
||||||
@ -1128,6 +1129,7 @@ Each channel must be assigned to a GNSS signal, according to the following ident
|
|||||||
| Galileo E1b/c | 1B |
|
| Galileo E1b/c | 1B |
|
||||||
| Glonass L1 C/A | 1G |
|
| Glonass L1 C/A | 1G |
|
||||||
| Beidou B1I | B1 |
|
| Beidou B1I | B1 |
|
||||||
|
| Beidou B3I | B3 |
|
||||||
| GPS L2 L2C(M) | 2S |
|
| GPS L2 L2C(M) | 2S |
|
||||||
| Glonass L2 C/A | 2G |
|
| Glonass L2 C/A | 2G |
|
||||||
| GPS L5 | L5 |
|
| GPS L5 | L5 |
|
||||||
|
@ -643,7 +643,7 @@ void dll_pll_veml_tracking::start_tracking()
|
|||||||
uint32_t preambles_bits[BEIDOU_B1I_PREAMBLE_LENGTH_BITS] = {1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0};
|
uint32_t preambles_bits[BEIDOU_B1I_PREAMBLE_LENGTH_BITS] = {1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0};
|
||||||
for (uint32_t preambles_bit : preambles_bits)
|
for (uint32_t preambles_bit : preambles_bits)
|
||||||
{
|
{
|
||||||
for (uint32_t j = 0; j < d_symbols_per_bit; j++)
|
for (int32_t j = 0; j < d_symbols_per_bit; j++)
|
||||||
{
|
{
|
||||||
if (preambles_bit == 1)
|
if (preambles_bit == 1)
|
||||||
{
|
{
|
||||||
|
@ -78,6 +78,9 @@ dll_pll_veml_tracking_fpga::dll_pll_veml_tracking_fpga(const Dll_Pll_Conf_Fpga &
|
|||||||
|
|
||||||
// Telemetry bit synchronization message port input (mainly for GPS L1 CA)
|
// Telemetry bit synchronization message port input (mainly for GPS L1 CA)
|
||||||
this->message_port_register_in(pmt::mp("preamble_samplestamp"));
|
this->message_port_register_in(pmt::mp("preamble_samplestamp"));
|
||||||
|
// Telemetry message port input
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
|
//todo: Implement the telemetry_to_trk handler in the same way the software version of tracking
|
||||||
|
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_veml = false;
|
d_veml = false;
|
||||||
|
@ -95,6 +95,8 @@ Galileo_E1_Tcp_Connector_Tracking_cc::Galileo_E1_Tcp_Connector_Tracking_cc(
|
|||||||
{
|
{
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
this->set_relative_rate(1.0 / vector_length);
|
this->set_relative_rate(1.0 / vector_length);
|
||||||
|
// Telemetry message port input
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
|
@ -120,6 +120,7 @@ glonass_l1_ca_dll_pll_c_aid_tracking_cc::glonass_l1_ca_dll_pll_c_aid_tracking_cc
|
|||||||
boost::bind(&glonass_l1_ca_dll_pll_c_aid_tracking_cc::msg_handler_preamble_index, this, _1));
|
boost::bind(&glonass_l1_ca_dll_pll_c_aid_tracking_cc::msg_handler_preamble_index, this, _1));
|
||||||
|
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
|
@ -115,6 +115,7 @@ glonass_l1_ca_dll_pll_c_aid_tracking_sc::glonass_l1_ca_dll_pll_c_aid_tracking_sc
|
|||||||
this->set_msg_handler(pmt::mp("preamble_timestamp_s"),
|
this->set_msg_handler(pmt::mp("preamble_timestamp_s"),
|
||||||
boost::bind(&glonass_l1_ca_dll_pll_c_aid_tracking_sc::msg_handler_preamble_index, this, _1));
|
boost::bind(&glonass_l1_ca_dll_pll_c_aid_tracking_sc::msg_handler_preamble_index, this, _1));
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
|
@ -92,7 +92,7 @@ Glonass_L1_Ca_Dll_Pll_Tracking_cc::Glonass_L1_Ca_Dll_Pll_Tracking_cc(
|
|||||||
gr::io_signature::make(1, 1, sizeof(Gnss_Synchro)))
|
gr::io_signature::make(1, 1, sizeof(Gnss_Synchro)))
|
||||||
{
|
{
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
|
@ -117,6 +117,7 @@ glonass_l2_ca_dll_pll_c_aid_tracking_cc::glonass_l2_ca_dll_pll_c_aid_tracking_cc
|
|||||||
boost::bind(&glonass_l2_ca_dll_pll_c_aid_tracking_cc::msg_handler_preamble_index, this, _1));
|
boost::bind(&glonass_l2_ca_dll_pll_c_aid_tracking_cc::msg_handler_preamble_index, this, _1));
|
||||||
|
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
|
@ -114,6 +114,7 @@ glonass_l2_ca_dll_pll_c_aid_tracking_sc::glonass_l2_ca_dll_pll_c_aid_tracking_sc
|
|||||||
this->set_msg_handler(pmt::mp("preamble_timestamp_s"),
|
this->set_msg_handler(pmt::mp("preamble_timestamp_s"),
|
||||||
boost::bind(&glonass_l2_ca_dll_pll_c_aid_tracking_sc::msg_handler_preamble_index, this, _1));
|
boost::bind(&glonass_l2_ca_dll_pll_c_aid_tracking_sc::msg_handler_preamble_index, this, _1));
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
|
@ -92,7 +92,7 @@ Glonass_L2_Ca_Dll_Pll_Tracking_cc::Glonass_L2_Ca_Dll_Pll_Tracking_cc(
|
|||||||
gr::io_signature::make(1, 1, sizeof(Gnss_Synchro)))
|
gr::io_signature::make(1, 1, sizeof(Gnss_Synchro)))
|
||||||
{
|
{
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
|
@ -108,6 +108,8 @@ gps_l1_ca_dll_pll_c_aid_tracking_cc::gps_l1_ca_dll_pll_c_aid_tracking_cc(
|
|||||||
boost::bind(&gps_l1_ca_dll_pll_c_aid_tracking_cc::msg_handler_preamble_index, this, _1));
|
boost::bind(&gps_l1_ca_dll_pll_c_aid_tracking_cc::msg_handler_preamble_index, this, _1));
|
||||||
|
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
|
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
|
@ -105,6 +105,7 @@ gps_l1_ca_dll_pll_c_aid_tracking_sc::gps_l1_ca_dll_pll_c_aid_tracking_sc(
|
|||||||
this->set_msg_handler(pmt::mp("preamble_timestamp_s"),
|
this->set_msg_handler(pmt::mp("preamble_timestamp_s"),
|
||||||
boost::bind(&gps_l1_ca_dll_pll_c_aid_tracking_sc::msg_handler_preamble_index, this, _1));
|
boost::bind(&gps_l1_ca_dll_pll_c_aid_tracking_sc::msg_handler_preamble_index, this, _1));
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
|
@ -82,6 +82,7 @@ Gps_L1_Ca_Dll_Pll_Tracking_GPU_cc::Gps_L1_Ca_Dll_Pll_Tracking_GPU_cc(
|
|||||||
// Telemetry bit synchronization message port input
|
// Telemetry bit synchronization message port input
|
||||||
this->message_port_register_in(pmt::mp("preamble_timestamp_s"));
|
this->message_port_register_in(pmt::mp("preamble_timestamp_s"));
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
|
@ -106,7 +106,7 @@ Gps_L1_Ca_Kf_Tracking_cc::Gps_L1_Ca_Kf_Tracking_cc(
|
|||||||
// Telemetry bit synchronization message port input
|
// Telemetry bit synchronization message port input
|
||||||
this->message_port_register_in(pmt::mp("preamble_timestamp_s"));
|
this->message_port_register_in(pmt::mp("preamble_timestamp_s"));
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_order = order;
|
d_order = order;
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
|
@ -87,6 +87,7 @@ Gps_L1_Ca_Tcp_Connector_Tracking_cc::Gps_L1_Ca_Tcp_Connector_Tracking_cc(
|
|||||||
gr::io_signature::make(1, 1, sizeof(Gnss_Synchro)))
|
gr::io_signature::make(1, 1, sizeof(Gnss_Synchro)))
|
||||||
{
|
{
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
|
this->message_port_register_in(pmt::mp("telemetry_to_trk"));
|
||||||
// initialize internal vars
|
// initialize internal vars
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
|
Loading…
Reference in New Issue
Block a user