From ccc1460d1581d8d6055079a5a902b93ab408f6a4 Mon Sep 17 00:00:00 2001
From: Matthew Kelly <mkelly2@iastate.edu>
Date: Fri, 20 Oct 2017 18:39:28 -0500
Subject: [PATCH] Started packet markdown documentation.

---
 documentation/groundStation/packets.md | 13 +++++++++++++
 1 file changed, 13 insertions(+)
 create mode 100644 documentation/groundStation/packets.md

diff --git a/documentation/groundStation/packets.md b/documentation/groundStation/packets.md
new file mode 100644
index 000000000..fdb0e8eac
--- /dev/null
+++ b/documentation/groundStation/packets.md
@@ -0,0 +1,13 @@
+The MicroCART project uses custom packets to communicate with the quad. This may seem complex at first
+but the structure of all packets is the same it is just the way the data is formatted that changes 
+between packets. The basic structure is shown below. 
+
+| Index             | 0               | 1            | 2          | 3           | 4    | 5        | 6             |
+|:-----------------:|:---------------:|:------------:|:----------:|:-----------:|:----:|:--------:|:-------------:|
+| Message Parameter | Begin Character | Message Type | Message ID | Data Length | Data | Checksum | End Character |
+| Bytes             | 1               | 2            | 2          | 2           | var  | 1        | 1             |
+
+Both the begin and end characters are defined in (communication.h)[]. Message types are defined within an enum in
+(commands.h)[]. Message ID is managed within the backend and is just a counter that is defined in (backend.c)[] of. 
+Data length varies with the command that is being sent, but the length of a command is constant. The data is sent 
+in a specific format set by commands. Lastly, checksum is computed within (backend.c)[].
\ No newline at end of file
-- 
GitLab