case MSG_DOP: // add for true HDOP mjc
Debug("MSG_DOP h_dop=%u h_dop=%u", _buffer.buffer.dop.horizontal_DOP);
p_dop = _buffer.dop.positional_DOP; //mjc for HK_GCS note re-named positional_DOP with extra "al"
h_dop = _buffer.dop.horizontal_DOP; //mjc for HK_GCS
v_dop = _buffer.dop.vertical_DOP; //mjc for MAVLINK_GCS
break;
case MSG_SOL:
Debug("MSG_SOL fix_status=%u fix_type=%u",
_buffer.solution.fix_status,
_buffer.solution.fix_type);
next_fix = (_buffer.solution.fix_status & NAV_STATUS_FIX_VALID) && (_buffer.solution.fix_type == FIX_3D);
if (!next_fix) {
fix = false;
}
num_sats = _buffer.solution.satellites;
hdop = _buffer.solution.position_DOP; // s/b pdop = _buffer.solution.position_DOP see MSG_DOP
break;
--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
struct ubx_nav_status {
uint32_t time; // GPS msToW
uint8_t fix_type;
uint8_t fix_status;
uint8_t differential_status; // logic AND with fix type to display 3D/DGPS Fix status mjc
uint8_t res;
uint32_t time_to_first_fix;
uint32_t uptime; // milliseconds
};
struct ubx_nav_dop { // added new DOP message for for GCS mjc
uint32_t time; // GPS msToW NOT sent mjc
uint16_t geometric_DOP; // g_dop NOT sent mjc
uint16_t positional_DOP; // p_dop sent to GCS Note: New name positional_DOP with extra "al" mjc
uint16_t time_DOP; // t_dop NOT sent mjc
uint16_t vertical_DOP; // v_dop sent to GCS mjc
uint16_t horizontal_DOP; // h_dop sent to GCS Note: actual H_dop value when using UBLOX_DL mjc
uint16_t northing_DOP; // n_dop NOT sent mjc
uint16_t easting_DOP; // e_dop NOT sent mjc
};
<message id="15" name="GPS_LOCK">
<description>GPS lock quality, (with NAV-DOP message enabled on ublox) DOP dilution of position values as returned by the Global Positioning System (GPS). This is a RAW sensor value. See message GLOBAL_POSITION for full position data.</description>
<field type="uint64_t" name="usec">Timestamp (microseconds since UNIX epoch or microseconds since system boot)</field>
<field type="uint8_t" name="fix_type">0-1: NO fix, 2: 2D fix, 3: 3D fix, 4: 3D/DGPS fix, 5: Time only fix. Some applications will not use the value of this field unless it is at least two, so always correctly fill in the fix.</field>
<field type="uint8_t" name="num_sats">Satellites used for fix</field>
<field type="uint8_t" name="dgps_fix">DGPS fix 1= ON 0= Waiting/OFF</field>
<field type="int16_t" name="h_dop">GPS H_DOP</field>
<field type="int16_t" name="v_dop">GPS V_DOP</field>
<field type="int16_t" name="p_dop">GPS P_DOP</field>
</message>