diff --git a/ponsim/v2/README.md b/ponsim/v2/README.md
index 88841c7..9d004be 100644
--- a/ponsim/v2/README.md
+++ b/ponsim/v2/README.md
@@ -50,6 +50,8 @@
     	Enable promiscuous mode on network interfaces
   -quiet
     	Suppress debug and info logs
+  -serial_number string
+      Serial number of ONU device (default "PSMO12345678")
   -vcore_endpoint string
     	Voltha core endpoint address (default "vcore")
   -verbose
diff --git a/ponsim/v2/core/ponsim_onu.go b/ponsim/v2/core/ponsim_onu.go
index ac3a02a..ae40387 100644
--- a/ponsim/v2/core/ponsim_onu.go
+++ b/ponsim/v2/core/ponsim_onu.go
@@ -43,6 +43,7 @@
 	ParentAddress string
 	ParentPort    int32
 	AssignedPort  int32
+	SerialNumber  string
 	Conn          *grpc.ClientConn
 
 	oltClient ponsim.PonSimCommonClient
@@ -214,6 +215,7 @@
 				Id:      uuid.New().String(),
 				Address: common.GetInterfaceIP(o.InternalIf),
 				Port:    o.Port,
+				SerialNumber: o.SerialNumber,
 			}
 			common.Logger().Printf("Request details %+v\n", rreq)
 
diff --git a/ponsim/v2/grpc/nbi/ponsim_handler.go b/ponsim/v2/grpc/nbi/ponsim_handler.go
index 8205386..49fd71a 100644
--- a/ponsim/v2/grpc/nbi/ponsim_handler.go
+++ b/ponsim/v2/grpc/nbi/ponsim_handler.go
@@ -128,25 +128,28 @@
 		"handler": handler,
 	}).Info("Getting device information")
 
-	var out *voltha.PonSimDeviceInfo
+	out := &voltha.PonSimDeviceInfo{}
 
 	// Check which device type we're currently handling
 	if _, ok := (handler.device).(*core.PonSimOltDevice); ok {
 		common.Logger().WithFields(logrus.Fields{
 			"handler": handler,
 		}).Debug("Handling OLT device")
-		keys := make([]int32, 0, len((handler.device).(*core.PonSimOltDevice).GetOnus()))
-		for k := range (handler.device).(*core.PonSimOltDevice).GetOnus() {
-			keys = append(keys, k)
+		onus := (handler.device).(*core.PonSimOltDevice).GetOnus()
+		for k := range onus {
+			out.Onus = append(
+				out.Onus,
+				&voltha.PonSimOnuDeviceInfo {
+					UniPort: k,
+					SerialNumber: onus[k].Device.SerialNumber,
+				},
+			)
 		}
-		out = &voltha.PonSimDeviceInfo{NniPort: 0, UniPorts: []int32(keys)}
-
+		out.NniPort = 0
 	} else {
 		common.Logger().WithFields(logrus.Fields{
 			"handler": handler,
 		}).Debug("Handling ONU/OTHER device")
-
-		out = &voltha.PonSimDeviceInfo{}
 	}
 
 	common.Logger().WithFields(logrus.Fields{
diff --git a/ponsim/v2/grpc/sbi/olt_handler.go b/ponsim/v2/grpc/sbi/olt_handler.go
index a264532..2f98c96 100644
--- a/ponsim/v2/grpc/sbi/olt_handler.go
+++ b/ponsim/v2/grpc/sbi/olt_handler.go
@@ -48,6 +48,7 @@
 		PonSimDevice: core.PonSimDevice{
 			Address: request.Address, Port: request.Port, //GrpcSecurity: h.olt.GrpcSecurity,
 		}}
+	onu.SerialNumber = request.SerialNumber
 
 	if assignedPort, err := h.olt.AddOnu(onu); assignedPort == -1 || err != nil {
 		return &ponsim.RegistrationReply{
diff --git a/ponsim/v2/ponsim.go b/ponsim/v2/ponsim.go
index eab6a54..cbb863d 100644
--- a/ponsim/v2/ponsim.go
+++ b/ponsim/v2/ponsim.go
@@ -49,6 +49,7 @@
 	default_parent_port    = 50060
 	default_vcore_endpoint = "vcore"
 	default_fluentd_host   = ""
+	default_serial_number  = "PSMO12345678"
 
 	default_snapshot_len = 65535
 	default_promiscuous  = false
@@ -82,6 +83,7 @@
 	parent_port    int    = default_parent_port
 	vcore_endpoint string = default_vcore_endpoint
 	fluentd_host   string = default_fluentd_host
+	serial_number  string = default_serial_number
 
 	snapshot_len int32 = default_snapshot_len
 	promiscuous  bool  = default_promiscuous
@@ -158,6 +160,9 @@
 	help = fmt.Sprintf("Fluentd host address")
 	flag.StringVar(&fluentd_host, "fluentd", default_fluentd_host, help)
 
+	help = fmt.Sprintf("Serial number of ONU device")
+	flag.StringVar(&serial_number, "serial_number", default_serial_number, help)
+
 	flag.Parse()
 }
 
@@ -274,6 +279,7 @@
 		device = core.NewPonSimOnuDevice(pon)
 		device.(*core.PonSimOnuDevice).ParentAddress = parent_addr
 		device.(*core.PonSimOnuDevice).ParentPort = int32(parent_port)
+		device.(*core.PonSimOnuDevice).SerialNumber = serial_number
 
 	default:
 		log.Println("Unknown device type")
diff --git a/ponsim/v2/protos/ponsim_olt.proto b/ponsim/v2/protos/ponsim_olt.proto
index 82214a7..3b8a761 100644
--- a/ponsim/v2/protos/ponsim_olt.proto
+++ b/ponsim/v2/protos/ponsim_olt.proto
@@ -12,6 +12,7 @@
     string id = 1;
     string address = 2;
     int32 port = 3;
+    string serial_number = 4;
 }
 
 message RegistrationReply {
