]> sigrok.org Git - libsigrokdecode.git/commitdiff
srd: onewire_link/network: Fix annotations, small cleanups.
authorUwe Hermann <redacted>
Sat, 21 Jul 2012 17:16:16 +0000 (19:16 +0200)
committerUwe Hermann <redacted>
Sat, 21 Jul 2012 19:47:54 +0000 (21:47 +0200)
The annotation types are 'Text' and 'Warnings', not 'Link' etc. as the
annotations of the onewire_link PD (for example) are already clearly
from the link layer. The annotation types should be different things/formats
of a specific PD's annotation output instead (like "Celsius" / "Kelvin"
for some temperature sensor, for example).

decoders/onewire_link/onewire_link.py
decoders/onewire_network/onewire_network.py

index 44ed65ac14a5b0c9b5964646c8cffd94911debcf..c8bda561b2e47217b1cb6fe4e1693493689ccb30 100644 (file)
@@ -32,10 +32,10 @@ class Decoder(srd.Decoder):
     inputs = ['logic']
     outputs = ['onewire_link']
     probes = [
-        {'id': 'owr', 'name': 'OWR', 'desc': '1-Wire bus'},
+        {'id': 'owr', 'name': 'OWR', 'desc': '1-Wire signal line'},
     ]
     optional_probes = [
-        {'id': 'pwr', 'name': 'PWR', 'desc': '1-Wire power'},
+        {'id': 'pwr', 'name': 'PWR', 'desc': '1-Wire power supply pin'},
     ]
     options = {
         'overdrive': ['Overdrive', 1],
@@ -50,19 +50,18 @@ class Decoder(srd.Decoder):
         'cnt_overdrive_reset': ['Overdrive mode reset time', 0],
     }
     annotations = [
-        ['Link', 'Link layer events (reset, presence, bit slots)'],
+        ['Text', 'Human-readable text'],
+        ['Warnings', 'Human-readable warnings'],
     ]
 
     def __init__(self, **kwargs):
         self.samplenum = 0
-        # Link layer variables
         self.state = 'WAIT FOR FALLING EDGE'
         self.present = 0
         self.bit = 0
         self.bit_cnt = 0
         self.command = 0
         self.overdrive = 0
-        # Event timing variables
         self.fall = 0
         self.rise = 0
 
@@ -74,25 +73,21 @@ class Decoder(srd.Decoder):
 
         # Check if samplerate is appropriate.
         if self.options['overdrive']:
-            self.put(0, 0, self.out_ann, [0,
-                ['NOTE: Sample rate checks assume overdrive mode.']])
             if self.samplerate < 2000000:
