diff --git a/protos/core_adapter.proto b/protos/core_adapter.proto
index c995b0d..24390f5 100644
--- a/protos/core_adapter.proto
+++ b/protos/core_adapter.proto
@@ -21,9 +21,15 @@
     bool val = 1;
 }
 
-enum ErrorCode {
+message Packet {
+    bytes payload = 1;
+}
+
+message ErrorCode {
+    enum codes {
         UNSUPPORTED_REQUEST = 0;
         INVALID_PARAMETERS = 1;
+    }
 }
 
 message Error {
diff --git a/protos/voltha.proto b/protos/voltha.proto
index 7574dd2..e03442a 100644
--- a/protos/voltha.proto
+++ b/protos/voltha.proto
@@ -445,6 +445,23 @@
         option (voltha.yang_xml_tag).xml_tag = 'device_groups';
     }
 
+    // Stream control packets to the dataplane
+    rpc StreamPacketsOut(stream openflow_13.PacketOut)
+        returns(google.protobuf.Empty) {
+        // This does not have an HTTP representation
+    }
+
+    // Receive control packet stream
+    rpc ReceivePacketsIn(google.protobuf.Empty)
+        returns(stream openflow_13.PacketIn) {
+        // This does not have an HTTP representation
+    }
+
+    rpc ReceiveChangeEvents(google.protobuf.Empty)
+        returns(stream openflow_13.ChangeEvent) {
+        // This does not have an HTTP representation
+    }
+
     // Get additional information on a device group
     rpc GetDeviceGroup(ID) returns(DeviceGroup) {
         option (google.api.http) = {
@@ -452,20 +469,6 @@
         };
     }
 
-    // Stream control packets to the dataplane
-    rpc StreamPacketsOut (stream openflow_13.PacketOut) returns (google.protobuf.Empty) {
-        // This does not have an HTTP representation
-    }
-
-    // Receive control packet stream
-    rpc ReceivePacketsIn (google.protobuf.Empty) returns (stream openflow_13.PacketIn) {
-        // This does not have an HTTP representation
-    }
-
-    rpc ReceiveChangeEvents (google.protobuf.Empty) returns (stream openflow_13.ChangeEvent) {
-        // This does not have an HTTP representation
-    }
-
     rpc CreateAlarmFilter(AlarmFilter) returns(AlarmFilter) {
         option (google.api.http) = {
             post: "/api/v1/alarm_filters"
