]> sigrok.org Git - libsigrokdecode.git/blobdiff - decoders/ir_nec/pd.py
ir_nec: Annotate IR frame already at the end of the STOP bit
[libsigrokdecode.git] / decoders / ir_nec / pd.py
index 0c4987f6fe234dc56ec2fb6e8fca16db42940e03..05c8c006655797ccf03b323f6cb92660f4e61dda 100644 (file)
@@ -228,9 +228,12 @@ class Decoder(srd.Decoder):
                 (self.ir,) = self.wait({Pin.IR: 'e'})
 
             if self.ir != active:
-                # Save the non-active edge, then wait for the next edge.
+                # Save the location of the non-active edge (recessive),
+                # then wait for the next edge. Immediately process the
+                # end of the STOP bit which completes an IR frame.
                 self.ss_other_edge = self.samplenum
-                continue
+                if self.state != 'STOP':
+                    continue
 
             # Reset internal state for long periods of idle level.
             width = self.samplenum - self.ss_bit