-                self.put(0, 0, self.out_ann, [0,
+                self.put(0, 0, self.out_ann, [1,
                     ['ERROR: Sampling rate is too low. Must be above 2MHz ' +
                      'for proper overdrive mode decoding.']])
             elif self.samplerate < 5000000:
-                self.put(0, 0, self.out_ann, [0,
+                self.put(0, 0, self.out_ann, [1,
                   ['WARNING: Sampling rate is suggested to be above 5MHz ' +
                    'for proper overdrive mode decoding.']])
         else:
-            self.put(0, 0, self.out_ann, [0,
-                ['NOTE: Sample rate checks assume normal mode only.']])
             if self.samplerate < 400000:
-                self.put(0, 0, self.out_ann, [0,
+                self.put(0, 0, self.out_ann, [1,
                     ['ERROR: Sampling rate is too low. Must be above ' +
                      '400kHz for proper normal mode decoding.']])
             elif (self.samplerate < 1000000):
-                self.put(0, 0, self.out_ann, [0,
+                self.put(0, 0, self.out_ann, [1,
                     ['WARNING: Sampling rate is suggested to be above ' +
                      '1MHz for proper normal mode decoding.']])
 
@@ -143,7 +138,7 @@ class Decoder(srd.Decoder):
         time_min = float(self.cnt_normal_bit) / self.samplerate
         time_max = float(self.cnt_normal_bit + 1) / self.samplerate
         if (time_min < 0.000005) or (time_max > 0.000015):
-            self.put(0, 0, self.out_ann, [0,
+            self.put(0, 0, self.out_ann, [1,
                 ['WARNING: The normal mode data sample time interval ' +
                  '(%2.1fus-%2.1fus) should be inside (5.0us, 15.0us).'
                  % (time_min * 1000000, time_max * 1000000)]])
@@ -151,7 +146,7 @@ class Decoder(srd.Decoder):
         time_min = float(self.cnt_normal_presence) / self.samplerate
         time_max = float(self.cnt_normal_presence + 1) / self.samplerate
         if (time_min < 0.0000681) or (time_max > 0.000075):
-            self.put(0, 0, self.out_ann, [0,
+            self.put(0, 0, self.out_ann, [1,
                 ['WARNING: The normal mode presence sample time interval ' +
                  '(%2.1fus-%2.1fus) should be inside (68.1us, 75.0us).'
                  % (time_min * 1000000, time_max * 1000000)]])
@@ -159,7 +154,7 @@ class Decoder(srd.Decoder):
         time_min = float(self.cnt_overdrive_bit) / self.samplerate
         time_max = float(self.cnt_overdrive_bit + 1) / self.samplerate
         if (time_min < 0.000001) or (time_max > 0.000002):
-            self.put(0, 0, self.out_ann, [0,
+            self.put(0, 0, self.out_ann, [1,
                 ['WARNING: The overdrive mode data sample time interval ' +
                  '(%2.1fus-%2.1fus) should be inside (1.0us, 2.0us).'
                  % (time_min * 1000000, time_max * 1000000)]])
@@ -167,7 +162,7 @@ class Decoder(srd.Decoder):
         time_min = float(self.cnt_overdrive_presence) / self.samplerate
         time_max = float(self.cnt_overdrive_presence + 1) / self.samplerate
         if (time_min < 0.0000073) or (time_max > 0.000010):
-            self.put(0, 0, self.out_ann, [0,
+            self.put(0, 0, self.out_ann, [1,
                 ['WARNING: The overdrive mode presence sample time interval ' +
                  '(%2.1fus-%2.1fus) should be inside (7.3us, 10.0us).'
                  % (time_min*1000000, time_max*1000000)]])
@@ -205,7 +200,7 @@ class Decoder(srd.Decoder):
                     continue
 
                 self.put(self.fall, self.samplenum, self.out_ann,
-                         [0, ['BIT: %01x' % self.bit]])
+                         [0, ['Bit: %d' % self.bit]])
                 self.put(self.fall, self.samplenum, self.out_proto,
                          ['BIT', self.bit])
 
@@ -215,7 +210,7 @@ class Decoder(srd.Decoder):
                     self.command |= (self.bit << self.bit_cnt)
                 elif self.bit_cnt == 8 and self.command in [0x3c, 0x69]:
                     self.put(self.fall, self.cnt_bit[self.overdrive],
-                             self.out_ann, [0, ['ENTER OVERDRIVE MODE']])
+                             self.out_ann, [0, ['Entering overdrive mode']])
                 # Increment the bit counter.
                 self.bit_cnt += 1
                 # Wait for next slot.
@@ -234,7 +229,7 @@ class Decoder(srd.Decoder):
                     # Exit overdrive mode.
                     if self.overdrive:
                         self.put(self.fall, self.cnt_bit[self.overdrive],
-                                 self.out_ann, [0, ['EXIT OVERDRIVE MODE']])
+                                 self.out_ann, [0, ['Exiting overdrive mode']])
                         self.overdrive = 0
                     # Clear command bit counter and data register.
                     self.bit_cnt = 0
@@ -264,8 +259,8 @@ class Decoder(srd.Decoder):
                     continue
 
                 self.put(self.fall, self.samplenum, self.out_ann,
-                         [0, ['RESET/PRESENCE: %s'
-                         % ('False' if self.present else 'True')]])
+                         [0, ['Reset/presence: %s'
+                         % ('false' if self.present else 'true')]])
                 self.put(self.fall, self.samplenum, self.out_proto,
                          ['RESET/PRESENCE', not self.present])
                 # Wait for next slot.
index f215344af9efc711deb39870b28730be5a0ee351..982a64ef28053e58d2c8cc2dd10b9bafe250d676 100644 (file)
@@ -47,14 +47,12 @@ class Decoder(srd.Decoder):
     optional_probes = []
     options = {}
     annotations = [
-        ['Network', 'Network layer events (device addressing)'],
+        ['Text', 'Human-readable text'],
     ]
 
     def __init__(self, **kwargs):
-        # Event timing variables
         self.beg = 0
         self.end = 0
-        # Network layer variables
         self.state = 'COMMAND'
         self.bit_cnt = 0
         self.search = 'P'
@@ -86,7 +84,7 @@ class Decoder(srd.Decoder):
             self.search = 'P'
             self.bit_cnt = 0
             self.put(ss, es, self.out_ann,
-                     [0, ['RESET/PRESENCE: %s' % ('True' if val else 'False')]])
+                     [0, ['Reset/presence: %s' % ('true' if val else 'false')]])
             self.put(ss, es, self.out_proto, ['RESET/PRESENCE', val])
             self.state = 'COMMAND'
             return
@@ -100,16 +98,16 @@ class Decoder(srd.Decoder):
             if self.onewire_collect(8, val, ss, es) == 0:
                 return
             if self.data in command:
-                self.putx([0, ['ROM COMMAND: 0x%02x \'%s\''
+                self.putx([0, ['ROM command: 0x%02x \'%s\''
                           % (self.data, command[self.data][0])]])
                 self.state = command[self.data][1]
             else:
-                self.putx([0, ['ROM COMMAND: 0x%02x \'%s\''
-                          % (self.data, 'UNRECOGNIZED')]])
+                self.putx([0, ['ROM command: 0x%02x \'%s\''
+                          % (self.data, 'unrecognized')]])
                 self.state = 'COMMAND ERROR'
         elif self.state == 'GET ROM':
             # A 64 bit device address is selected.
-            # Family code (1B) + serial number (6B) + CRC (1B)
+            # Family code (1 byte) + serial number (6 bytes) + CRC (1 byte)
             if self.onewire_collect(64, val, ss, es) == 0:
                 return
             self.rom = self.data & 0xffffffffffffffff
@@ -118,7 +116,7 @@ class Decoder(srd.Decoder):
             self.state = 'TRANSPORT'
         elif self.state == 'SEARCH ROM':
             # A 64 bit device address is searched for.
-            # Family code (1B) + serial number (6B) + CRC (1B)
+            # Family code (1 byte) + serial number (6 bytes) + CRC (1 byte)
             if self.onewire_search(64, val, ss, es) == 0:
                 return
             self.rom = self.data & 0xffffffffffffffff
@@ -129,13 +127,13 @@ class Decoder(srd.Decoder):
             # The transport layer is handled in byte sized units.
             if self.onewire_collect(8, val, ss, es) == 0:
                 return
-            self.putx([0, ['DATA: 0x%02x' % self.data]])
+            self.putx([0, ['Data: 0x%02x' % self.data]])
             self.puty(['DATA', self.data])
         elif self.state == 'COMMAND ERROR':
             # Since the command is not recognized, print raw data.
             if self.onewire_collect(8, val, ss, es) == 0:
                 return
-            self.putx([0, ['ROM ERROR DATA: 0x%02x' % self.data]])
+            self.putx([0, ['ROM error data: 0x%02x' % self.data]])
         else:
             raise Exception('Invalid state: %s' % self.state)