diff --git a/calibrate.py b/calibrate.py index 903d3fa..8bae50c 100644 --- a/calibrate.py +++ b/calibrate.py @@ -1,3 +1,4 @@ +#!/usr/bin/env python import numpy as np import common import sigproc diff --git a/errors.py b/errors.py old mode 100644 new mode 100755 index 9b69767..391b0cf --- a/errors.py +++ b/errors.py @@ -1,3 +1,4 @@ +#!/usr/bin/env python import common import sys diff --git a/recv.py b/recv.py old mode 100644 new mode 100755 index e396f75..15275f1 --- a/recv.py +++ b/recv.py @@ -1,3 +1,4 @@ +#!/usr/bin/env python import numpy as np import logging import itertools @@ -145,6 +146,8 @@ def receive(signal, freqs): def main(fname): + log.info('Running MODEM @ {:.1f} kbps'.format(sigproc.modem_bps / 1e3)) + _, x = load(open(fname, 'rb')) result = detect(x, Fc) if result is None: diff --git a/send.py b/send.py old mode 100644 new mode 100755 index d8d3bbf..c09a033 --- a/send.py +++ b/send.py @@ -1,10 +1,10 @@ +#!/usr/bin/env python import numpy as np import time import logging import itertools -logging.basicConfig(level=0, format='%(message)s') log = logging.getLogger(__name__) import sigproc @@ -42,11 +42,9 @@ def modulate(sig, bits): if all(symbols == 0): break -if __name__ == '__main__': - +def main(): import ecc - bps = baud * sigproc.modulator.bits_per_symbol * len(sym.carrier) - log.info('Running MODEM @ {:.1f} kbps'.format(bps / 1e3)) + log.info('Running MODEM @ {:.1f} kbps'.format(sigproc.modem_bps / 1e3)) with open('tx.int16', 'wb') as fd: start(fd, sym.carrier[carrier_index]) @@ -56,13 +54,6 @@ if __name__ == '__main__': bits = to_bits(ecc.encode(data)) modulate(fd, bits) - - from wave import play, record - - r = record('rx.int16') - start = time.time() - p = play(fd.name) - p.wait() - log.debug('Took %.2f seconds', time.time() - start) - time.sleep(1) - r.stop() +if __name__ == '__main__': + logging.basicConfig(level=logging.DEBUG, format='%(message)s') + main() diff --git a/show.py b/show.py old mode 100644 new mode 100755 index 21b848d..7edfb0a --- a/show.py +++ b/show.py @@ -1,3 +1,4 @@ +#!/usr/bin/env python import pylab import numpy as np diff --git a/sigproc.py b/sigproc.py index 0932323..4fceac5 100644 --- a/sigproc.py +++ b/sigproc.py @@ -58,6 +58,8 @@ _xs, _ys = np.linspace(-1, 1, 4), np.linspace(-1, 1, 4) # QAM-16 _symbols = np.array([complex(x, y) for x in _xs for y in _ys]) * np.sqrt(0.5) modulator = QAM(_symbols) +modem_bps = common.baud * modulator.bits_per_symbol * len(common.frequencies) + def clip(x, lims): return min(max(x, lims[0]), lims[1])