BBSim, a Broadband Simulator


BBSim (a.k.a. BroadBand Simulator) is a tool designed to emulate an Openolt compatible device.

BBSim emulates the OLT, PON Ports, ONUs, UNIs and RG. For more informations on how configure different Services on the RG refer to Configuring RG Services

In order to use BBSim you need to have:

  • a Kubernetes cluster

  • helm

  • a working installation of VOLTHA

We strongly recommend the utilization of kind-voltha to setup such environment.


Once VOLTHA is up and running, you can deploy BBSim with this command:

helm install -n bbsim cord/bbsim

If you need to specify a custom image for BBSim you can:

helm install -n bbsim cord/bbsim --set images.bbsim.repository=bbsim --set images.bbsim.tag=candidate --set images.bbsim.pullPolicy=Never

The BBSim installation can be customized to emulate multiple ONUs and multiple PON Ports:

helm install -n bbsim cord/bbsim --set onu=8 --set pon=2

BBSim can also be configured to automatically start Authentication or DHCP:

Once BBSim is installed you can verify that it’s running with:

kubectl logs -n voltha -f $(kubectl get pods -n voltha | grep bbsim | awk '{print $1}')

Provision a BBSim OLT in VOLTHA

Create the device:

voltctl device create -t openolt -H $(kubectl get -n voltha service/bbsim -o go-template='{{.spec.clusterIP}}'):50060

Enable the device:

voltctl device enable $(voltctl device list --filter Type~openolt -q)