diff --git a/src/apex/nonrepeating_buffer.py b/src/apex/nonrepeating_buffer.py
index d58ea1acaf516f336831cd9cebee0f6b323c3838..5bc7683f5abf3abd16170481b7303215b0a8cf57 100644
--- a/src/apex/nonrepeating_buffer.py
+++ b/src/apex/nonrepeating_buffer.py
@@ -48,6 +48,9 @@ class NonrepeatingBuffer(object):
             if not frame:
                 return frame
             frame_hash = str(apex.aprs.util.hash_frame(frame))
-            self.packet_cache[frame_hash] = frame
-            apex.echo_colorized_frame(frame, self.base_name, True)
-            return frame
+            if frame_hash not in self.packet_cache:
+                self.packet_cache[frame_hash] = frame
+                apex.echo_colorized_frame(frame, self.base_name, True)
+                return frame
+            else:
+                return None