Skip to content

Commit 8a33fb9

Browse files
authored
Merge pull request #200 from sparkfun/release_candidate
v2.2.24
2 parents 3416a31 + 6395e8f commit 8a33fb9

File tree

8 files changed

+41
-29
lines changed

8 files changed

+41
-29
lines changed

examples/Dead_Reckoning/Example4_vehicleDynamics/Example4_vehicleDynamics.ino

+28-16
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,9 @@
1616
SparkFun Qwiic Breadboard Jumper (https://www.sparkfun.com/products/14425)
1717
Open the serial monitor at 115200 baud to see the output
1818
19-
After calibrating the module and securing it to your vehicle such that it's
20-
stable within 2 degrees, and the board is oriented correctly with regards to
21-
the vehicle's frame, you can now read the vehicle's "attitude". The attitude
22-
includes the vehicle's heading, pitch, and roll. You can also check the
23-
accuracy of those readings.
19+
getEsfAlignment (UBX-ESF-ALG) reports the status and alignment angles of the IMU within the vehicle.
20+
These define the rotation of the IMU frame within the vehicle (installation frame) - not the heading
21+
of the vehicle itself. The vehicle attitude solution is reported separately by getNAVATT (UBX-NAV-ATT).
2422
2523
*/
2624

@@ -45,6 +43,8 @@ void setup()
4543

4644
myGNSS.setI2COutput(COM_TYPE_UBX); //Set the I2C port to output UBX only (turn off NMEA noise)
4745

46+
myGNSS.setESFAutoAlignment(true); //Enable Automatic IMU-mount Alignment
47+
4848
if (myGNSS.getEsfInfo()){
4949

5050
Serial.print(F("Fusion Mode: "));
@@ -63,20 +63,32 @@ void setup()
6363
void loop()
6464
{
6565
// ESF data is produced at the navigation rate, so by default we'll get fresh data once per second
66-
if (myGNSS.getEsfAlignment()) // Poll new ESF ALG data
66+
if (myGNSS.getEsfAlignment()) // Poll new ESF ALG data
6767
{
68-
Serial.print(F("Status: "));
69-
Serial.print(myGNSS.packetUBXESFALG->data.flags.bits.status);
68+
Serial.print(F("IMU-Mount Alignment: On/Off: "));
69+
Serial.print(myGNSS.packetUBXESFALG->data.flags.bits.autoMntAlgOn);
70+
Serial.print(F(" Status: "));
71+
Serial.print(myGNSS.packetUBXESFALG->data.flags.bits.status);
7072
Serial.print(F(" Roll: "));
7173
Serial.print(myGNSS.getESFroll(), 2); // Use the helper function to get the roll in degrees
72-
Serial.print(F(" Pitch: "));
73-
Serial.print(myGNSS.getESFpitch(), 2); // Use the helper function to get the pitch in degrees
74-
Serial.print(F(" Heading: "));
75-
Serial.print(myGNSS.getESFyaw(), 2); // Use the helper function to get the yaw in degrees
76-
Serial.print(F(" Errors: "));
77-
Serial.print(myGNSS.packetUBXESFALG->data.error.bits.tiltAlgError);
78-
Serial.print(myGNSS.packetUBXESFALG->data.error.bits.yawAlgError);
79-
Serial.println(myGNSS.packetUBXESFALG->data.error.bits.angleError);
74+
Serial.print(F(" Pitch: "));
75+
Serial.print(myGNSS.getESFpitch(), 2); // Use the helper function to get the pitch in degrees
76+
Serial.print(F(" Yaw: "));
77+
Serial.print(myGNSS.getESFyaw(), 2); // Use the helper function to get the yaw in degrees
78+
Serial.print(F(" Errors: "));
79+
Serial.print(myGNSS.packetUBXESFALG->data.error.bits.tiltAlgError);
80+
Serial.print(myGNSS.packetUBXESFALG->data.error.bits.yawAlgError);
81+
Serial.println(myGNSS.packetUBXESFALG->data.error.bits.angleError);
82+
}
83+
84+
if (myGNSS.getNAVATT()) // Poll new NAV ATT data
85+
{
86+
Serial.print(F("Vehicle Attitude: Roll: "));
87+
Serial.print(myGNSS.getATTroll(), 2); // Use the helper function to get the roll in degrees
88+
Serial.print(F(" Pitch: "));
89+
Serial.print(myGNSS.getATTpitch(), 2); // Use the helper function to get the pitch in degrees
90+
Serial.print(F(" Heading: "));
91+
Serial.println(myGNSS.getATTheading(), 2); // Use the helper function to get the heading in degrees
8092
}
8193

8294
delay(250);

examples/Example30_NEO-D9S/Example30_NEO-D9S.ino

+4-4
Original file line numberDiff line numberDiff line change
@@ -45,17 +45,17 @@ void printRXMPMP(UBX_RXM_PMP_data_t *pmpData)
4545
Serial.print(F("numBytesUserData : "));
4646
Serial.println(pmpData->numBytesUserData);
4747

48-
Serial.print(F("serviceIdentifier: "));
49-
Serial.println(pmpData->serviceIdentifier);
48+
Serial.print(F("serviceIdentifier: 0x"));
49+
Serial.println(pmpData->serviceIdentifier, HEX);
5050

5151
Serial.print(F("uniqueWordBitErrors: "));
5252
Serial.println(pmpData->uniqueWordBitErrors);
5353

5454
Serial.print(F("fecBits: "));
5555
Serial.println(pmpData->fecBits);
5656

57-
Serial.print(F("ebno: "));
58-
Serial.println(pmpData->ebno);
57+
Serial.print(F("ebno (dB): "));
58+
Serial.println((double)pmpData->ebno / 8, 3); //Convert ebno to dB
5959

6060
Serial.println();
6161
}

examples/ZED-F9P/Example18_PointPerfectClient/Example18_PointPerfectClient.ino

+1-1
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ void printPVTdata(UBX_NAV_PVT_data_t *ubxDataStruct)
127127
void printRXMCOR(UBX_RXM_COR_data_t *ubxDataStruct)
128128
{
129129
Serial.print(F("UBX-RXM-COR: ebno: "));
130-
Serial.print(ubxDataStruct->ebno);
130+
Serial.print((double)ubxDataStruct->ebno / 8, 3); //Convert to dB
131131

132132
Serial.print(F(" protocol: "));
133133
if (ubxDataStruct->statusInfo.bits.protocol == 1)

examples/ZED-F9P/Example19_LBand_Corrections_with_NEO-D9S/Example19_LBand_Corrections_with_NEO-D9S.ino

+1-1
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ void printPVTdata(UBX_NAV_PVT_data_t *ubxDataStruct)
148148
void printRXMCOR(UBX_RXM_COR_data_t *ubxDataStruct)
149149
{
150150
Serial.print(F("UBX-RXM-COR: ebno: "));
151-
Serial.print(ubxDataStruct->ebno);
151+
Serial.print((double)ubxDataStruct->ebno / 8, 3); //Convert to dB
152152

153153
Serial.print(F(" protocol: "));
154154
if (ubxDataStruct->statusInfo.bits.protocol == 1)

examples/ZED-F9P/Example19_LBand_Corrections_with_NEO-D9S/secrets.h

+4-4
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@
1818

1919
const uint8_t currentKeyLengthBytes = 16;
2020
const char currentDynamicKey[] = "<ADD YOUR L-Band or L-Band + IP DYNAMIC KEY HERE>";
21-
const uint16_t currentKeyGPSWeek = 2192; // Update this when you add new keys
22-
const uint32_t currentKeyGPSToW = 518400;
21+
const uint16_t currentKeyGPSWeek = 2254; // Update this when you add new keys
22+
const uint32_t currentKeyGPSToW = 0;
2323

2424
const uint8_t nextKeyLengthBytes = 16;
2525
const char nextDynamicKey[] = "<ADD YOUR L-Band or L-Band + IP DYNAMIC KEY HERE>";
26-
const uint16_t nextKeyGPSWeek = 2196; // Update this when you add new keys
27-
const uint32_t nextKeyGPSToW = 518400;
26+
const uint16_t nextKeyGPSWeek = 2258; // Update this when you add new keys
27+
const uint32_t nextKeyGPSToW = 0;

examples/ZED-F9P/Example20_PMP_with_L-Band_Keys_via_MQTT/Example20_PMP_with_L-Band_Keys_via_MQTT.ino

+1-1
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ void printPVTdata(UBX_NAV_PVT_data_t *ubxDataStruct)
161161
void printRXMCOR(UBX_RXM_COR_data_t *ubxDataStruct)
162162
{
163163
Serial.print(F("UBX-RXM-COR: ebno: "));
164-
Serial.print(ubxDataStruct->ebno);
164+
Serial.print((double)ubxDataStruct->ebno / 8, 3); //Convert to dB
165165

166166
Serial.print(F(" protocol: "));
167167
if (ubxDataStruct->statusInfo.bits.protocol == 1)

examples/ZED-F9P/Example22_QZSSL6_Corrections_with_NEO-D9C/Example22_QZSSL6_Corrections_with_NEO-D9C.ino

+1-1
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ void printPVTdata(UBX_NAV_PVT_data_t *ubxDataStruct)
172172
void printRXMCOR(UBX_RXM_COR_data_t *ubxDataStruct)
173173
{
174174
Serial.print(F("UBX-RXM-COR: ebno: "));
175-
Serial.print(ubxDataStruct->ebno);
175+
Serial.print((double)ubxDataStruct->ebno / 8, 3); //Convert to dB
176176

177177
Serial.print(F(" protocol: "));
178178
if (ubxDataStruct->statusInfo.bits.protocol == 1)

library.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name=SparkFun u-blox GNSS Arduino Library
2-
version=2.2.22
2+
version=2.2.24
33
author=SparkFun Electronics <[email protected]>
44
maintainer=SparkFun Electronics <sparkfun.com>
55
sentence=Library for I2C, Serial and SPI Communication with u-blox GNSS modules<br/><br/>

0 commit comments

Comments
 (0)