diff --git a/README.md b/README.md
index ad22ef6..49ded69 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
-TestON, a testing infastructure by Paxterra
+TestON, a testing infastructure by Paxterra and Open Networking Labs
 =======================================
-TestON is the testing platform that all the ONOS tests are being run on currently. 
+TestON is the testing platform that all the ONOS tests are being run on currently.
 
 
 Code Style
@@ -11,27 +11,27 @@
 Setup
 -------------
 
-0. Pull the git repo from https://github.com/OPENNETWORKINGLAB/OnosSystemTest.git 
+0. Pull the git repo from gerrit or github(Read only mirror)
+
+    $ git clone https://gerrit.onosproject.org/OnosSystemTest
+
+    or
 
     $ git clone https://github.com/OPENNETWORKINGLAB/OnosSystemTest.git
 
-1. Make a symbolic link for TestON on the HOMEDIR 
-   Execute the following from the home directory  
+1. Run the install script
 
-    $ ln -s OnosSystemTest/TestON TestON
+    $ cd OnosSystemTest/TestON
 
-2. Make sure python path is correct 
+    $ install.sh
 
-    $ export PYTHONPATH={PATH TO HOMEDIR}/TestON/
-
-    $ echo $PYTHONPATH 
 
 
 Dependencies
 ------------
-1. ONOS
+1. [ONOS](https://github.com/opennetworkinglab/onos) - The system under test
 
-2. Mininet - Some driver functions rely on a modified version of Mininet. These functions are noted in the mininet driver file. To checkout this branch from your Mininet folder:
+2. [Mininet](https://github.com/mininet/mininet) - A Network Emulator. NOTE: Some driver functions rely on a modified version of Mininet. These functions are noted in the mininet driver file. To checkout this branch from your Mininet folder:
 
     $ git remote add jhall11 https://github.com/jhall11/mininet.git
 
@@ -43,13 +43,7 @@
 
     Note that you may need to run 'sudo make develop' if your mnexec.c file changed when switching branches.
 
-3. Install python packages configObj and pexpect (Note: pexpect 3.3 has a known bug. We recommend using version 3.2 for now). They can be installed as :
-
-    $ sudo pip install configObj
-
-    $ sudo pip install pexpect==3.2
-
-    $ sudo pip install numpy
+3. There are some python modules required by some test cases. These modules should be installed by running the install.sh script.
 
 4. Linc-OE - Some testcases use this to emulate optical devices
 
@@ -83,53 +77,51 @@
     Change the file paths to the appropriate paths
 
 2. The .topo file for each test
- 
+
     Must change the IPs/login/etc to point to the nodes you want to run on
 
 Running TestON
 ------------
 
-1. TestON must be ran from its bin directory 
+1. TestON must be ran from its bin directory
 
     $ cd TestON/bin
 
-2. Launch cli
+2. Run the test
 
-    $ ./cli.py 
-
-3. Run the test 
-
-    teston> run PingallExample
+    $ teston run SAMPstartTemplate_1node
 
 The Tests
 -----------------------------------------------
 
 The tests are all located it TestON/tests/
-Each test has its own folder with the following files: 
+Each test has its own folder with the following files:
 
-1. .ospk file
+1. .ospk file (optional)
 
     - This is written in Openspeak, a word based language developed by Paxterra.
 
-    - It defines the cases and sequence of events for the test 
+    - It defines the cases and sequence of events for the test
+
+    - TestON will automatically generate the .py file based on the .ospk file if the .ospk file exists.
 
 2. .py file
- 
-    - This file serves the same exact function as the openspeak file. 
 
-    - It will only be used if there is NO .ospk file, so if you like python, delete or rename the .ospk file 
- 
-3. .topo file  
+    - This file serves the same exact function as the openspeak file.
 
-    - This defines all the components that TestON creates for that test and includes data such as IP address, login info, and device drivers  
- 
-    - The Components must be defined in this file to be uesd in the openspeak or python files. 
-    
+    - It will only be used if there is NO .ospk file, so if you like python, delete or rename the .ospk file
+
+3. .topo file
+
+    - This defines all the components that TestON creates for that test and includes data such as IP address, login info, and device drivers
+
+    - The Components must be defined in this file to be uesd in the openspeak or python files.
+
 4. .params file
 
-    - Defines all the test-specific variables that are used by the test. 
+    - Defines all the test-specific variables that are used by the test.
 
-    - NOTE: The variable `testcases` which defines which testcases run when the test is ran. 
+    - NOTE: The variable `testcases` defines which testcases run when the test is ran.
 
 Troubleshooting
 -----------------------------------------------
@@ -137,4 +129,4 @@
 
 1. Double check the topo file for that specific test the nodes must be able to run that specific component ( Mininet IP -> machine with mn installed)
 
-2. Enable passwordless logins between your nodes and the TestON node.  
+2. Enable passwordless logins between your nodes and the TestON node.
