changeset 36:71873ade3c5f

capture: make it possible to enable different messages at different rates Not all messages are worth the bandwidth and log file growth at 1Hz. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
author Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
date Wed, 15 Jan 2020 09:21:46 -0500
parents f60a5b0580fe
children dd6139726f34
files capture.c
diffstat 1 files changed, 16 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/capture.c	Tue Jan 14 23:03:07 2020 -0500
+++ b/capture.c	Wed Jan 15 09:21:46 2020 -0500
@@ -156,21 +156,26 @@
 	if (ret)
 		return ret;
 
-	enum ubx_msg_id enable_msgs[] = {
-		UBX_NAV_CLOCK,   /* clock */
-		UBX_NAV_POSECEF, /* ECEF position */
-		UBX_NAV_PVT,     /* position, velocity, time */
-		UBX_NAV_SAT,     /* satellite info */
-		UBX_RXM_RAWX,    /* raw measurement data */
-		UBX_RXM_RLM,     /* SAR RLM */
-		UBX_RXM_SFRBX,   /* raw subframes */
+	struct {
+		enum ubx_msg_id id;
+		int rate;
+	} enable_msgs[] = {
+		{ UBX_NAV_CLOCK,   1 }, /* clock */
+		{ UBX_NAV_POSECEF, 1 }, /* ECEF position */
+		{ UBX_NAV_PVT,     1 }, /* position, velocity, time */
+		{ UBX_NAV_SAT,     1 }, /* satellite info */
+		{ UBX_RXM_RAWX,    1 }, /* raw measurement data */
+		{ UBX_RXM_RLM,     1 }, /* SAR RLM */
+		{ UBX_RXM_SFRBX,   1 }, /* raw subframes */
 	};
 
 	for (i = 0; i < ARRAY_LEN(enable_msgs); i++) {
-		fprintf(stderr, "Enabling %s (%04x)...\n",
-			ubx_msg_name(enable_msgs[i]), enable_msgs[i]);
+		enum ubx_msg_id id = enable_msgs[i].id;
+		int rate = enable_msgs[i].rate;
 
-		ret = enable_ubx_msg(file, enable_msgs[i], ubxport, 1);
+		fprintf(stderr, "Enabling %s (%04x)...\n", ubx_msg_name(id), id);
+
+		ret = enable_ubx_msg(file, id, ubxport, rate);
 		if (ret)
 			return ret;
 	}