diff --git a/internal/pkg/common/defines.go b/internal/pkg/common/defines.go
index ae705e3..b9c9f17 100755
--- a/internal/pkg/common/defines.go
+++ b/internal/pkg/common/defines.go
@@ -364,6 +364,12 @@
 	OnuOmciCommunicationFailureSwUpgrade     = "ONU_OMCI_COMMUNICATION_FAILURE_SW_UPGRADE"
 	OnuOmciCommunicationFailureSwUpgradeDesc = "OMCI communication during ONU SW upgrade failed"
 
+	OnuConfigFailureResponseErr     = "ONU_CONFIG_FAILURE_RESPONSE_ERROR"
+	OnuConfigFailureResponseErrDesc = "ONU config failed - response error: "
+
+	OnuConfigFailureTimeout     = "ONU_CONFIG_FAILURE_TIMEOUT"
+	OnuConfigFailureTimeoutDesc = "ONU config failed - timeout, OMCI ME: "
+
 	OnuConfigFailureMissingTcont     = "ONU_CONFIG_FAILURE_MISSING_TCONT"
 	OnuConfigFailureMissingTcontDesc = "ONU config failed - no further TCONT resources available at ONU"
 
diff --git a/internal/pkg/common/omci_cc.go b/internal/pkg/common/omci_cc.go
index 25f34de..6cb15b7 100755
--- a/internal/pkg/common/omci_cc.go
+++ b/internal/pkg/common/omci_cc.go
@@ -117,6 +117,8 @@
 	coreClient         *vgrpc.Client
 	supportExtMsg      bool
 	rxOmciFrameError   tOmciReceiveError
+	confFailMEs        []me.ClassID
+	mutexConfFailMEs   sync.RWMutex
 
 	mutexCounters sync.RWMutex
 	countersBase  txRxCounters
@@ -168,6 +170,7 @@
 	omciCC.coreClient = coreClient
 	omciCC.supportExtMsg = false
 	omciCC.rxOmciFrameError = cOmciMessageReceiveNoError
+	omciCC.confFailMEs = nil
 	omciCC.countersBase = txRxCounters{0, 0, 0, 0}
 	omciCC.countersExt = txRxCounters{0, 0, 0, 0}
 	omciCC.txRetries = 0
@@ -213,6 +216,7 @@
 	oo.UploadSequNo = 0
 	oo.UploadNoOfCmds = 0
 	oo.rxOmciFrameError = cOmciMessageReceiveNoError
+	oo.ResetConfFailMEs()
 
 	//reset the stats counter
 	oo.mutexCounters.Lock()
@@ -5243,3 +5247,48 @@
 	defer oo.mutexCounters.Unlock()
 	oo.txTimeouts++
 }
+
+// NotifyAboutOnuConfigFailure - trigger ONU DeviceEvent to notify about ONU config failure
+func (oo *OmciCC) NotifyAboutOnuConfigFailure(ctx context.Context, errID string, meClassID me.ClassID, meEntityID uint16,
+	meName string, meResult me.Results) {
+	var description string
+	if !oo.confFailMeAlreadyHandled(meClassID) {
+		switch errID {
+		case OnuConfigFailureResponseErr:
+			description = OnuConfigFailureResponseErrDesc + meResult.String() +
+				", OMCI ME: " + meName + " / instance: " + fmt.Sprintf("%d", meEntityID) + " (only first instance reported)"
+		case OnuConfigFailureTimeout:
+			description = OnuConfigFailureTimeoutDesc + meName + " / instance: " + fmt.Sprintf("%d", meEntityID) +
+				" (only first instance reported)"
+		default:
+			logger.Warnw(ctx, "method called with undefined errID", log.Fields{"errID": errID, "device-id": oo.deviceID})
+			return
+		}
+		oo.pOnuDeviceEntry.SendOnuDeviceEvent(ctx, errID, description)
+		oo.appendConfFailMe(meClassID)
+	}
+}
+
+func (oo *OmciCC) confFailMeAlreadyHandled(meClassID me.ClassID) bool {
+	oo.mutexConfFailMEs.RLock()
+	defer oo.mutexConfFailMEs.RUnlock()
+	for _, v := range oo.confFailMEs {
+		if v == meClassID {
+			return true
+		}
+	}
+	return false
+}
+
+func (oo *OmciCC) appendConfFailMe(meClassID me.ClassID) {
+	oo.mutexConfFailMEs.Lock()
+	defer oo.mutexConfFailMEs.Unlock()
+	oo.confFailMEs = append(oo.confFailMEs, meClassID)
+}
+
+// ResetConfFailMEs - reset list of stored config failure MEs
+func (oo *OmciCC) ResetConfFailMEs() {
+	oo.mutexConfFailMEs.Lock()
+	defer oo.mutexConfFailMEs.Unlock()
+	oo.confFailMEs = nil
+}
