Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: example-ublox-at-cellular-interface-ext example-low-power-sleep example-C030-out-of-box-demo example-C030-out-of-box-demo ... more
Revision 29:54fd002f2376, committed 2018-12-17
- Comitter:
- fahim.alavi@u-blox.com
- Date:
- Mon Dec 17 12:11:07 2018 +0500
- Parent:
- 28:8852ebda4e8f
- Child:
- 30:de9fcdbc4d06
- Commit message:
- Decoding and decoding status of NAV-SAT added
Changed in this revision
| gnss.cpp | Show annotated file Show diff for this revision Revisions of this file |
| gnss.h | Show annotated file Show diff for this revision Revisions of this file |
--- a/gnss.cpp Wed Dec 12 18:42:54 2018 +0500
+++ b/gnss.cpp Mon Dec 17 12:11:07 2018 +0500
@@ -331,7 +331,11 @@
}
break;
case 0x03: {
- return_value = NAV_STATUS;
+ return_value = UBX_NAV_STATUS;
+ }
+ break;
+ case 0x35: {
+ return_value = UBX_NAV_SAT;
}
break;
default:
@@ -554,6 +558,22 @@
return return_decoded_msg;
}
+
+tUBX_NAV_SAT GnssParser::decode_ubx_nav_sat_msg(char *buf, int length) {
+ tUBX_NAV_SAT return_decoded_msg;
+ uint8_t index = UBX_PAYLOAD_INDEX;
+ uint8_t numberSVs = buf[index + 5];
+
+ if(length == (UBX_FRAME_SIZE + 8 + (12*numberSVs))) {
+ return_decoded_msg.status = true;
+ }
+ else {
+ return_decoded_msg.status = false;
+ }
+
+ return return_decoded_msg;
+}
+
int GnssParser::ubx_request_batched_data(bool sendMonFirst) {
unsigned char ubx_log_retrieve_batch[]={0x00, 0x00, 0x00, 0x00};
--- a/gnss.h Wed Dec 12 18:42:54 2018 +0500
+++ b/gnss.h Mon Dec 17 12:11:07 2018 +0500
@@ -50,7 +50,7 @@
enum eUBX_MSG_CLASS {NAV = 0x01, ACK = 0x05, LOG = 0x21};
-enum eUBX_MESSAGE {UBX_LOG_BATCH, UBX_ACK_ACK, UBX_ACK_NAK, UBX_NAV_ODO, UBX_NAV_PVT, NAV_STATUS, UNKNOWN_UBX};
+enum eUBX_MESSAGE {UBX_LOG_BATCH, UBX_ACK_ACK, UBX_ACK_NAK, UBX_NAV_ODO, UBX_NAV_PVT, UBX_NAV_STATUS, UBX_NAV_SAT, UNKNOWN_UBX};
typedef struct UBX_ACK_ACK {
uint8_t msg_class;
@@ -110,6 +110,11 @@
}tUBX_NAV_STATUS;
+typedef struct UBX_NAV_SAT{
+ bool status;
+
+}tUBX_NAV_SAT;
+
/** Basic GNSS parser class.
*/
class GnssParser
@@ -272,6 +277,12 @@
*/
tUBX_NAV_STATUS decode_ubx_nav_status_msg(char *);
+ /** Method to parse contents of UBX_NAV_SAT and return decoded msg
+ * @param buff the UXB message, int length
+ * @return tUBX_NAV_SAT
+ */
+ tUBX_NAV_SAT decode_ubx_nav_sat_msg(char *, int);
+
/** Method to send UBX LOG-RETRIEVEBATCH msg. This message is used to request batched data.
* @param bool
* @return int