Update inter-signal bias (HAL)
- Rename recieverInterSignalBiasNs into interSignalBiasNs, which refers to the sum of receiver ISB and satellite ISB. Bug: 150724332 Test: atest VtsHalGnssV2_1TargetTest Change-Id: Ifae15cb482bc12e793a481fec7847c817ef3c34d
This commit is contained in:
parent
a561f539fc
commit
6668eab9dc
4 changed files with 50 additions and 35 deletions
|
@ -660,7 +660,7 @@ ba5ac712b2a656dc07c83ab4a7a2c2f3bee1bbcb752e8b8ffa9b672f3b5b0728 android.hardwar
|
|||
3541d83adfeac16ee3e45d183a58dffe06012ccb5aa5bcd2e4f6eeae269f69cd android.hardware.gnss@2.1::IGnssCallback
|
||||
737d750017738f0753d13ba01a3310e0161f294b8ae80b3fd63eaa227e9d9c66 android.hardware.gnss@2.1::IGnssConfiguration
|
||||
7913a11206a577b12ade86a7cf3f95c2639cb514d086673f279bf99238c9917e android.hardware.gnss@2.1::IGnssMeasurement
|
||||
0a16e5913e94d995cfcf959a1c6f10b0b8e9dfdb5f45ac6e7244711ddd740272 android.hardware.gnss@2.1::IGnssMeasurementCallback
|
||||
df52e2c39ed701a355b5e0fdbf83fe5fa7d04bfecd715116b39373d46dc3c682 android.hardware.gnss@2.1::IGnssMeasurementCallback
|
||||
6670e7780803a8c696c6391fda5589a334b1b37dc7be9393792ed35035413633 android.hardware.gnss.measurement_corrections@1.1::IMeasurementCorrections
|
||||
956c1576ca0d6f11b42980ef59052062836b6763fe973af6cb709da50787f710 android.hardware.gnss.measurement_corrections@1.1::types
|
||||
ce8dbe76eb9ee94b46ef98f725be992e760a5751073d4f4912484026541371f3 android.hardware.health@2.1::IHealth
|
||||
|
|
|
@ -30,13 +30,13 @@ interface IGnssMeasurementCallback extends @2.0::IGnssMeasurementCallback {
|
|||
*/
|
||||
enum GnssMeasurementFlags : @1.0::IGnssMeasurementCallback.GnssMeasurementFlags {
|
||||
/**
|
||||
* A valid receiver inter-signal bias is stored in the data structure.
|
||||
* A valid full inter-signal bias is stored in the data structure.
|
||||
*/
|
||||
HAS_RECEIVER_ISB = 1 << 16,
|
||||
HAS_FULL_ISB = 1 << 16,
|
||||
/**
|
||||
* A valid receiver inter-signal bias uncertainty is stored in the data structure.
|
||||
* A valid full inter-signal bias uncertainty is stored in the data structure.
|
||||
*/
|
||||
HAS_RECEIVER_ISB_UNCERTAINTY = 1 << 17,
|
||||
HAS_FULL_ISB_UNCERTAINTY = 1 << 17,
|
||||
/**
|
||||
* A valid satellite inter-signal bias is stored in the data structure.
|
||||
*/
|
||||
|
@ -77,42 +77,58 @@ interface IGnssMeasurementCallback extends @2.0::IGnssMeasurementCallback {
|
|||
bitfield<GnssMeasurementFlags> flags;
|
||||
|
||||
/**
|
||||
* The receiver inter-signal bias (ISB) in nanoseconds.
|
||||
* The full inter-signal bias (ISB) in nanoseconds.
|
||||
*
|
||||
* This value is the estimated receiver-side inter-system (different from the constellation
|
||||
* in GnssClock.referenceSignalTypeForIsb) bias and inter-frequency (different from the
|
||||
* carrier frequency in GnssClock.referenceSignalTypeForIsb) bias. The reported receiver ISB
|
||||
* must include signal delays caused by
|
||||
* This value is the sum of the estimated receiver-side and the space-segment-side
|
||||
* inter-system bias, inter-frequency bias and inter-code bias, including
|
||||
*
|
||||
* - Receiver inter-constellation bias
|
||||
* - Receiver inter-frequency bias
|
||||
* - Receiver inter-code bias
|
||||
* - Receiver inter-constellation bias (with respect to the constellation in
|
||||
* GnssClock.referenceSignalTypeForIsb)
|
||||
* - Receiver inter-frequency bias (with respect to the carrier frequency in
|
||||
* GnssClock.referenceSignalTypeForIsb)
|
||||
* - Receiver inter-code bias (with respect to the code type in
|
||||
* GnssClock.referenceSignalTypeForIsb)
|
||||
* - Master clock bias (e.g., GPS-GAL Time Offset (GGTO), GPS-UTC Time Offset
|
||||
* (TauGps), BDS-GLO Time Offset (BGTO)) (with respect to the constellation in
|
||||
* GnssClock.referenceSignalTypeForIsb)
|
||||
* - Group delay (e.g., Total Group Delay (TGD))
|
||||
* - Satellite inter-frequency bias (GLO only) (with respect to the carrier frequency in
|
||||
* GnssClock.referenceSignalTypeForIsb)
|
||||
* - Satellite inter-code bias (e.g., Differential Code Bias (DCB)) (with respect to the
|
||||
* code type in GnssClock.referenceSignalTypeForIsb)
|
||||
*
|
||||
* If a component of the above is already compensated in the provided
|
||||
* GnssMeasurement.receivedSvTimeInNs, then it must not be included in the reported full
|
||||
* ISB.
|
||||
*
|
||||
* The value does not include the inter-frequency Ionospheric bias.
|
||||
*
|
||||
* The receiver ISB of GnssClock.referenceSignalTypeForIsb is defined to be 0.0 nanoseconds.
|
||||
* The full ISB of GnssClock.referenceSignalTypeForIsb is defined to be 0.0 nanoseconds.
|
||||
*/
|
||||
double receiverInterSignalBiasNs;
|
||||
double fullInterSignalBiasNs;
|
||||
|
||||
/**
|
||||
* 1-sigma uncertainty associated with the receiver inter-signal bias in nanoseconds.
|
||||
* 1-sigma uncertainty associated with the full inter-signal bias in nanoseconds.
|
||||
*/
|
||||
double receiverInterSignalBiasUncertaintyNs;
|
||||
double fullInterSignalBiasUncertaintyNs;
|
||||
|
||||
/**
|
||||
* The satellite inter-signal bias in nanoseconds.
|
||||
*
|
||||
* This value is the satellite-and-control-segment-side inter-system (different from the
|
||||
* constellation in GnssClock.referenceSignalTypeForIsb) bias and inter-frequency (different
|
||||
* from the carrier frequency in GnssClock.referenceSignalTypeForIsb) bias, including:
|
||||
* This value is the sum of the space-segment-side inter-system bias, inter-frequency bias
|
||||
* and inter-code bias, including
|
||||
*
|
||||
* - Master clock bias (e.g., GPS-GAL Time Offset (GGTO), GPT-UTC Time Offset (TauGps),
|
||||
* BDS-GLO Time Offset (BGTO))
|
||||
* - Master clock bias (e.g., GPS-GAL Time Offset (GGTO), GPS-UTC Time Offset
|
||||
* (TauGps), BDS-GLO Time Offset (BGTO)) (with respect to the constellation in
|
||||
* GnssClock.referenceSignalTypeForIsb)
|
||||
* - Group delay (e.g., Total Group Delay (TGD))
|
||||
* - Satellite inter-signal bias, which includes satellite inter-frequency bias (GLO only),
|
||||
* and satellite inter-code bias (e.g., Differential Code Bias (DCB)).
|
||||
* - Satellite inter-frequency bias (GLO only) (with respect to the carrier frequency in
|
||||
* GnssClock.referenceSignalTypeForIsb)
|
||||
* - Satellite inter-code bias (e.g., Differential Code Bias (DCB)) (with respect to the
|
||||
* code type in GnssClock.referenceSignalTypeForIsb)
|
||||
*
|
||||
* The receiver ISB of GnssClock.referenceSignalTypeForIsb is defined to be 0.0 nanoseconds.
|
||||
* The satellite ISB of GnssClock.referenceSignalTypeForIsb is defined to be 0.0
|
||||
* nanoseconds.
|
||||
*/
|
||||
double satelliteInterSignalBiasNs;
|
||||
|
||||
|
|
|
@ -98,7 +98,7 @@ TEST_P(GnssHalTest, TestGnssConfigurationExtension) {
|
|||
* TestGnssMeasurementFields:
|
||||
* Sets a GnssMeasurementCallback, waits for a measurement, and verifies
|
||||
* 1. basebandCN0DbHz is valid
|
||||
* 2. ISB fields are valid if HAS_INTER_SIGNAL_BIAS is true.
|
||||
* 2. ISB fields are valid
|
||||
*/
|
||||
TEST_P(GnssHalTest, TestGnssMeasurementFields) {
|
||||
const int kFirstGnssMeasurementTimeoutSeconds = 10;
|
||||
|
@ -126,9 +126,8 @@ TEST_P(GnssHalTest, TestGnssMeasurementFields) {
|
|||
// Verify basebandCn0DbHz is valid.
|
||||
ASSERT_TRUE(measurement.basebandCN0DbHz > 0.0 && measurement.basebandCN0DbHz <= 65.0);
|
||||
|
||||
if (((uint32_t)(measurement.flags & GnssMeasurementFlags::HAS_RECEIVER_ISB) > 0) &&
|
||||
((uint32_t)(measurement.flags & GnssMeasurementFlags::HAS_RECEIVER_ISB_UNCERTAINTY) >
|
||||
0) &&
|
||||
if (((uint32_t)(measurement.flags & GnssMeasurementFlags::HAS_FULL_ISB) > 0) &&
|
||||
((uint32_t)(measurement.flags & GnssMeasurementFlags::HAS_FULL_ISB_UNCERTAINTY) > 0) &&
|
||||
((uint32_t)(measurement.flags & GnssMeasurementFlags::HAS_SATELLITE_ISB) > 0) &&
|
||||
((uint32_t)(measurement.flags & GnssMeasurementFlags::HAS_SATELLITE_ISB_UNCERTAINTY) >
|
||||
0)) {
|
||||
|
@ -143,8 +142,8 @@ TEST_P(GnssHalTest, TestGnssMeasurementFields) {
|
|||
ASSERT_TRUE(carrierFrequencyHz > 0);
|
||||
ASSERT_TRUE(codeType != "");
|
||||
|
||||
ASSERT_TRUE(std::abs(measurement.receiverInterSignalBiasNs) < 1.0e6);
|
||||
ASSERT_TRUE(measurement.receiverInterSignalBiasUncertaintyNs >= 0);
|
||||
ASSERT_TRUE(std::abs(measurement.fullInterSignalBiasNs) < 1.0e6);
|
||||
ASSERT_TRUE(measurement.fullInterSignalBiasUncertaintyNs >= 0);
|
||||
ASSERT_TRUE(std::abs(measurement.satelliteInterSignalBiasNs) < 1.0e6);
|
||||
ASSERT_TRUE(measurement.satelliteInterSignalBiasUncertaintyNs >= 0);
|
||||
}
|
||||
|
|
|
@ -39,12 +39,12 @@ GnssDataV2_1 Utils::getMockMeasurementV2_1() {
|
|||
.v2_0 = gnssDataV2_0.measurements[0],
|
||||
.flags = (uint32_t)(GnssMeasurementFlagsV2_1::HAS_CARRIER_FREQUENCY |
|
||||
GnssMeasurementFlagsV2_1::HAS_CARRIER_PHASE |
|
||||
GnssMeasurementFlagsV2_1::HAS_RECEIVER_ISB |
|
||||
GnssMeasurementFlagsV2_1::HAS_RECEIVER_ISB_UNCERTAINTY |
|
||||
GnssMeasurementFlagsV2_1::HAS_FULL_ISB |
|
||||
GnssMeasurementFlagsV2_1::HAS_FULL_ISB_UNCERTAINTY |
|
||||
GnssMeasurementFlagsV2_1::HAS_SATELLITE_ISB |
|
||||
GnssMeasurementFlagsV2_1::HAS_SATELLITE_ISB_UNCERTAINTY),
|
||||
.receiverInterSignalBiasNs = 10.0,
|
||||
.receiverInterSignalBiasUncertaintyNs = 100.0,
|
||||
.fullInterSignalBiasNs = 30.0,
|
||||
.fullInterSignalBiasUncertaintyNs = 250.0,
|
||||
.satelliteInterSignalBiasNs = 20.0,
|
||||
.satelliteInterSignalBiasUncertaintyNs = 150.0,
|
||||
.basebandCN0DbHz = 25.0,
|
||||
|
|
Loading…
Reference in a new issue