diff --git a/sw/airborne/subsystems/gps.h b/sw/airborne/subsystems/gps.h index 4554855932..41728b4a2e 100644 --- a/sw/airborne/subsystems/gps.h +++ b/sw/airborne/subsystems/gps.h @@ -37,10 +37,6 @@ #include GPS_TYPE_H #endif -#define GPS_FIX_NONE 0x00 -#define GPS_FIX_2D 0x02 -#define GPS_FIX_3D 0x03 - #define GpsFixValid() (gps.fix == GPS_FIX_3D) diff --git a/sw/airborne/subsystems/gps/gps_mtk.c b/sw/airborne/subsystems/gps/gps_mtk.c index 3707285244..ae54d20318 100644 --- a/sw/airborne/subsystems/gps/gps_mtk.c +++ b/sw/airborne/subsystems/gps/gps_mtk.c @@ -156,16 +156,7 @@ void gps_mtk_read_message(void) { gps.speed_3d = gps.gspeed; gps.course = (RadOfDeg(MTK_DIY14_NAV_Heading(gps_mtk.msg_buf)))*10; gps.num_sv = MTK_DIY14_NAV_numSV(gps_mtk.msg_buf); - switch (MTK_DIY14_NAV_GPSfix(gps_mtk.msg_buf)) { - case MTK_DIY_FIX_3D: - gps.fix = GPS_FIX_3D; - break; - case MTK_DIY_FIX_2D: - gps.fix = GPS_FIX_2D; - break; - default: - gps.fix = GPS_FIX_NONE; - } + gps.fix = MTK_DIY14_NAV_GPSfix(gps_mtk.msg_buf); gps.tow = MTK_DIY14_NAV_ITOW(gps_mtk.msg_buf);; // FIXME: with MTK DIY 1.4 you do not receive GPS week gps.week = 0; diff --git a/sw/airborne/subsystems/gps/gps_mtk.h b/sw/airborne/subsystems/gps/gps_mtk.h index 904e665171..b28bdaf365 100644 --- a/sw/airborne/subsystems/gps/gps_mtk.h +++ b/sw/airborne/subsystems/gps/gps_mtk.h @@ -28,6 +28,10 @@ /** Includes macros generated from mtk.xml */ #include "mtk_protocol.h" +#define GPS_FIX_NONE 0x01 +#define GPS_FIX_2D 0x02 +#define GPS_FIX_3D 0x03 + #define GPS_MTK_MAX_PAYLOAD 255 struct GpsMtk { @@ -105,10 +109,6 @@ extern bool_t gps_configuring; extern void gps_mtk_read_message(void); extern void gps_mtk_parse(uint8_t c); -#define MTK_DIY_FIX_3D 3 -#define MTK_DIY_FIX_2D 2 -#define MTK_DIY_FIX_NONE 1 - /* * dynamic GPS configuration */ diff --git a/sw/airborne/subsystems/gps/gps_sim.h b/sw/airborne/subsystems/gps/gps_sim.h index 4f84766cc5..3f07b17b9a 100644 --- a/sw/airborne/subsystems/gps/gps_sim.h +++ b/sw/airborne/subsystems/gps/gps_sim.h @@ -3,6 +3,10 @@ #include "std.h" +#define GPS_FIX_NONE 0x00 +#define GPS_FIX_2D 0x02 +#define GPS_FIX_3D 0x03 + #define GPS_NB_CHANNELS 16 extern bool_t gps_available; diff --git a/sw/airborne/subsystems/gps/gps_sim_nps.h b/sw/airborne/subsystems/gps/gps_sim_nps.h index e1dd5fc05d..b5933b88dd 100644 --- a/sw/airborne/subsystems/gps/gps_sim_nps.h +++ b/sw/airborne/subsystems/gps/gps_sim_nps.h @@ -3,6 +3,10 @@ #include "nps_sensors.h" +#define GPS_FIX_NONE 0x00 +#define GPS_FIX_2D 0x02 +#define GPS_FIX_3D 0x03 + #define GPS_NB_CHANNELS 16 extern bool_t gps_available; diff --git a/sw/airborne/subsystems/gps/gps_skytraq.h b/sw/airborne/subsystems/gps/gps_skytraq.h index d7c24bbd3a..655ce3e4e1 100644 --- a/sw/airborne/subsystems/gps/gps_skytraq.h +++ b/sw/airborne/subsystems/gps/gps_skytraq.h @@ -24,6 +24,13 @@ #include "mcu_periph/uart.h" + +#define GPS_FIX_NONE 0x00 +#define GPS_FIX_2D 0x01 +#define GPS_FIX_3D 0x02 +#define GPS_FIX_3D_DGPS 0x03 + + #define SKYTRAQ_SYNC1 0xA0 #define SKYTRAQ_SYNC2 0xA1 diff --git a/sw/airborne/subsystems/gps/gps_ubx.h b/sw/airborne/subsystems/gps/gps_ubx.h index 6929701ec0..6b811993c4 100644 --- a/sw/airborne/subsystems/gps/gps_ubx.h +++ b/sw/airborne/subsystems/gps/gps_ubx.h @@ -38,6 +38,10 @@ #define GPS_NB_CHANNELS 16 +#define GPS_FIX_NONE 0x00 +#define GPS_FIX_2D 0x02 +#define GPS_FIX_3D 0x03 + #define GPS_UBX_MAX_PAYLOAD 255 struct GpsUbx { bool_t msg_available;