diff --git a/src/drivers/gps/devices b/src/drivers/gps/devices index fa2177d690..b49a6c2573 160000 --- a/src/drivers/gps/devices +++ b/src/drivers/gps/devices @@ -1 +1 @@ -Subproject commit fa2177d690207e42e0d8c92e9663578340d44fe4 +Subproject commit b49a6c257371abae6e26e0a3e0fc04b963b2f13d diff --git a/src/drivers/gps/gps.cpp b/src/drivers/gps/gps.cpp index d7cdb8f650..2526b303f6 100644 --- a/src/drivers/gps/gps.cpp +++ b/src/drivers/gps/gps.cpp @@ -535,11 +535,12 @@ void GPS::handleInjectDataTopic() bool updated = false; - // Limit maximum number of GPS injections to 6 since usually + // Limit maximum number of GPS injections to 8 since usually // GPS injections should consist of 1-4 packets (GPS, Glonass, BeiDou, Galileo). - // Looking at 6 packets thus guarantees, that at least a full injection + // Looking at 8 packets thus guarantees, that at least a full injection // data set is evaluated. - const size_t max_num_injections = 6; + // Moving Base reuires a higher rate, so we allow up to 8 packets. + const size_t max_num_injections = gps_inject_data_s::ORB_QUEUE_LENGTH; size_t num_injections = 0; do {