diff --git a/gr_grc/scripts/count_zeros.py b/gr_grc/scripts/count_zeros.py
index e96bb484eaf7c65e5a44d00e2bf41de07d360e39..1b0eeed014e9e56568da24a219f2fa5fbd3b64c5 100755
--- a/gr_grc/scripts/count_zeros.py
+++ b/gr_grc/scripts/count_zeros.py
@@ -1,56 +1,48 @@
 #!/usr/bin/env python2
 # -*- coding: utf-8 -*-
-##################################################
-# GNU Radio Python Flow Graph
-# Title: Top Block
-# Generated: Fri Jan 22 17:58:53 2016
-##################################################
 
-import time
-import struct
-import array
+import sys
 
 from gnuradio import blocks
-from gnuradio import eng_notation
 from gnuradio import gr
-from gnuradio.eng_option import eng_option
-from gnuradio.filter import firdes
-from optparse import OptionParser
 
 import numpy as np
 
 
 class top_block(gr.top_block):
 
-    def __init__(self):
+    def __init__(self, samp_rate=2e6, file_path=sys.argv[1]):
         gr.top_block.__init__(self, "Top Block")
 
         ##################################################
         # Variables
         ##################################################
-        self.samp_rate = samp_rate = 2e6
-        self.freq = freq = 868e6
+        self.samp_rate = samp_rate
 
-        ##################################################
-        # Message queues (added by grcconvert)
-        ##################################################
+        # Queue
         self.msgq_out = blocks_message_sink_0_msgq_out = gr.msg_queue(0)
 
         ##################################################
         # Blocks
         ##################################################
-        self.blocks_throttle_0 = blocks.throttle(gr.sizeof_gr_complex*1, 10*samp_rate,True)
-        self.blocks_threshold_ff_0 = blocks.threshold_ff(0.001, 0.001, 0)
-        self.blocks_message_sink_0 = blocks.message_sink(gr.sizeof_float*1, blocks_message_sink_0_msgq_out, False)
-        self.blocks_file_source_0 = blocks.file_source(gr.sizeof_gr_complex*1, "/home/meise/tmp/iq_dumps/enocean/868_2m_enocean.iq", False)
+        self.blocks_throttle_0 = blocks.throttle(gr.sizeof_gr_complex*1, \
+                                                 10*samp_rate, \
+                                                 True)
+        self.blocks_threshold_ff_0 = blocks.threshold_ff(0.0006, 0.0006, 0)
+        self.blocks_message_sink_0 = blocks.message_sink(gr.sizeof_float*1, \
+                                                         blocks_message_sink_0_msgq_out, \
+                                                         False)
+        self.blocks_file_source_0 = blocks.file_source(gr.sizeof_gr_complex*1, \
+                                                       str(file_path), \
+                                                       False)
         self.blocks_complex_to_mag_squared_0 = blocks.complex_to_mag_squared(1)
 
         ##################################################
         # Connections
         ##################################################
+        # file_source → throttle → complex_to_max_squared → threshold → message_sink
         self.connect((self.blocks_complex_to_mag_squared_0, 0), (self.blocks_threshold_ff_0, 0))
         self.connect((self.blocks_file_source_0, 0), (self.blocks_throttle_0, 0))
-        # removed by grcconvert: # self.connect((self.blocks_message_sink_0, 'msg'), (self, 0))
         self.connect((self.blocks_threshold_ff_0, 0), (self.blocks_message_sink_0, 0))
         self.connect((self.blocks_throttle_0, 0), (self.blocks_complex_to_mag_squared_0, 0))
 
@@ -61,18 +53,28 @@ class top_block(gr.top_block):
         self.samp_rate = samp_rate
         self.blocks_throttle_0.set_sample_rate(self.samp_rate)
 
-    def get_freq(self):
-        return self.freq
-
-    def set_freq(self, freq):
-        self.freq = freq
-
 
 def main(top_block_cls=top_block, options=None):
+    """
+    What does this function do?
+
+    1. Run flowgraph and do energy based signal detection write results into
+       message queue.
+    2. Read iq dump file and count samples.
+    3. Start reading data from flowgraph message queue.
+    4. Counting some data:
+      a) 1s and 0s
+      b) number of all samples
+    5. If there are ones, save section into a array with hashes and merge depending
+       sections.
+    6. Print results.
+    """
+    # Section 1
     tb = top_block_cls()
     tb.start()
 
-    data = np.memmap(open("/home/meise/tmp/iq_dumps/enocean/868_2m_enocean.iq"), mode="r", dtype=np.complex64)
+    # Section 2
+    data = np.memmap(open(sys.argv[1]), mode="r", dtype=np.complex64)
     samples_in_file = len(data)
     print("sum of all samples: %s\n" % samples_in_file)
 
@@ -80,33 +82,86 @@ def main(top_block_cls=top_block, options=None):
     count_one   = 0
     samples_sum = 0
 
+    arrays_with_ones = []
+
+    # Section 3
+    # just loop until all samples are processed
     while True:
         # pull from message queue
         msg = tb.msgq_out.delete_head()
         msg_string = msg.to_string()
 
-#        # extract floats from msg string
-#        # it is slow. very slow! :/
-#        for i in range(0,len(sample),4):
-#            # unpack sample to have a tuples
-#            unpacked = struct.unpack_from('f', sample[i:i+4])
-#            samples.append(unpacked[0])
-#            if len(unpacked) != 1:
-#                print("unpacked length: %s" % (len(unpacked)))
-
         # convert string with floats into an numpy array
         samples = np.fromstring(msg_string, dtype='float32')
