-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate to support GNU Radio 3.9 #77
Conversation
Followed porting steps at https://wiki.gnuradio.org/index.php/GNU_Radio_3.9_OOT_Module_Porting_Guide Current status is this builds and installs and I can import limesdr from python.
- added proper dependencies - removed installation instructions other than Linux install from source
I attempted to run this with the sink and have two takeaways:
|
I have tested this and found some more problems with the GRC YML files. I have fixed them in the gr39 branch of my fork. I've tested that the LimeSDR Source works well, both in SISO and MIMO modes. I haven't tested the LimeSDR Sink, but the generated Python code looks reasonable. |
I just ran your gr39 branch with source and sink (haven't tried MIMO) and the sink works! |
To support GNUradio 3.10 in the gr-limesdr Debian package, I pulled the changes from https://github.com/daniestevez/gr-limesdr/tree/gr39. The module works fine for me, receiving and transmitting on QO-100. Please consider merging that. One odd point in there is that it's rewinding the soname of the module to 1.0.0, I put an extra patch on top to restore the old 3.0.1:
|
Hmm. I just realized that this PR is based on the master branch which is supposed to target GNU Radio 3.7. Actual development happens in the gr-3.8 branch now. Unfortunately master and the gr-3.8 branch have diverged enough such that rebasing this PR to gr-3.8 will be nontrivial. Any takers? |
Hi Christoph,
My contribution to gr-limesdr was an attempt to port it from 3.8 to 3.9. I
did this when I thought I would buy a limesdr, but have since allocated the
funds to another project. All my efforts were done by referencing
https://wiki.gnuradio.org/index.php/GNU_Radio_3.9_OOT_Module_Porting_Guide
. I will do as you suggest and merge my branch with that of daniestevez.
That way if folks are trying to build gr-limesdr for gnuradio they can get
working code. Thanks for the update.
Take care.
Chris
…On Sun, Jan 23, 2022 at 5:20 PM Christoph Berg ***@***.***> wrote:
Hmm. I just realized that this PR is based on the master branch which is
supposed to target GNU Radio 3.7. Actual development happens in the gr-3.8
branch now. Unfortunately master and the gr-3.8 branch have diverged enough
such that rebasing this PR to gr-3.8 will be nontrivial.
Any takers?
—
Reply to this email directly, view it on GitHub
<#77 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AG76X4YUR2PJZSENCO4COL3UXR5LZANCNFSM47NXPPDQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I built and ran this locally. So far, looks good. As a pull request, I'm going to close this, as rather than merging this into master, this will be a new |
find_package(pybind11 REQUIRED) | ||
execute_process( | ||
COMMAND "${PYTHON_EXECUTABLE}" -c | ||
"try:\n import numpy\n import os\n inc_path = numpy.get_include()\n if os.path.exists(os.path.join(inc_path, 'numpy', 'arrayobject.h')):\n print(inc_path, end='')\nexcept:\n pass" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could this be something simpler like python3 -c "import numpy;print(numpy.get_include())"
? There is no need to filter the errors as OUTPUT_VARIABLE
does store the text from STDOUT. If an error would happen, the traceback would go to STDERR and PYTHON_NUMPY_INCLUDE_DIR
would be empty.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The remaining logic to assert whether inc_path/numpy/arrayobject.py can be done in CMake rather than Python
if(NOT Boost_FOUND) | ||
message(FATAL_ERROR "Boost required to compile limesdr") | ||
endif() | ||
IF(CMAKE_CXX_COMPILER_ID STREQUAL "GNU") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure why these branches should be duplicated
Migrates this Out of Tree module to support GNU Radio 3.9. Following GNU Radio 3.9 OOT Module Porting Guide
Based on @chrisjohgorman's initial work (really appreciated btw!)
I've tested this with a LimeSDR-mini with the source module, however I have not tested the sink, yet. As I don't have a project ready to go.
I think some more testing would be in order. I haven't properly tested the RFE block, but it seems to behave as intended.
Closes #75