diff --git a/gr-jay/grc/CMakeLists.txt b/gr-jay/grc/CMakeLists.txt
index ff4bead..09c110f 100644
--- a/gr-jay/grc/CMakeLists.txt
+++ b/gr-jay/grc/CMakeLists.txt
@@ -21,5 +21,6 @@ install(FILES
jay_square_ff.xml
jay_square2_ff.xml
jay_bit_slicer.xml
- jay_pocsag_decoder.xml DESTINATION share/gnuradio/grc/blocks
+ jay_pocsag_decoder.xml
+ jay_bit_packer.xml DESTINATION share/gnuradio/grc/blocks
)
diff --git a/gr-jay/grc/jay_bit_packer.xml b/gr-jay/grc/jay_bit_packer.xml
index bcb1a94..f2d94f8 100644
--- a/gr-jay/grc/jay_bit_packer.xml
+++ b/gr-jay/grc/jay_bit_packer.xml
@@ -5,11 +5,6 @@
[JAY]import jayjay.bit_packer($numBitsIn, $numBitsOut, $endianess)
-
Number of input bitsnumBitsIn
@@ -17,7 +12,7 @@
Number of output bits
- numBitsOut,
+ numBitsOutint
@@ -25,22 +20,10 @@
endianessint
-
-
inint
-
-
outint
diff --git a/gr-jay/include/jay/CMakeLists.txt b/gr-jay/include/jay/CMakeLists.txt
index 50b959d..695ecd4 100644
--- a/gr-jay/include/jay/CMakeLists.txt
+++ b/gr-jay/include/jay/CMakeLists.txt
@@ -26,5 +26,6 @@ install(FILES
square_ff.h
square2_ff.h
bit_slicer.h
- pocsag_decoder.h DESTINATION include/jay
+ pocsag_decoder.h
+ bit_packer.h DESTINATION include/jay
)
diff --git a/gr-jay/lib/CMakeLists.txt b/gr-jay/lib/CMakeLists.txt
index e031fb5..f3d6902 100644
--- a/gr-jay/lib/CMakeLists.txt
+++ b/gr-jay/lib/CMakeLists.txt
@@ -30,7 +30,8 @@ list(APPEND jay_sources
square2_ff_impl.cc
bit_slicer_impl.cc
PocsagDecoder.cpp
- pocsag_decoder_impl.cc )
+ pocsag_decoder_impl.cc
+ bit_packer_impl.cc )
set(jay_sources "${jay_sources}" PARENT_SCOPE)
if(NOT jay_sources)
diff --git a/gr-jay/python/CMakeLists.txt b/gr-jay/python/CMakeLists.txt
index 07547ae..3d337e8 100644
--- a/gr-jay/python/CMakeLists.txt
+++ b/gr-jay/python/CMakeLists.txt
@@ -46,3 +46,4 @@ GR_ADD_TEST(qa_square_ff ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_squ
GR_ADD_TEST(qa_square2_ff ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_square2_ff.py)
GR_ADD_TEST(qa_bit_slicer ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_bit_slicer.py)
GR_ADD_TEST(qa_pocsag_decoder ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_pocsag_decoder.py)
+GR_ADD_TEST(qa_bit_packer ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_bit_packer.py)
diff --git a/gr-jay/python/qa_bit_packer.py b/gr-jay/python/qa_bit_packer.py
new file mode 100755
index 0000000..37cb332
--- /dev/null
+++ b/gr-jay/python/qa_bit_packer.py
@@ -0,0 +1,41 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2019 Jay Arrowfield.
+#
+# This is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# This software is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this software; see the file COPYING. If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+#
+
+from gnuradio import gr, gr_unittest
+from gnuradio import blocks
+import jay_swig as jay
+
+class qa_bit_packer (gr_unittest.TestCase):
+
+ def setUp (self):
+ self.tb = gr.top_block ()
+
+ def tearDown (self):
+ self.tb = None
+
+ def test_001_t (self):
+ # set up fg
+ self.tb.run ()
+ # check data
+
+
+if __name__ == '__main__':
+ gr_unittest.run(qa_bit_packer, "qa_bit_packer.xml")
diff --git a/gr-jay/swig/jay_swig.i b/gr-jay/swig/jay_swig.i
index 0cd5a77..f18fc63 100644
--- a/gr-jay/swig/jay_swig.i
+++ b/gr-jay/swig/jay_swig.i
@@ -12,6 +12,7 @@
#include "jay/square2_ff.h"
#include "jay/bit_slicer.h"
#include "jay/pocsag_decoder.h"
+#include "jay/bit_packer.h"
%}
@@ -24,3 +25,5 @@ GR_SWIG_BLOCK_MAGIC2(jay, bit_slicer);
%include "jay/pocsag_decoder.h"
GR_SWIG_BLOCK_MAGIC2(jay, pocsag_decoder);
+%include "jay/bit_packer.h"
+GR_SWIG_BLOCK_MAGIC2(jay, bit_packer);