diff --git a/python/adapters/README.md b/python/adapters/README.md
index 3eda078..1ab1c4f 100644
--- a/python/adapters/README.md
+++ b/python/adapters/README.md
@@ -1,18 +1,20 @@
-# How to Build and Develop a Voltha Adapter
+# How to Build and Run a Voltha Adapter
 
-The build and development environment of a Voltha Adapter is left to the developer's choice.  
+The build and development environment of a Voltha Adapter is left to the developer's choice.  The 
+environment used below is the macOS. 
 
 ### Build
 
-You can build the Voltha Adapter by:
+To build the adapters (so far Ponsim OLT and Ponsim ONU adapters) and dependent containers follow 
+the commands below. The base directory is voltha-go. 
 
 ```
-cd adapters
-. env.sh
-make build
+cd python
+source env.sh
+VOLTHA_BUILD=docker make build
 ```
 
-The above has generates a few docker images. An example is below:
+The above build command generates a few docker images. An example is below:
 
 ```
 $ docker images
@@ -20,14 +22,85 @@
 voltha-adapter-ponsim-onu   latest                                     3638b16b5262        36 seconds ago      774MB
 voltha-adapter-ponsim-olt   latest                                     9e98a3a8e1aa        58 seconds ago      775MB
 voltha-base                 latest                                     40ed93942a6a        23 minutes ago      771MB
-voltha-rw-core              latest                                     648be4bc594a        About an hour ago   29.1MB
 voltha-protos               latest                                     d458a391cc81        12 days ago         2.66MB
+voltha-protoc               latest                                     a67dda73f695        2 months ago        1.41GB
 ```
 
-### Run the ponsim adapters 
+Now build the Voltha Core from the voltha-go directory as well as the CLI image (used below for provisioning)
+```
+make rw_core
+```
 
-The simplest way to run the containerized adapters is using the docker compose command:
+This will create the following images:
+```
+REPOSITORY                   TAG                                        IMAGE ID            CREATED             SIZE
+voltha-rw-core               latest                                     eab4b288adea        47 seconds ago      36.8MB
+voltha-cli                   latest                                     a0a4b8f25373        About an hour ago   827MB
+```
+
+### Run the Adapters locally (development environment)
+
+We will use Ponsim as the example.  Ponsim has two containers, one being the Ponsim OLT Adapter and 
+the other one the Ponsim ONU Adapter. We will use the docker-compose command to run these containers locally 
+as it is straight forward.
+
+#### Setup
+Since an adapter communicates with the Voltha Core via the Kafka bus and uses the Etcd KV store then we 
+need to have these containers running as well.   There is no dependency in the order in which they need to 
+start as an adapter must be able to handle this scenario. 
+ 
+First run the dependent containers from the voltha-go directory. In the commands below, replace the IP 
+with the IP of the host.
+```
+DOCKER_HOST_IP=<Host IP> docker-compose -f compose/docker-compose-zk-kafka-test.yml up -d
+DOCKER_HOST_IP=<Host IP> docker-compose -f compose/docker-compose-etcd.yml up -d
+DOCKER_HOST_IP=<Host IP> docker-compose -f compose/rw_core.yml up -d
+DOCKER_HOST_IP=<Host IP> docker-compose -f compose/cli.yml up -d
+```
+#### Running the Ponsim Adapters
+
+Start the Ponsim OLT and ONU adapters
+```
+DOCKER_HOST_IP=<Host IP> docker-compose -f compose/adapters-ponsim.yml up -d
+```
+
+Start also the Ponsim OLT and ONU containers.  We are using only PonsimV2. You may want to change the 
+image names from the yml files below if you are pulling the Ponsim OLT and ONU images from somewhere else.
 
 ```
-docker-compose -f ../compose/adapters-ponsim.yml up -d
+docker-compose -f compose/ponsim_olt.yml up -d
+docker-compose -f compose/ponsim_onu.yml up -d
 ```
+
+#### Provisioning a device
+
+First get the IP address of the Ponsim OLT container by using the docker inspect command.
+
+Now, start the CLI.
+
+```$xslt
+ssh -p 5022 voltha@localhost
+```
+
+Perform the provisioning
+
+```$xslt
+preprovision_olt -t ponsim_olt -H <IP of Ponsim OLT>:50060
+enable <deviceId>  // Use the device ID returned in the previous command
+```
+
+At this point you can send flows to the devices using the test option in the CLI. 
+```$xslt
+test
+install_eapol_flow <logical_device_id>
+install_dhcp_flows  <logical_device_id>
+install_all_controller_bound_flows <logical_device_id>
+install_all_sample_flows <logical_device_id>
+```
+
+You can also see the metrics the Ponsim OLT and ONU adapters are pushing onto the kafka bus.
+
+```$xslt
+kafkacat -b <host IP>:9092 -t voltha.kpis -p 0  -o beginning
+```
+
diff --git a/python/cli/main.py b/python/cli/main.py
index 0348f66..00ea702 100755
--- a/python/cli/main.py
+++ b/python/cli/main.py
@@ -90,8 +90,7 @@
 
     def __init__(self, voltha_grpc, voltha_sim_rest, global_request=False):
 
-        VolthaCli.voltha_grpc = "localhost:50057"
-        # VolthaCli.voltha_grpc = voltha_grpc
+        VolthaCli.voltha_grpc = voltha_grpc
         VolthaCli.voltha_sim_rest = voltha_sim_rest
         VolthaCli.global_request = global_request
         Cmd.__init__(self)
