All Projects → radiosd → PlutoSdr

radiosd / PlutoSdr

Licence: GPL-2.0, LGPL-3.0 licenses found Licenses found GPL-2.0 LICENSE LGPL-3.0 LGPLv3_LICENSE.txt
Access and cotrol of PlutoSDR hardware using python bindings to libiio

Programming Languages

Jupyter Notebook
11667 projects
python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to PlutoSdr

plutosdr-m2k-drivers-win
Windows USB drivers for PlutoSDR and ADALM2000
Stars: ✭ 46 (+100%)
Mutual labels:  plutosdr
plutoscripts
Scripts for ADALM-Pluto device
Stars: ✭ 31 (+34.78%)
Mutual labels:  plutosdr
multi-sdr-gps-sim
multi-sdr-gps-sim generates a IQ data stream on-the-fly to simulate a GPS L1 baseband signal using a SDR platform like HackRF or ADLAM-Pluto.
Stars: ✭ 53 (+130.43%)
Mutual labels:  plutosdr
oscimpDigital
OscillatorIMP ecosystem for the digital characterization of ultrastable oscillators and Software Defined Radio (SDR) frontend processing
Stars: ✭ 41 (+78.26%)
Mutual labels:  plutosdr
sdrberry
Raspberry pi SDR tranceiver using lvgl gui
Stars: ✭ 25 (+8.7%)
Mutual labels:  plutosdr

PlutoSDR

A package for access and control the PlutSDR hardware. The PlutoSdr file defines a class for control of the hardware. There is a 2 tone DDS generator built into the Tx firmware and a separate file and class used to define the control of that. An instance of PlutoSdr automatically creates the DDS

Getting Started

Dependancies:

iio

changeExt

Installation

Installation of PlutoSdr is via the standard python setup.py install. Then:

from pluto.pluto_sdr import PlutoSdr

sdr = PlutoSdr()

The example above uses the default url for creating the PlutoSdr class instance. The instance has properties to control RF functions of both the Rx and the Tx as well as the internal DDS to transmit up to 2 tones for testing. In general, frequency controls are in MHz and amplitude controls are dBfs. There are also functions to readRx() and writeTx() samples, providing a straight forward interface to the RF hardware. Data can be transferred via numpy arrays either as interleaved IQ np.int16 or complex floats via np.complex128.

Testing

Basic unittests are included, but are limited to confirming the operation of properies and simple functions.

python -m unittest discover

Tests using the hardware such as transmitting and receiving data can be tried using the ipython notebooks included.

  • iio_context_test.ipynb
    • Demonstrating access to the internal devices using the iio module
  • pluto_test.ipynb
    • Demonstrating readRx and writeTx functions

License

This software is Copyright (C) 2018 Radio System Design Ltd. and released under GNU Lesser General Public License. See the license file in the repository for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].