From f8aae1c439cd3cbee5268d49503da643d95c1876 Mon Sep 17 00:00:00 2001
From: zeisele <zeisele@iastate.edu>
Date: Mon, 21 Mar 2022 04:09:11 +0100
Subject: [PATCH] id problem fix

---
 groundStation/src/backend/backend.c | 3 +++
 groundStation/src/backend/packet.c  | 3 +--
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/groundStation/src/backend/backend.c b/groundStation/src/backend/backend.c
index 86130046e..990249069 100644
--- a/groundStation/src/backend/backend.c
+++ b/groundStation/src/backend/backend.c
@@ -396,6 +396,9 @@ void sendVrpnPacket(struct ucart_vrpn_TrackerData *info) {
         warnx("Big problems. sendVrpnPacket . EncodeUpdate");
         return;
     }
+    if(currMessageID > 65535) {
+       currMessageID = 0; 
+    }
     m.msg_id = currMessageID++;
 
     ssize_t psize;
diff --git a/groundStation/src/backend/packet.c b/groundStation/src/backend/packet.c
index 7dcd2a635..020827e58 100644
--- a/groundStation/src/backend/packet.c
+++ b/groundStation/src/backend/packet.c
@@ -20,8 +20,7 @@ ssize_t EncodePacket(
 	packet[BEGIN] = BEGIN_CHAR;
 	packet[MTYPE_L] = LSByte16(m->msg_type);
 	packet[MTYPE_H] = MSByte16(m->msg_type);
-	packet[ID_L] = LSByte16(m->msg_id);
-	packet[ID_H] = MSByte16(m->msg_id);
+	memcpy(packet[ID_L], m->msg_id, 2);
 	packet[DLEN_L] = LSByte16(m->data_len);
 	packet[DLEN_H] = MSByte16(m->data_len);
 	memcpy(&packet[HDR_SIZE], data, m->data_len);
-- 
GitLab