This class provides an API to communicate with a u-blox GNSS chip. The files here were originally part of the C027_Support library (https://developer.mbed.org/teams/ublox/code/C027_Support/ at revision 138:dafbbf31bf76) but have been separated out, primarily for use on the u-blox C030 board where the cellular interace portion of the C027_Support library will instead be provided through the new mbed Cellular API.

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:
12:a04f7eeece23
Child:
14:4b22bd505b93
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gnss_operations.h	Thu May 31 10:59:11 2018 +0500
@@ -0,0 +1,63 @@
+
+#include "gnss.h"
+
+#define UBX_FRAME_SIZE 8
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/** Enums
+*/
+	enum Command{
+			POWER_ON,
+			POWER_OFF,
+			MON_VER,
+			ENABLE_UBX,
+			RESTART, // mbed conflict with RESET
+			CUSTOMER,
+			AVAILABLE_CONFIG
+		};
+	/** The reset modes
+	*/
+	enum Start{
+			HOT,
+			WARM,
+			COLD,
+			AMOUNT_MODE
+		};
+
+	/** The operation modes
+	*/
+	enum Powermodes{
+			SEMI_CONTINOUS,
+			AGGRESSIVE_CONTINUOS,
+			CONSERVATIVE_CONTINOUS,
+			FULL_POWER,
+			AVAILABLE_OPERATION
+		};
+
+class GnssOperations : public GnssSerial{
+
+	//GnssSerial constructor can be called here to configure different baud rate
+	//Constructor not required at the moment
+	//GnssOperations();
+
+public:
+
+	int enable_ubx_nav_pvt();
+	int disable_ubx_nav_pvt();
+	int enable_ubx_nav5(unsigned int acc);
+	int enable_ubx_odo();
+	int disable_ubx_odo();
+	int enable_ubx_nav_odo();
+	int disable_ubx_nav_odo();
+	int enable_ubx_batch_feature();
+	int disable_ubx_batch_feature();
+	int cfg_batch_feature(tUBX_CFG_BATCH *obj);
+	int cfg_power_mode(int power_mode);
+	int start_mode(int start_mode);
+
+};
+#ifdef __cplusplus
+}
+#endif