diff --git a/arduino/Locapack/Locapack.cpp b/arduino/Locapack/Locapack.cpp
index 8631142cfe1fb2b8e58c5e0eb59272e8dcf1ec09..4a425d51453413b383ccb2f7b606ee9e5c6157ba 100644
--- a/arduino/Locapack/Locapack.cpp
+++ b/arduino/Locapack/Locapack.cpp
@@ -220,6 +220,41 @@ int Locapack::createUniversalGnssPacket(universalGnssPacket_t* universalGnssPack
 }
 
 
+int Locapack::createUniversalGnssPacketWithMovementId(universalGnssPacket_t* universalGnssPacket, uint8_t movement_id, uint8_t* buffer)
+{
+	int len = 0;
+	uint8_t payload_buffer[MAX_BUFFER_LEN];
+	int payload_buffer_len = 0;
+
+	payload_buffer_len = makeUniversalGnssPayload(
+		universalGnssPacket->valid_gnss_position,
+		universalGnssPacket->latitude, 
+		universalGnssPacket->longitude, 
+		universalGnssPacket->altitude_present, 
+		universalGnssPacket->altitude, 
+		universalGnssPacket->dop_present, 
+		universalGnssPacket->dop, 
+		payload_buffer);
+
+	// protocol_version_t					PROTOCOL_V1
+	// uint8_t movement_id_presence_flag	false
+	// uint8_t timestamp_presence_flag 		true
+	// packet_type_t packet_type 			PACKET_TYPE_UNIVERSAL_GNSS
+	// uint16_t sequence_number 			(internal sequence_number)
+	// uint64_t timestamp					(millis)
+	// uint8_t movement_id					disabled
+	// device_id_t* device_id				(internal device_id)
+	// uint8_t* payload						the UniversalGnssPacket generated
+	// uint8_t payload_len					the generated packet length
+	// uint8_t* buffer						the given buffer
+
+	len = makePacket(PROTOCOL_V1, true, true, PACKET_TYPE_UNIVERSAL_GNSS, ++_sequence_number_universalGnssPacket, 
+		(uint64_t)millis(), movement_id, &_device_id, payload_buffer, payload_buffer_len, buffer);
+
+	return len;
+}
+
+
 int Locapack::makeLocallyReferencedPayload(float x, float y, bool z_present, float z, bool dop_present, float dop, 
 	bool frameofref_id_present, uint64_t frameofref_id, uint8_t* buffer)
 {
diff --git a/arduino/Locapack/Locapack.h b/arduino/Locapack/Locapack.h
index 7347edd4f64d5438c526e4b9e62b31418b96b745..c4a7710bbc19401b9d5a0ea152f3f96205b3a8df 100644
--- a/arduino/Locapack/Locapack.h
+++ b/arduino/Locapack/Locapack.h
@@ -166,6 +166,12 @@ class Locapack {
 		///
 		int createUniversalGnssPacket(universalGnssPacket_t* gnss, uint8_t* buffer);
 
+		///
+		/// @brief 
+		/// @param 
+		///
+        int createUniversalGnssPacketWithMovementId(universalGnssPacket_t* universalGnssPacket, uint8_t movement_id, uint8_t* buffer);
+
 		///
 		/// @brief 
 		/// @param