from .lists import *
class Decoder(srd.Decoder):
- api_version = 1
+ api_version = 2
id = 'ir_rc5'
name = 'IR RC-5'
longname = 'IR RC-5'
license = 'gplv2+'
inputs = ['logic']
outputs = ['ir_rc5']
- probes = [
+ channels = (
{'id': 'ir', 'name': 'IR', 'desc': 'IR data line'},
- ]
- optional_probes = []
- options = {
- 'polarity': ['Polarity', 'active-low'],
- 'protocol': ['Protocol type', 'standard'],
- }
- annotations = [
- ['bit', 'Bit'],
- ['startbit1', 'Startbit 1'],
- ['startbit2', 'Startbit 2'],
- ['togglebit-0', 'Toggle bit 0'],
- ['togglebit-1', 'Toggle bit 1'],
- ['address', 'Address'],
- ['command', 'Command'],
- ]
+ )
+ options = (
+ {'id': 'polarity', 'desc': 'Polarity', 'default': 'active-low',
+ 'values': ('active-low', 'active-high')},
+ {'id': 'protocol', 'desc': 'Protocol type', 'default': 'standard',
+ 'values': ('standard', 'extended')},
+ )
+ annotations = (
+ ('bit', 'Bit'),
+ ('startbit1', 'Startbit 1'),
+ ('startbit2', 'Startbit 2'),
+ ('togglebit-0', 'Toggle bit 0'),
+ ('togglebit-1', 'Toggle bit 1'),
+ ('address', 'Address'),
+ ('command', 'Command'),
+ )
annotation_rows = (
('bits', 'Bits', (0,)),
('fields', 'Fields', (1, 2, 3, 4, 5, 6)),
if bit != None:
self.bits.append([self.samplenum, bit])
- if len(self.bits) == 14 + 1:
+ if len(self.bits) == 14:
self.handle_bits()
self.reset_decoder_state()