Commit graph

106 commits

Author SHA1 Message Date
jupfi c0299e9232 Added OS restriction (linux). 2024-04-23 17:55:00 +02:00
Julia P 2af14f0272
Update README.md
Fixed typo.
2024-04-23 11:57:15 +02:00
Pfitzer, Julia 294a95f121 Fixed filenames, updated README. 2024-04-23 11:23:57 +02:00
jupfi 7428508be1 Splitting up deployment into different workflow files to avoid timeout. 2024-04-23 06:22:03 +02:00
jupfi 6d448e0857 Splitting up build into multiple jobs to avoid timeout. 2024-04-22 19:57:29 +02:00
Pfitzer, Julia 2bc6ba2019 Removed sudo. 2024-04-22 13:24:17 +02:00
Pfitzer, Julia 6e6d3a8495 Added dependencies. 2024-04-22 13:19:54 +02:00
Pfitzer, Julia 3ad7a3f659 Updated build script. 2024-04-22 11:55:46 +02:00
Pfitzer, Julia c397990aaf Trying another build script. 2024-04-22 07:33:18 +02:00
jupfi a302e5080b Removed ... interesting build targets. 2024-04-21 20:41:34 +02:00
jupfi 449c56c85e Removed matplotlib dependency. 2024-04-21 19:47:58 +02:00
jupfi 0e9c48f426 Typo. 2024-04-21 12:50:35 +02:00
jupfi ff86d8ebff Set up QEMU 2024-04-21 12:50:00 +02:00
jupfi 4e95820658 Activated venv again. 2024-04-21 12:24:43 +02:00
jupfi 8dc3d32fed Fixed typo. 2024-04-21 12:18:23 +02:00
jupfi 3d54fc30af Updated automatic deployment. 2024-04-21 12:16:39 +02:00
jupfi 620b5809ee Updated to cibuildwheel. 2024-04-20 12:10:36 +02:00
jupfi 815a3eb682 Build wheels with cibuildwheel 2024-04-20 12:05:07 +02:00
jupfi d71e29a901 Maybe like this? 2024-04-20 11:10:02 +02:00
jupfi 5c53365f2f Added submodule checkout 2024-04-20 11:02:18 +02:00
jupfi 8d625619d7 Updated dependencies for deployment. 2024-04-20 10:56:45 +02:00
jupfi bb97340bca Automatic PyPi deployment. 2024-04-20 10:53:00 +02:00
jupfi 09bcd15776 Automatic PyPi deployment. 2024-04-20 10:52:40 +02:00
Julia P 3d0481a9d4
Merge pull request #4 from nqrduck/get-device-list
Bump version and add device listing.

Tested with LimeSDR USB and LimeSDR Mini  2.0 connected  to one PC. Devices could be retrieved using the get_devices_list()  method. The  active  device could  be  changed using the device  property of the PyLimeConfig object.
2024-02-17 18:25:13 +01:00
Kumi 5c3202305a
Update limedriver submodule to latest commit
Upgraded the 'limedriver' submodule to incorporate the latest fixes and
improvements from the upstream repository, ensuring compatibility and
enhanced stability.
2024-02-17 18:21:04 +01:00
Kumi fc536126bc
Encode device parameter before channel retrieval
Fixed an issue in the `get_channels_for_device` function where the input
device name wasn't being encoded before passing it to the underlying C
function `getChannelsFromInfo`. This change ensures compatibility with
the expected string encoding, preventing potential runtime errors
related to string handling across the Python-C boundary.
2024-02-17 18:06:55 +01:00
Kumi 8874795fd0
Set default parameter for get_channels_for_device
Optional device specifier: Adjusted get_channels_for_device function to
include a default empty string parameter. Enables calls without
specifying a device, reducing the need for client code to handle default
cases explicitly.
2024-02-17 18:04:10 +01:00
Kumi ce89c445d7
Enhance device channel handling
Introduced a new utility function to extract and return the number of
channels associated with a given device, improving the driver's ability
to handle device-specific configurations. Also expanded the C++ bindings
by importing the pair class, which is pivotal for representing the
channel information. This enhancement facilitates more granular control
and paves the way for future features that may require detailed channel
info.
2024-02-17 18:02:59 +01:00
Kumi 0696cc3b20
Add device property to PyLimeConfig
Introduced a getter and setter for the 'device' property, allowing for
UTF-8 encoding/decoding of the device string in the PyLimeConfig class.
This enhances string handling consistency across the interface.
2024-02-17 17:46:07 +01:00
Kumi f48c034011
Bump version and add device listing
Updated the project version reflecting new features. Extended the
LimeConfig_t struct to include a device string supporting device
specification. Introduced a new function `get_device_list` in the Python
binding, allowing users to retrieve a list of available devices,
enhancing usability. This change improves user interactions with the
hardware, making device management more intuitive.
2024-02-17 17:38:18 +01:00
jupfi a47961e311 Added manual selection of tx rx matching. 2024-02-12 21:36:32 +01:00
jupfi 1393cd6121 Newest commit. 2024-02-11 09:14:52 +01:00
jupfi 0f67c5065b Merge branch 'main' of github.com:nqrduck/LimeDriverBindings 2024-02-11 09:04:47 +01:00
jupfi 761c4756e8 Added binding for channel selection. 2024-02-11 09:04:33 +01:00
Julia P e0f0f34b53
Merge pull request #3 from nqrduck/debian2
Making it build on Debian
2024-02-10 20:07:58 +01:00
Kumi 13fe781396
Add GitHub Action for Ubuntu package build
Introduced a new GitHub workflow to automate the build process for a
Python package on Ubuntu. The workflow triggers on push and pull
requests and includes steps for updating the package list, installing
essentials like git, setting up Python 3.10, and handling dependencies.
It also includes the package installation and a post-install test to
confirm successful import. This automation ensures code integrity with
each update and simplifies the integration process for contributors.
2024-02-10 20:03:23 +01:00
Kumi 1e8ff8684d
Updated CXX env var and removed redundant
library_dirs in setup

