diff --git a/README.md b/README.md
index 366dad88f7c6f097e923b0dc8494bc60db791332..1269d65dd311c2f9201c08bedaa24808cd533517 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,51 @@
 TMTC Client
-====
\ No newline at end of file
+====
+
+## Prerequisites
+Manual installation of crcmod might be needed
+ 1. Install pip if it is not installed yet
+ 2. Install crcmod and all other reqiored packages:
+    Command: pip install crcmod
+    or use IDE (interpreter settings -> pip in PyCharm)
+
+## How To Use
+The script can be used by specifying command line parameters.
+Please run this script with the -h flag
+or without any command line parameters to display options. GUI is work-in-progress
+It might be necessary to set board or PC IP address if using ethernet communication.
+Default values should work normally though.
+
+Example command to test service 17,
+assuming no set client IP (set manually to PC IP Address if necessary) and default board IP 169.254.1.38:
+```sh
+OBSW_UdpClient.py -m 3 -s 17
+```
+Example to run Unit Test:
+```sh
+OBSW_UdpClient.py -m 5
+```
+
+There are four different Modes:
+0. GUI Mode: Experimental mode, also called if no input parameter are specified
+1. Listener Mode: Only Listen for incoming TM packets
+2. SingleCommandMode: Send Single Command repeatedly until answer is received,
+only listen after that
+3. ServiceTestMode: Send all Telecommands belonging to a certain service
+and scan for replies for each telecommand. Listen after that
+4. SoftwareTestMode: Send all services and perform reply scanning like mode 3.
+Listen after that
+5. Unit Test Mode: Performs a unit test which returns a simple OK or NOT OK. This mode
+has the capability to send TCs in bursts, where applicable
+
+The TC timeout factor is mulitplied with the TM timeout to specifiy
+when a TC is sent again, if no reply is received. 
+
+## Ethernet Communication
+If there are problems receiving packets, use the tool Wireshark to track ethernet communication
+for UDP echo packets (requests and response).
+If the packets appear, there might be a problematic firewall setting.
+Please ensure that python.exe UDP packets are not blocked in advanced firewall settings
+and create a rule to allow packets from port 2008.
+
+## Serial Communication
+Work-In-Progress
\ No newline at end of file