-        # do some counting
-        count_one += np.count_nonzero(samples)
+        # Section 4: do some counting
+        ones = np.count_nonzero(samples)
+        count_one += ones
         count_zero += np.count_nonzero(samples != 1.0)
 
+        # Section 5
+        if ones > 0:
+            if len(arrays_with_ones) == 0:
+                hash = {}
+                hash['count_before_array'] = samples_sum
+                hash['samples'] = samples
+
+                arrays_with_ones.append(hash)
+            else:
+                last_recorded_samples = arrays_with_ones[-1]
+                if (last_recorded_samples['count_before_array'] + \
+                    len(last_recorded_samples['samples'])) == samples_sum:
+
+                    for sample in samples:
+                        arrays_with_ones[-1]['samples'] = np.append( \
+                                arrays_with_ones[-1]['samples'], sample \
+                        )
+
+                else:
+                    hash = {}
+                    hash['count_before_array'] = int(samples_sum)
+                    hash['samples'] = samples
+                    arrays_with_ones.append(hash)
+
+
         samples_sum += len(samples)
         if samples_sum == samples_in_file:
             break
 
+    # Section 6
     print("%s of %s sample" % (samples_sum, samples_in_file))
-    print("one: %s" % count_one)
     print("zero: %s" % count_zero)
+    print("one: %s" % count_one)
+    print("ones in time (1/2e6)*%s = %ss = %sms\n" % (count_one, 1/2e6*count_one, 1/2e6*count_one*1000))
+    print("print sections with ones:")
+
+    for hash in arrays_with_ones:
+        string = ""
+        print("Count: %s" % hash['count_before_array'])
+        for items in hash['samples']:
+            string += str(int(items))
+
+        print("%s\n" % string)
+
 
 if __name__ == '__main__':
     main()
+
+
+./count_zeros.py /home/meise/tmp/iq_dumps/enocean/868_2m_10db_rf_enocean_2_-1a_up.iq
+Using Volk machine: sse4_1_64_orc
+sum of all samples: 22021632
+
+22021632 of 22021632 sample
+zero: 22019706
+one: 1926
+ones in time (1/2e6)*1926 = 0.000963s = 0.963ms
+
+print sections with ones:
+Count: 15420758
+0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111111111000000000000000001111111111111110000000000000000011111111111111100000000000000000111111111111111000000000000000001111111111111111111111111111111100000000000000001111111111111111000000000000000011111111111111100000000000000000000000000000000001111111111111111111111111111110000000000000000011111111111111111111111111111111111111111111111000000000000000001111111111111111111111111111111111111111111111100000000000000000111111111111111100000000000000000000000000000000111111111111111000000000000000000000000000000000111111111111111100000000000000000000000000000000000000000000000000000000000000001111111111111111111111111111111000000000000000000000000000000000111111111111111100000000000000000000000000000000111111111111111100000000000000000000000000000000000000000000000000000000000000001111111111111111111111111111111000000000000000000000000000000000111111111111111000000000000000001111111111111111111111111111111100000000000000000111111111111111111111111111111111111111111111110000000000000000000000000000000000000000000000000000000000000000111111111111111000000000000000001111111111111111111111111111111100000000000000000111111111111111000000000000000011111111111111110000000000000000000000000000000011111111111111110000000000000000111111111111111111111111111111111111111111111111000000000000000011111111111111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
+
+Count: 15428950
+0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111111111000000000000000001111111111111110000000000000000011111111111111100000000000000001111111111111111100000000000000001111111111111111111111111111111000000000000000001111111111111110000000000000000011111111111111110000000000000000000000000000000011111111111111111111111111111111000000000000000011111111111111111111111111111111111111111111111100000000000000001111111111111111111111111111111111111111111111110000000000000000111111111111111100000000000000000000000000000000111111111111111000000000000000000000000000000000111111111111111100000000000000000000000000000000000000000000000000000000000000001111111111111111111111111111111000000000000000000000000000000000111111111111111000000000000000000000000000000000111111111111111000000000000000000000000000000000000000000000000000000000000000001111111111111111111111111111111100000000000000000000000000000000111111111111111100000000000000000111111111111111111111111111111100000000000000001111111111111111111111111111111111111111111111100000000000000000000000000000000000000000000000000000000000000000111111111111111000000000000000001111111111111111111111111111111100000000000000001111111111111111000000000000000011111111111111110000000000000000000000000000000001111111111111110000000000000000111111111111111111111111111111111111111111111111000000000000000011111111111111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
+
+Count: 15474006
+0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011111111111111110000000000000000011111111111111100000000000000000011111111111111000000000000000011111111111111110000000000000000011111111111111111111111111111111000000000000000011111111111111110000000000000000111111111111111000000000000000000000000000000001111111111111111111111111111111100000000000000001011111111111111111111111111111111111111111111110000000000000000011111111111111111111111111111111111111111111111000000000000000001111111111111110000000000000000000000000000000001111111111111110000000000000000000000000000000001111111111111110000000000000000000000000000000000000000000000000000000000000000011111111111111111111111111111111000000000000000000000000000000001111111111111110000000000000000000000000000000011111111111111110000000000000000000000000000000000000000000000000000000000000000011111111111111111111111111111110000000000000000000000000000000001111111111111111000000000000000011111111111111111111111111111110000000000000000111111111111111111111111111111111111111111111111000000000000000000000000000000000000000000000000000000000000000001111111111111111000000000000000011111111111111111111111111111111000000000000000111111111111111100000000000000000111111111111111100000000000000000000000000000000111111111111111100000000000000001111111111111111111111111111111111111111111111100000000000000000111111111111111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000