The decoder cannot know the state of the input signal before the start
of the capture. Assuming the RESET state results in incorrect output for
data bits which we don't know the context of. Start from unknown state
instead until a reliable condition is seen to synchronize to.
def reset(self):
self.ss = self.es = self.ss_byte = -1
self.bits = []
- self.cmd = 'RESET'
+ self.cmd = None
def metadata(self, key, value):
if key == srd.SRD_CONF_SAMPLERATE:
self.put(bit_ss, bit_es, self.out_ann, [cls, texts])
cls, texts = lookup_proto_ann_txt(self.cmd, {'data': databyte})
- self.putx([cls, texts])
+ if cls:
+ self.putx([cls, texts])
# Done with this packet.
self.bits = []