X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=decoders%2Fpan1321%2Fpd.py;h=6c931147a1eddab7a793df702b5109f0116942ae;hb=6cbba91f23b9f9ace75b4722c9c0776b9211008d;hp=2796fe2b04dc066440eeeedc6295644c66792561;hpb=c761524941fcb2237ceb65082e504e5e48e62a05;p=libsigrokdecode.git diff --git a/decoders/pan1321/pd.py b/decoders/pan1321/pd.py index 2796fe2..6c93114 100644 --- a/decoders/pan1321/pd.py +++ b/decoders/pan1321/pd.py @@ -14,8 +14,7 @@ ## GNU General Public License for more details. ## ## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +## along with this program; if not, see . ## import sigrokdecode as srd @@ -25,21 +24,25 @@ RX = 0 TX = 1 class Decoder(srd.Decoder): - api_version = 1 + api_version = 3 id = 'pan1321' name = 'PAN1321' longname = 'Panasonic PAN1321' desc = 'Bluetooth RF module with Serial Port Profile (SPP).' license = 'gplv2+' inputs = ['uart'] - outputs = ['pan1321'] + outputs = [] + tags = ['Wireless/RF'] annotations = ( ('text-verbose', 'Human-readable text (verbose)'), ('text', 'Human-readable text'), ('warnings', 'Human-readable warnings'), ) - def __init__(self, **kwargs): + def __init__(self): + self.reset() + + def reset(self): self.cmd = ['', ''] self.ss_block = None @@ -136,6 +139,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 @@ -154,8 +160,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] = '' -