diff --git a/overview/dev_virtual.rst b/overview/dev_virtual.rst
index a20563c..22f17db 100644
--- a/overview/dev_virtual.rst
+++ b/overview/dev_virtual.rst
@@ -22,44 +22,7 @@
 
     TYPE=minimal WITH_RADIUS=y CONFIG_SADIS=y ONLY_ONE=y WITH_BBSIM=y ./voltha up
 
-Create Kubernetes Cluster
--------------------------
-
-Kind provides a command line control tool to easily create Kubernetes
-clusters using just a basic Docker environment. The following commands
-will create the desired deployment of Kubernetes and then configure your
-local copy of ``kubectl`` to connect to this cluster.
-
-.. code:: bash
-
-   kind create cluster --name=voltha-$TYPE --config $TYPE-cluster.cfg
-   export KUBECONFIG="$(kind get kubeconfig-path --name="voltha-$TYPE")"
-   kubectl cluster-info
-
-Initialize Helm
----------------
-
-Helm provide a capability to install and manage Kubernetes applications.
-VOLTHA’s default deployment mechanism utilized Helm. Before Helm can be
-used to deploy VOLTHA it must be initialized and the repositories that
-container the artifacts required to deploy VOLTHA must be added to Helm.
-
-.. code:: bash
-
-   # Initialize Helm and add the required chart repositories
-   helm init
-   helm repo add incubator https://kubernetes-charts-incubator.storage.googleapis.com
-   helm repo add stable https://kubernetes-charts.storage.googleapis.com
-   helm repo add onf https://charts.opencord.org
-   helm repo update
-
-   # Create and k8s service account so that Helm can create pods
-   kubectl create serviceaccount --namespace kube-system tiller
-   kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
-   kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'
-
-From this point follow the :ref:`physical VOLTHA POD installation instructions
-<installation_steps>`. Come back here once done.
+For more information you can visit the `kind-voltha page <kind-voltha/README.md>`_.
 
 Install BBSIM (Broad Band OLT/ONU Simulator)
 --------------------------------------------
@@ -67,13 +30,11 @@
 BBSIM provides a simulation of a BB device. It can be useful for
 testing.
 
-.. code:: bash
-
-   helm install -f minimal-values.yaml --namespace voltha --name bbsim onf/bbsim
-
 Create BBSIM Device
 ^^^^^^^^^^^^^^^^^^^
 
+After having deployed BBSIM either through `kind-voltha` or manually `bbsim <bbsim/docs/source/index.rst>`_ you can create a similated OLT.
+
 .. code:: bash
 
    voltctl device create -t openolt -H $(kubectl get -n voltha service/bbsim -o go-template='{{.spec.clusterIP}}'):50060
@@ -85,6 +46,31 @@
 
    voltctl device enable $(voltctl device list --filter Type~openolt -q)
 
+Observing the newly created device in ONOS
+------------------------------------------
+
+At this point you should be able to see a new device in ONOS.
+
+You can SSH into ONOS via
+
+.. code:: bash
+
+    ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -p 8201 karaf@localhost
+
+with password ``karaf``.
+
+Now when issuing `ports` command you should see something along the lines of:
+
+.. code:: bash
+
+   karaf@root > ports
+   id=of:00000a0a0a0a0a00, available=true, local-status=connected 29s ago, role=MASTER, type=SWITCH, mfr=VOLTHA Project, hw=open_pon, sw=open_pon, serial=BBSIM_OLT_0, chassis=a0a0a0a0a00, driver=voltha, channelId=10.244.2.7:48630, managementAddress=10.244.2.7, protocol=OF_13
+   port=16, state=enabled, type=fiber, speed=0 , adminState=enabled, portMac=08:00:00:00:00:10, portName=BBSM00000001-1
+   port=17, state=disabled, type=fiber, speed=0 , adminState=enabled, portMac=08:00:00:00:00:11, portName=BBSM00000001-2
+   port=18, state=disabled, type=fiber, speed=0 , adminState=enabled, portMac=08:00:00:00:00:12, portName=BBSM00000001-3
+   port=19, state=disabled, type=fiber, speed=0 , adminState=enabled, portMac=08:00:00:00:00:13, portName=BBSM00000001-4
+   port=1048576, state=enabled, type=fiber, speed=0 , adminState=enabled, portMac=0a:0a:0a:0a:0a:00, portName=nni-1048576
+
 
 Developing changes on a virtual pod
 -----------------------------------
