From 2f5f44e82e487ab72874881f1a31b3be06b42b8b Mon Sep 17 00:00:00 2001 From: Gabriel Mariano Marcelino Date: Thu, 29 Aug 2024 03:15:53 -0300 Subject: [PATCH] Transmission with Pluto SDR working! closes #110 --- spacelab_transmitter/pluto.py | 14 +++++++++++++- spacelab_transmitter/version.py | 2 +- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/spacelab_transmitter/pluto.py b/spacelab_transmitter/pluto.py index d3cb664..920b78d 100644 --- a/spacelab_transmitter/pluto.py +++ b/spacelab_transmitter/pluto.py @@ -22,6 +22,9 @@ import adi +import numpy as np +from scipy import signal +import time class Pluto: """ @@ -34,10 +37,11 @@ def __init__(self, sample_rate, gain): :param sample_rate: Sample rate in S/s :param gain: gain in dB (valid range is -90 to 0 dB) """ + self._sample_rate = sample_rate self._pluto = adi.Pluto("ip:192.168.2.1") + self._pluto.tx_hardwaregain_chan0 = int(gain) self._pluto.sample_rate = int(sample_rate) self._pluto.tx_rf_bandwidth = int(sample_rate) - self._pluto.tx_hardwaregain_chan0 = int(gain) def transmit(self, samples, dur, rate, freq): """ @@ -50,7 +54,15 @@ def transmit(self, samples, dur, rate, freq): :return: None. """ + samples = samples / np.max(np.abs(samples)) + samples = samples.astype(np.complex64) + samples = signal.resample_poly(samples, self._sample_rate, rate) samples *= 2**14 # The PlutoSDR expects samples to be between -2^14 and +2^14, not -1 and +1 like some SDRs + self._pluto.tx_lo = int(freq) self._pluto.tx(samples) + + time.sleep(dur) + + return True diff --git a/spacelab_transmitter/version.py b/spacelab_transmitter/version.py index 40e8b49..bc70130 100644 --- a/spacelab_transmitter/version.py +++ b/spacelab_transmitter/version.py @@ -24,7 +24,7 @@ __copyright__ = "Copyright The SpaceLab-Transmitter Contributors" __credits__ = ["Gabriel Mariano Marcelino, Vitória Beatriz Bianchin"] __license__ = "GPLv3" -__version__ = "0.4.11" +__version__ = "0.4.12" __maintainer__ = "Gabriel Mariano Marcelino - PU5GMA" __email__ = "gabriel.mm8@gmail.com" __status__ = "Development"