Enhanced the 'CXX' environment variable assignment in setup.py to
include the '-shlib' flag for shared library support. Also, streamlined
the Extension configuration by eliminating the now unnecessary
specification of default library directories, simplifying the build
process.

Refactors setup configuration for efficiency and compatibility with
shared libraries.
2024-02-10 20:00:27 +01:00
Kumi 5f9f62df76
Update LimeDriver submodule URL to HTTPS
Switched the submodule URL in .gitmodules for 'LimeDriver' from SSH to
HTTPS to improve compatibility for cloning without requiring SSH keys.
This change should facilitate easier access for contributors and
automated build systems that may not have SSH key setups.
2024-02-10 18:17:46 +01:00
jupfi 9d56c0b3ab Merge branch 'main' of github.com:nqrduck/LimeDriverBindings 2024-02-10 18:13:31 +01:00
jupfi 8263eaf9d0 Newest LimeDriver 2024-02-10 18:13:27 +01:00
Kumi 0568a820af
Simplify build and link HDF5 libraries
Removed custom BuildExtCommand class from setup.py, simplifying the
build process by relying on standard build_ext behavior. The custom
command handling of submodule initialization and build extension
modifications were deemed unnecessary. Additionally, extended the
library dependencies to include 'hdf5_cpp' and 'hdf5' to ensure correct
linking for HDF5 support. This change makes the build process more
straightforward and maintainable.
2024-02-10 18:02:07 +01:00
jupfi a5f3ad53b7 Removed another debug print. 2024-02-10 17:55:02 +01:00
jupfi 052800f717 Removed debug prints 2024-02-10 17:48:49 +01:00
Kumi aaa68e6973
Removed redundant Ubuntu-specific build workflow;
updated pip install flag

The project's CI configuration experienced two main updates:
- The Ubuntu-specific Python package build workflow was entirely
removed, likely due to standardization across different environments or
redundancy with other existing workflows.
- Python package installation in the main workflow was amended to
include the `--break-system-packages` pip flag, which indicates a shift
in handling dependencies that may conflict with system packages.

These changes may streamline the CI/CD process and address dependency
conflicts during package installation.
2024-02-10 16:36:18 +01:00
Kumi 853457de78
Updated CI and package import system
Refactored the CI workflows to include package installation and import
testing. Ensured package is importable after installation by creating a
new '__main__.py' module to check imports. This adds an extra validation
step to the CI process, catching potential import issues early. Import
statements in '__init__.py' have also been updated to use 'as' for
clarity and namespace control.
2024-02-10 16:32:58 +01:00
Kumi fb296e1ecd
Updated limedriver submodule to latest commit
Upgraded the limedriver submodule reference to incorporate recent
enhancements and bug fixes. This update ensures compatibility with the
main project and improves stability.
2024-02-10 16:28:28 +01:00
Kumi fd52d145bc
The Return of the H5C++ 2024-02-10 16:27:23 +01:00
Julia Pfitzer 8771c052da
Merge pull request #2 from nqrduck/readme
Readme
2024-02-10 15:02:34 +01:00
Kumi 6074ca85a6
Updated README with submodule init instructions
Expanded the setup section in the README to include instructions for
initializing the LimeDriver submodule before building and installing the
Python bindings. This ensures users don't encounter issues due to
missing dependencies when trying to install the package.
2024-02-10 15:00:57 +01:00
Kumi 99030b5d44
Merge branch 'main' of github.com:nqrduck/LimeDriverBindings 2024-02-10 14:57:04 +01:00