diff --git a/src/error_format.cc b/src/error_format.cc
new file mode 100644
index 0000000..5c88bc7
--- /dev/null
+++ b/src/error_format.cc
@@ -0,0 +1,41 @@
+#include "error_format.h"
+using grpc::Status;
+using grpc::StatusCode;
+
+
+Status bcm_to_grpc_err(bcmos_errno bcm_err, std::string message) {
+    StatusCode grpc_err = StatusCode::INTERNAL;
+
+    switch (bcm_err) {
+        case BCM_ERR_PARM:
+            grpc_err = StatusCode::INVALID_ARGUMENT;
+            break;
+        case BCM_ERR_RANGE:
+            grpc_err = StatusCode::OUT_OF_RANGE;
+            break;
+        case BCM_ERR_NOT_SUPPORTED:
+            grpc_err = StatusCode::UNIMPLEMENTED;
+            break;
+        case BCM_ERR_NOENT:
+        case BCM_ERR_NODEV:
+            grpc_err = StatusCode::NOT_FOUND;
+            break;
+        case BCM_ERR_TIMEOUT:
+        case BCM_ERR_TOO_LONG:
+        case BCM_ERR_TOO_MANY_REQS:
+            grpc_err = StatusCode::DEADLINE_EXCEEDED;
+            break;
+        case BCM_ERR_ALREADY:
+            grpc_err = StatusCode::ALREADY_EXISTS;
+            break;
+        case BCM_ERR_NO_MORE:
+        case BCM_ERR_INSUFFICIENT_LIST_MEM:
+            grpc_err = StatusCode::RESOURCE_EXHAUSTED;
+            break;
+    }
+
+    message.append(" BCM Error ");
+    message.append(std::to_string(bcm_err));
+
+    return Status(grpc_err, message);
+}
