| Message Parameter | Begin Character | Message Type | Message ID | Data Length | Data | Checksum |
| Bytes | 1 | 2 | 2 | 2 | var | 1 |
Both the begin and end characters are defined in the Message enum in [commands.h](../../quad/src/commands/commands.h). Message types
The begin character is defined in the Message enum in [commands.h](../../quad/src/commands/commands.h). Message types
are defined within the MessageTypeID enum in [commands.h](../../quad/src/commands/commands.h). Message ID is managed within the backend
[backend.c](../../groundStation/src/backend/backend.c) and is just a counter that is used in client_recv to number packets. 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.
...
...
@@ -43,7 +43,11 @@ out the return if there is one.
**GUI**
TODO - Matt
The GUI is programmed using QT as such it is written in C++ and uses a thread to do communication with the backend. The main files of the GUI to edit are
[controlworker.h](../../groundStation/gui/MicroCART/controlworker.h) and [mainwindow.h](../../groundStation/gui/MicroCART/mainwindow.h) and the corresponding
source files. To add connectivity to the backend add a slot and signal to the controlworker.h file and add a corresponding signal and slot on the mainwindow.h. Next,
connect the slots and signals in the mainwindow.cpp file and add any additional UI to the mainwindow.ui form.
### Frontend ###
...
...
@@ -156,10 +160,6 @@ The response will be of type RESPSOURCE_ID.
### getnodes ###
**Sent from Ground Station**
//TODO - Does not list in callbacks.c, does this exist?
**Response to Ground Station**
| data index | 0 - 2*N-1 | 2*N - 4*N-1 | 4*N - (< 4096) |