diff --git a/README.md b/README.md
index dbaa36e..c63d5d7 100644
--- a/README.md
+++ b/README.md
@@ -16,7 +16,7 @@
 Once VOLTHA is deployed you can deploy BBsim using the helm chart provided in the repo:
 
 ```
-cd deployments/helm-chart
+git clone https://github.com/opencord/helm-charts.git
 helm install -n bbsim bbsim
 ```
 
@@ -38,7 +38,7 @@
 # of ONU Ports: 2
 Total ONUs: (total: 4)
 
-OLT is listening on: "voltha.svc.bbsim-olt-id-0:50060"
+OLT is listening on: "voltha.svc.bbsim:50060"
 ```
 
 #### VOLTHA 1.X
@@ -46,7 +46,7 @@
 Connect to the voltha CLI and execute this commands:
 
 ```bash
-preprovision_olt -t openolt -H voltha.svc.bbsim-olt-id-0:50060
+preprovision_olt -t openolt -H voltha.svc.bbsim:50060
 enable
 ```
 
@@ -55,7 +55,7 @@
 _This assumes `voltctl` is installed an configured_
 
 ```bash
-voltctl device create -t openolt -H bbsim-olt-id-0:50060
+voltctl device create -t openolt -H bbsim:50060
 voltctl device enable $(voltctl device list --filter Type~openolt -q)
 ```
 
diff --git a/VERSION b/VERSION
index 68e4b03..8acdd82 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.0.1-alpha
+0.0.1
diff --git a/deployments/helm-chart/bbsim/Chart.yaml b/deployments/helm-chart/bbsim/Chart.yaml
deleted file mode 100644
index f405fe3..0000000
--- a/deployments/helm-chart/bbsim/Chart.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 2018-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-name: bbsim
-description: Broadband Simulator
-icon: https://guide.opencord.org/logos/cord.svg
-
-version: 0.0.1-alpha
-appVersion: 0.0.1-alpha
\ No newline at end of file
diff --git a/deployments/helm-chart/bbsim/templates/NOTES.txt b/deployments/helm-chart/bbsim/templates/NOTES.txt
deleted file mode 100644
index 06bf7e4..0000000
--- a/deployments/helm-chart/bbsim/templates/NOTES.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-BBSim deployed with release name: {{ .Release.Name }}
-
-OLT ID: {{ .Values.olt_id }}
-# of NNI Ports: {{ .Values.nni }}
-# of PON Ports: {{ .Values.pon }}
-# of ONU Ports: {{ .Values.onu }}
-Total ONUs: (total: {{ mul .Values.pon .Values.onu}})
-
-OLT is listening on: "bbsim-olt-id-{{ .Values.olt_id }}:{{ .Values.olt_tcp_port }}"
diff --git a/deployments/helm-chart/bbsim/templates/_helpers.tpl b/deployments/helm-chart/bbsim/templates/_helpers.tpl
deleted file mode 100644
index af6ac67..0000000
--- a/deployments/helm-chart/bbsim/templates/_helpers.tpl
+++ /dev/null
@@ -1,48 +0,0 @@
-{{/* vim: set filetype=mustache: */}}
-{{/*
-Copyright 2018-present Open Networking Foundation
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/}}
-{{/*
-Expand the name of the chart.
-*/}}
-{{- define "bbsim.name" -}}
-{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{/*
-Create a default fully qualified app name.
-We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
-If release name contains chart name it will be used as a full name.
-*/}}
-{{- define "bbsim.fullname" -}}
-{{- if .Values.fullnameOverride -}}
-{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
-{{- else -}}
-{{- $name := default .Chart.Name .Values.nameOverride -}}
-{{- if contains $name .Release.Name -}}
-{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
-{{- else -}}
-{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-{{- end -}}
-{{- end -}}
-
-{{/*
-Create chart name and version as used by the chart label.
-*/}}
-{{- define "bbsim.chart" -}}
-{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
diff --git a/deployments/helm-chart/bbsim/templates/deployment.yaml b/deployments/helm-chart/bbsim/templates/deployment.yaml
deleted file mode 100644
index 89c6118..0000000
--- a/deployments/helm-chart/bbsim/templates/deployment.yaml
+++ /dev/null
@@ -1,80 +0,0 @@
----
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
-  name: {{ template "bbsim.fullname" . }}
-  namespace: {{ .Values.namespace }}
-  labels:
-    app: {{ template "bbsim.name" . }}
-    chart: {{ template "bbsim.chart" . }}
-    release: {{ .Release.Name }}
-    heritage: {{ .Release.Service }}
-spec:
-  replicas: {{ .Values.replicaCount }}
-  selector:
-    matchLabels:
-      app: {{ template "bbsim.name" . }}
-      release: {{ .Release.Name }}
-  template:
-    metadata:
-      labels:
-        app: {{ template "bbsim.name" . }}
-        release: {{ .Release.Name }}
-    spec:
-      serviceAccount: {{ .Values.serviceAccountName }}
-      serviceAccountName: {{ .Values.serviceAccountName }}
-      containers:
-        - name: {{ .Chart.Name }}
-          image: {{ .Values.global.registry }}{{ .Values.images.bbsim.repository }}:{{ tpl .Values.images.bbsim.tag . }}
-          imagePullPolicy: {{ .Values.images.bbsim.pullPolicy }}
-          securityContext:
-            privileged: true
-          command: [
-            "/app/bbsim",
-            "-olt_id", "{{ .Values.olt_id }}",
-            "-nni", "{{ .Values.nni }}",
-            "-pon", "{{ .Values.pon }}",
-            "-onu", "{{ .Values.onu }}",
-          ]
-          ports:
-            - name: "bbsim-olt-id-{{ .Values.olt_id }}"
-              containerPort: {{ .Values.olt_tcp_port }}
-              port: {{ .Values.olt_tcp_port }}
-              protocol: TCP
-          env:
-            - name: POD_IP
-              valueFrom:
-                fieldRef:
-                  fieldPath: status.podIP
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-          resources:
-{{ toYaml .Values.resources | indent 12 }}
-    {{- with .Values.nodeSelector }}
-      nodeSelector:
-{{ toYaml . | indent 8 }}
-    {{- end }}
-    {{- with .Values.affinity }}
-      affinity:
-{{ toYaml . | indent 8 }}
-    {{- end }}
-    {{- with .Values.tolerations }}
-      tolerations:
-{{ toYaml . | indent 8 }}
-    {{- end }}
diff --git a/deployments/helm-chart/bbsim/templates/service.yaml b/deployments/helm-chart/bbsim/templates/service.yaml
deleted file mode 100644
index 159d5e4..0000000
--- a/deployments/helm-chart/bbsim/templates/service.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
----
-# Copyright 2018-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-#  name: bbsim-olt-id-{{ .Values.olt_id }}
-  name: bbsim
-  namespace: {{ .Values.namespace }}
-  labels:
-    app: {{ template "bbsim.name" . }}
-    chart: {{ template "bbsim.chart" . }}
-    release: {{ .Release.Name }}
-    heritage: {{ .Release.Service }}
-spec:
-  type: ClusterIP
-  ports:
-    - name: "bbsim-olt-id-{{ .Values.olt_id }}"
-      port: {{ .Values.olt_tcp_port }}
-      protocol: TCP
-    - name: "bbsim-olt-id-{{ .Values.olt_id }}-api"
-      port: {{ .Values.bbsim_api_port }}
-      protocol: TCP
-  selector:
-    app: {{ template "bbsim.name" . }}
-    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/deployments/helm-chart/bbsim/values.yaml b/deployments/helm-chart/bbsim/values.yaml
deleted file mode 100644
index 5c0161c..0000000
--- a/deployments/helm-chart/bbsim/values.yaml
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 2018-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# bbsim values
-
-# CLI switches passed to bbsim
-
-olt_id: 0
-nni: 1
-pon: 1
-onu: 1
-
-# TODO read this values in the config
-olt_tcp_port: 50060
-bbsim_api_port: 50070
-
-images:
-  bbsim:
-    repository: 'voltha/bbsim'
-    tag: '{{ .Chart.AppVersion }}'
-    pullPolicy: 'Always'
-
-global:
-  registry: ''
-
-namespace: voltha
-serviceAccountName: default
-
-nameOverride: ""
-fullnameOverride: ""
-
-replicaCount: 1
-
-resources: {}
-
-nodeSelector: {}
-
-tolerations: []
-
-affinity: {}
\ No newline at end of file
