]> sigrok.org Git - libsigrokdecode.git/blobdiff - decoders/pan1321/pd.py
Use consistent __init__() format across all PDs.
[libsigrokdecode.git] / decoders / pan1321 / pd.py
index f345506cdac69aea42cc258dcfe1a4dfa4c175e7..a8938c60f6bd961f6972bf275be58004d75de025 100644 (file)
@@ -25,7 +25,7 @@ RX = 0
 TX = 1
 
 class Decoder(srd.Decoder):
-    api_version = 1
+    api_version = 2
     id = 'pan1321'
     name = 'PAN1321'
     longname = 'Panasonic PAN1321'
@@ -33,21 +33,17 @@ class Decoder(srd.Decoder):
     license = 'gplv2+'
     inputs = ['uart']
     outputs = ['pan1321']
-    probes = []
-    optional_probes = []
-    options = {}
-    annotations = [
-        ['text-verbose', 'Human-readable text (verbose)'],
-        ['text', 'Human-readable text'],
-        ['warnings', 'Human-readable warnings'],
-    ]
-
-    def __init__(self, **kwargs):
+    annotations = (
+        ('text-verbose', 'Human-readable text (verbose)'),
+        ('text', 'Human-readable text'),
+        ('warnings', 'Human-readable warnings'),
+    )
+
+    def __init__(self):
         self.cmd = ['', '']
         self.ss_block = None
 
     def start(self):
-        # self.out_python = self.register(srd.OUTPUT_PYTHON)
         self.out_ann = self.register(srd.OUTPUT_ANN)
 
     def putx(self, data):
@@ -140,6 +136,9 @@ class Decoder(srd.Decoder):
         if ptype != 'DATA':
             return
 
+        # We're only interested in the byte value (not individual bits).
+        pdata = pdata[0]
+
         # If this is the start of a command/reply, remember the start sample.
         if self.cmd[rxtx] == '':
             self.ss_block = ss
@@ -158,8 +157,5 @@ class Decoder(srd.Decoder):
             self.handle_device_reply(rxtx, self.cmd[rxtx][:-2])
         elif rxtx == TX:
             self.handle_host_command(rxtx, self.cmd[rxtx][:-2])
-        else:
-            raise Exception('Invalid rxtx value: %d' % rxtx)
 
         self.cmd[rxtx] = ''
-