diff --git a/README.md b/README.md index e69de29..215a19d 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,62 @@ +# Python Bindings for LimeDriver + +This is a Python package for the [LimeDriver](https://github.com/nqrduck/LimeDriver/) library. + +## Dependencies + +To build the Python bindings, you will need to have the dependencies for LimeDriver installed, as well as the Python development headers. + +### Debian/Ubuntu + +```bash +sudo apt-get install g++ cmake libhdf5-dev liblimesuite-dev python3-dev python3-pip python3-venv +``` + +### Arch Linux + +```bash +sudo pacman -S gcc cmake hdf5 limesuite python python-pip +``` + +## Installation + +It is recommended to install the Python bindings in a virtual environment. To create a new virtual environment, run the following commands: + +```bash +python3 -m venv venv +source venv/bin/activate +``` + +The Python bindings can be installed using pip: + +```bash +pip install . +``` + +## Usage + +The Python bindings provide a high-level interface to the LimeDriver library: + +```python +# Import the LimeDriver module +import limedriver + +# Set the number of pulses to generate +Npulses = 1000 + +# Create a new PyLimeConfig object +config = limedriver.PyLimeConfig(Npulses) + +# Modify the config as needed +config.srate = 1e6 + +# Execute the config on the LimeSDR +config.run() + +# Get the path to the output file +filename = config.get_path() + +# Use the built-in HDF5 reader to read the output file +data = limedriver.hdf_reader.HDF(filename) +data.print_params() +```