@@ -135,3 +121,42 @@
 .. code:: bash
 
     $ DEPLOY_K8S=no ./voltha down && DEPLOY_K8S=no EXTRA_HELM_FLAGS="-f dev-values.yaml" ./voltha up
+
+Create Kubernetes Cluster
+-------------------------
+
+Kind provides a command line control tool to easily create Kubernetes
+clusters using just a basic Docker environment. The following commands
+will create the desired deployment of Kubernetes and then configure your
+local copy of ``kubectl`` to connect to this cluster.
+
+.. code:: bash
+
+   kind create cluster --name=voltha-$TYPE --config $TYPE-cluster.cfg
+   export KUBECONFIG="$(kind get kubeconfig-path --name="voltha-$TYPE")"
+   kubectl cluster-info
+
+Initialize Helm
+---------------
+
+Helm provide a capability to install and manage Kubernetes applications.
+VOLTHA’s default deployment mechanism utilized Helm. Before Helm can be
+used to deploy VOLTHA it must be initialized and the repositories that
+container the artifacts required to deploy VOLTHA must be added to Helm.
+
+.. code:: bash
+
+   # Initialize Helm and add the required chart repositories
+   helm init
+   helm repo add incubator https://kubernetes-charts-incubator.storage.googleapis.com
+   helm repo add stable https://kubernetes-charts.storage.googleapis.com
+   helm repo add onf https://charts.opencord.org
+   helm repo update
+
+   # Create and k8s service account so that Helm can create pods
+   kubectl create serviceaccount --namespace kube-system tiller
+   kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
+   kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'
+
+From this point follow the :ref:`physical VOLTHA POD installation instructions
+<installation_steps>`. Come back here once done.
diff --git a/overview/lab_setup.rst b/overview/lab_setup.rst
index 5ec8054..2659b0d 100644
--- a/overview/lab_setup.rst
+++ b/overview/lab_setup.rst
@@ -143,10 +143,10 @@
 
 To setup a NAT router on an Ubuntu 16.04 server you can look at this
 tutorial:
-https://www.nairabytes.net/81-linux/418-how-to-set-up-a-nat-router-on-ubuntu-server-16-04
+http://nairabytes.net/linux/how-to-set-up-a-nat-router-on-ubuntu-server-16-04
 
 To install a DHCP server you can follow this tutorial:
-http://nairabytes.net/81-linux/415-how-to-install-a-dhcp-server-in-ubuntu-server-16-04
+http://nairabytes.net/linux/how-to-install-a-dhcp-server-in-ubuntu-server-16-04
 
 Once the ``DHCP`` server is installed, you need to configure it.
 
diff --git a/overview/pod_physical.rst b/overview/pod_physical.rst
index 9fb7c01..8a35abe 100644
--- a/overview/pod_physical.rst
+++ b/overview/pod_physical.rst
@@ -26,6 +26,8 @@
 If you already have a ``radius`` server that you want to use, change the flag to ``WITH_RADIUS=n``
 and `configure ONOS accordingly <https://github.com/opencord/aaa>`_.
 
+For more information please check `kind-voltha page <kind-voltha/README.md>`_.
+
 TLDR;
 -----
 
diff --git a/overview/troubleshooting.rst b/overview/troubleshooting.rst
index cb3b747..9b2e7d6 100644
--- a/overview/troubleshooting.rst
+++ b/overview/troubleshooting.rst
@@ -5,6 +5,13 @@
 The project is still in a very early phase, so this section of the guide is more focus
 on how to collection information and packet dumps than it is on operations.
 
+Depending on your issue useful tips and tricks can be found:
+- `No ONUs are discovered <https://guide.opencord.org/profiles/seba/troubleshoot/no-onus.html>`_
+- `Can't authenticate <https://guide.opencord.org/profiles/seba/troubleshoot/no-aaa.html>`_
+- `DHCP is not working <https://guide.opencord.org/profiles/seba/troubleshoot/no-dhcp.html>`_
+- `No Ping <https://guide.opencord.org/profiles/seba/troubleshoot/no-ping.html>`_
+
+
 Trace Packets across components
 -------------------------------
 
