First version of BBSim
Change-Id: I003b5cc4da090ba4631da65da2b513311648d667
VOL-813: gRPC server in BBSim (Broad Band Sim)
diff --git a/README b/README
new file mode 100644
index 0000000..0b186af
--- /dev/null
+++ b/README
@@ -0,0 +1,85 @@
+# 1. Overview
+
+The BBSim (Broadband Simulator) is for emulating the control message response sent from OLTs and ONUs which are connected to VOLTHA Adapter.
+It is implemetend as a software process which runs outside VOLTHA, and acts as if it was multiple OLTs and ONUs.
+This enables the scalability test of VOLTHA without actual hardware OLTs / ONUs.
+The difference from the existing PONsim is to focus on emulating control messages, not data-path traffic which PONsim targets.
+
+It currently supports the following VOLTHA mode:
+(Reference to https://github.com/opencord/voltha/blob/master/BUILD.md)
+* Run in stand-alone mode
+* Run with the "voltha ensamble"
+
+**Please note: Kubernetes mode is NOT supported by the current version.**
+
+==============
+VOLTHA
+OpenOLT Adapter
+==============
+|||
+||| gRPC connections
+|||
+==============
+BBSim
+==============
+
+# 2. PON Simulator Usage
+
+```
+Usage of ./bbsim:
+ -H
+ IP and Port number which BBSim listens (default 172.17.0.1:50060)
+ -N
+ Number of OLTs
+ -i
+ Number of PON interfaces provided per OLT
+ -n
+ Number of ONUs per PON interface
+```
+
+# 3. Requirements
+
+# Golang Installation
+
+If you plan on running the simulator locally, i.e. not in a container, you will need to first
+install setup Golang on your system. Install using existing packages for your operating system
+or issue the following commands (Linux).
+
+```
+cd /tmp
+wget https://storage.googleapis.com/golang/go1.9.3.linux-amd64.tar.gz
+tar -C /usr/local -xzf /tmp/go1.9.3.linux-amd64.tar.gz
+rm -f /tmp/go1.9.3.linux-amd64.tar.gz
+mkdir ~/go
+```
+
+Edit your profile (e.g. .bashrc) and add the following configuration
+
+```
+export GOROOT=/usr/local/go
+export GOPATH=~/go
+export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
+```
+
+# 4. Run BBSim and VOLTHA-CLI commands
+
+```
+# in VOLTHA docker
+cd /cord/incubator/voltha/voltha/bbsim
+./bbsim -H 172.17.0.1:50060 -N 1 -i 1 -n 16
+
+# After this, execute the following commands from VOLTHA-CLI
+(voltha) health
+{
+ "state": "HEALTHY"
+}
+(voltha) preprovision_olt -t openolt -H 172.17.0.1:50060
+success (device id = <deviceid>)
+(voltha) enable
+enabling <deviceid>
+waiting for device to be enabled...
+success (device id = <deviceid>)
+(voltha) devices
+## You can see the list of devices (OLT/ONUs) ##
+```
+