From: Tomas Jura <[email protected]>

---
 plugins/mbm/mm-broadband-modem-mbm.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/plugins/mbm/mm-broadband-modem-mbm.c 
b/plugins/mbm/mm-broadband-modem-mbm.c
index dc480f8..bfd26da 100644
--- a/plugins/mbm/mm-broadband-modem-mbm.c
+++ b/plugins/mbm/mm-broadband-modem-mbm.c
@@ -45,7 +45,7 @@
 #include "mm-iface-modem-location.h"
 
 /* sets the interval in seconds on how often the card emits the NMEA sentences 
*/
-#define MBM_GPS_NMEA_INTERVAL   "5"
+#define MBM_GPS_NMEA_INTERVAL   5
 
 static void iface_modem_init (MMIfaceModem *iface);
 static void iface_modem_3gpp_init (MMIfaceModem3gpp *iface);
@@ -1432,15 +1432,19 @@ parent_enable_location_gathering_ready 
(MMIfaceModemLocation *self,
     }
 
     if (start_gps) {
+        gchar *s_gps_interval = getenv("GPS_INTERVAL");
+        gchar *buf = g_strdup_printf("AT*E2GPSCTL=1,%d,0",
+                                     s_gps_interval ? 
CLAMP(atoi(s_gps_interval),1,60) : MBM_GPS_NMEA_INTERVAL );
         mm_base_modem_at_command_full (MM_BASE_MODEM (self),
                                        mm_base_modem_peek_port_primary 
(MM_BASE_MODEM (self)),
-                                       "AT*E2GPSCTL=1," MBM_GPS_NMEA_INTERVAL 
",0",
+                                       buf,
                                        3,
                                        FALSE,
                                        FALSE, /* raw */
                                        NULL, /* cancellable */
                                        (GAsyncReadyCallback)gps_enabled_ready,
                                        ctx);
+        g_free(buf);
         return;
     }
 
-- 
2.7.0

_______________________________________________
ModemManager-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/modemmanager-devel

Reply via email to