]> sigrok.org Git - libsigrokdecode.git/blobdiff - decoders/ade77xx/pd.py
decoders: Fix incorrect 'outputs' fields.
[libsigrokdecode.git] / decoders / ade77xx / pd.py
index 053575e868cc7eecfa0bcb07832bb1ef389721aa..5a24a25e5091dea3f1c8ac8c8a09196b1e9aa866 100644 (file)
@@ -26,14 +26,15 @@ import sigrokdecode as srd
 from .lists import *
 
 class Decoder(srd.Decoder):
-    api_version = 2
+    api_version = 3
     id = 'ade77xx'
     name = 'ADE77xx'
     longname = 'Analog Devices ADE77xx'
     desc = 'Poly phase multifunction energy metering IC protocol.'
     license = 'mit'
     inputs = ['spi']
-    outputs = ['ade77xx']
+    outputs = []
+    tags = ['Analog/digital', 'IC', 'Sensor']
     annotations = (
         ('read', 'Register read commands'),
         ('write', 'Register write commands'),
@@ -45,14 +46,17 @@ class Decoder(srd.Decoder):
         ('warnings', 'Warnings', (2,)),
     )
 
-    def reset(self):
+    def reset_data(self):
         self.expected = 0
         self.mosi_bytes, self.miso_bytes = [], []
 
     def __init__(self):
-        self.ss_cmd, self.es_cmd = 0, 0
         self.reset()
 
+    def reset(self):
+        self.ss_cmd, self.es_cmd = 0, 0
+        self.reset_data()
+
     def start(self):
         self.out_ann = self.register(srd.OUTPUT_ANN)
 
@@ -77,7 +81,7 @@ class Decoder(srd.Decoder):
                     idx = 1 if write else 0
                     self.putx([idx, ['%s: %s' % (rblob[0], "SHORT")]])
                     self.put_warn([self.ss_cmd, es], "Short transfer!")
-                self.reset()
+                self.reset_data()
             return
 
         # Don't care about anything else.
@@ -124,4 +128,4 @@ class Decoder(srd.Decoder):
         else:
             self.putx([0, ['%s: %#x' % (rblob[0], vali)]])
 
-        self.reset()
+        self.reset_data()