diff --git a/voltha/adapters/brcm_openomci_onu/omci/brcm_capabilities_task.py b/voltha/adapters/brcm_openomci_onu/omci/brcm_capabilities_task.py
index 1c6524a..6bf5b93 100644
--- a/voltha/adapters/brcm_openomci_onu/omci/brcm_capabilities_task.py
+++ b/voltha/adapters/brcm_openomci_onu/omci/brcm_capabilities_task.py
@@ -65,13 +65,11 @@
 
         # TODO: figure out why broadcom wont answer for ME 287 to get this.  otherwise manually fill in
         me_1287800f1 = [
-            2, 5, 6, 7, 11, 24, 45, 46, 47, 48, 49, 50, 51, 52, 79, 84, 89, 130,
-            131, 133, 134, 135, 136, 137, 148, 157, 158, 159, 171, 256, 257, 262,
-            263, 264, 266, 268, 272, 273, 274, 277, 278, 279, 280, 281, 297, 298,
-            299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312,
-            329, 330, 332, 334, 336, 340, 341, 342, 343, 348, 425, 426, 65300,
-            65400, 65401, 65402, 65403, 65404, 65406, 65407, 65408, 65409, 65410,
-            65411, 65412, 65413, 65414, 65420, 65421, 65422, 65423, 65424
+            2, 5, 6, 7, 11, 24, 45, 46, 47, 48, 49, 50, 51, 52, 78, 79, 84, 89, 130,
+            131, 133, 134, 135, 136, 137, 148, 157, 158, 159, 162, 163, 164, 171, 240,
+            241, 242, 256, 257, 262, 263, 264, 266, 268, 272, 273, 274, 276, 277, 278,
+            279, 280, 281, 287, 296, 297, 298, 307, 308, 309, 310, 311, 312, 321, 322,
+            329, 330, 332, 334, 336, 340, 341, 342, 343, 347, 348, 425, 426
         ]
         return frozenset(list(me_1287800f1))
 
diff --git a/voltha/extensions/omci/state_machines/performance_intervals.py b/voltha/extensions/omci/state_machines/performance_intervals.py
index 1f58dc8..e9c70c5 100644
--- a/voltha/extensions/omci/state_machines/performance_intervals.py
+++ b/voltha/extensions/omci/state_machines/performance_intervals.py
@@ -84,6 +84,7 @@
     DEFAULT_TICK_DELAY = 15          # Seconds between checks for collection tick
     DEFAULT_INTERVAL_SKEW = 10 * 60  # Seconds to skew past interval boundary
     DEFAULT_COLLECT_ATTEMPTS = 3     # Maximum number of collection fetch attempts
+    DEFAULT_CREATE_ATTEMPTS = 5      # Maximum number of attempts to create a PM Managed Entities
 
     def __init__(self, agent, device_id, tasks,
                  advertise_events=False,
@@ -93,7 +94,8 @@
                  timeout_delay=DEFAULT_RETRY,
                  tick_delay=DEFAULT_TICK_DELAY,
                  interval_skew=DEFAULT_INTERVAL_SKEW,
-                 collect_attempts=DEFAULT_COLLECT_ATTEMPTS):
+                 collect_attempts=DEFAULT_COLLECT_ATTEMPTS,
+                 create_attempts=DEFAULT_CREATE_ATTEMPTS):
         """
         Class initialization
 
@@ -109,6 +111,7 @@
         :param interval_skew: (int/float) Seconds to randomly skew the next interval
                               collection to spread out requests for PM intervals
         :param collect_attempts: (int) Max requests for a single PM interval before fail
+        :param create_attempts: (int) Max attempts to create PM Managed entities before stopping state machine
         """
         self.log = structlog.get_logger(device_id=device_id)
 
@@ -120,6 +123,7 @@
         self._tick_delay = tick_delay
         self._interval_skew = interval_skew
         self._collect_attempts = collect_attempts
+        self._create_attempts = create_attempts
 
         self._sync_time_task = tasks['sync-time']
         self._get_interval_task = tasks['collect-data']
@@ -150,6 +154,7 @@
         self._delete_me_deferred = None
         self._next_interval = None
         self._enet_entity_id = IndexPool(1024, 1)
+        self._add_pm_me_retry = 0
 
         # (Class ID, Instance ID) -> Collect attempts remaining
         self._pm_me_collect_retries = dict()
@@ -505,10 +510,15 @@
         def failure(reason):
             self.log.info('create-me-failure', reason=reason)
             self._current_task = None
-            for pm, me in mes.items():
-                self._add_pm_me[pm] = me
-
-            self._deferred = reactor.callLater(self._timeout_delay, self.failure)
+            if self._add_pm_me_retry <= self._create_attempts:
+              for pm, me in mes.items():
+                  self._add_pm_me[pm] = me
+              self._add_pm_me_retry += 1
+              self._deferred = reactor.callLater(self._timeout_delay, self.failure)
+            else:
+              # we cant seem to create any collection me, no point in doing anything
+              self.log.warn('unable-to-create-pm-me-disabling-collection', reason=reason)
+              self._deferred = reactor.callLater(self._timeout_delay, self.stop)
 
         self._current_task = self._create_pm_task(self._agent, self._device_id, mes)
         self._task_deferred = self._device.task_runner.queue_task(self._current_task)
