Giter Site home page Giter Site logo

bastibl / gr-rds Goto Github PK

View Code? Open in Web Editor NEW

This project forked from balint256/gr-rds

220.0 31.0 73.0 10.06 MB

FM RDS/TMC Transceiver

Home Page: http://en.wikipedia.org/wiki/Radio_Data_System

License: GNU General Public License v3.0

CMake 2.85% C 0.36% C++ 94.76% Python 1.86% Batchfile 0.10% Shell 0.08%
sdr fm broadcast radio tmc rds hacktoberfest

gr-rds's Introduction

Development

Like GNU Radio, this module uses maint branches for development. These branches are supposed to be used with the corresponding GNU Radio branches. This means: the maint-3.7 branch is compatible with GNU Radio 3.7, maint-3.8 is compatible with GNU Radio 3.8, etc.

Dependencies

Installation

mkdir build
cd build
cmake ..
make
sudo make install
sudo ldconfig

Usage

open apps/rds_rx.grc example flow graph in GNU Radio Companion.

Demos

Quick example: http://www.youtube.com/watch?v=05i9C5lhorY

HAK5 episode (including installation): http://www.youtube.com/watch?v=ukhrIl4JHbw

FOSDEM'15 talk (video and slides): https://archive.fosdem.org/2015/schedule/event/sdr_rds_tmc/

History

Continuation of gr-rds on BitBucket (originally from Dimitrios Symeonidis https://bitbucket.org/azimout/gr-rds/ and also on CGRAN https://www.cgran.org/wiki/RDS).

gr-rds's People

Contributors

ardavast avatar argilo avatar bastibl avatar bigdaveyl avatar bonzap avatar brumi-2021 avatar devnulling avatar elafargue avatar guruofquality avatar jdemel avatar jonathanbrucker avatar jwakely avatar maitbot avatar pinhodb avatar ryanvolz avatar sharkcz avatar spinstabilized avatar zerochaos- avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gr-rds's Issues

Stereo and Mono are swapped

When I'm listening to a stereo station, the RDS Panel shows "Mono"

flagstring[3] = mono_stereo ? '1' : '0';

When I swap the '1' and '0' it works. But then the code doesn't look so good anymore ;-)
May be the variable should be renamed to stereo_mono ...

Building documentation fails

When I build gr-rds with eeabled documentation (cmake option -DENABLE_DOXYGEN=1 added), the cmake fails with this message:
...
CMake Error: File /home/wk/rpmbuild/BUILD/gr-rds/docs/doxygen/Doxyfile.swig_doc.in does not exist.
CMake Error at /usr/lib64/cmake/gnuradio/GrSwig.cmake:58 (configure_file):
configure_file Problem configuring file
Call Stack (most recent call first):
/usr/lib64/cmake/gnuradio/GrSwig.cmake:112 (GR_SWIG_MAKE_DOCS)
swig/CMakeLists.txt:40 (GR_SWIG_MAKE)

-- Configuring incomplete, errors occurred!
See also "/home/wk/rpmbuild/BUILD/gr-rds/build/CMakeFiles/CMakeOutput.log".
See also "/home/wk/rpmbuild/BUILD/gr-rds/build/CMakeFiles/CMakeError.log".

Updating RDS via TCP Interface

The example rds_tx GRC file has a TCP Socket PDU interface on port 52001.

Is it possible to update the RDS data (e.g. RT, PS, TA) via this interface with something like netcat. If so, what format is required?

If I netcat some data to port 52001, I can see messages from the running Python script, e.g. -

input string: set_ps("NEWRDSPS")
   length: 19\n
not understood

So I know that the script is receiving the messages, just not what format they need to be in!

Thanks

No RDS encoding on Windows

Hi,
for sure my problem is compiling related.
I tried to use rds_tx but even if everything seems to work ok (signal is correctly visible) but I think I have a problem with the RDS encoding.
I think that you should be related to the fact that that I haven't compiled your package but I don't have any error.
Where I should put the compiled libraries for the encoder?

Thanks in advance

Kind regards

Use of version tags

Have you considered the use of git tags to keep versions of the code? This would help with configuration management.

Fresh install failure

After doing a fresh install I receive a new error:

Python 3.8.10 (default, Mar 15 2022, 12:22:08)
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.

import rds
Traceback (most recent call last):
File "/usr/local/lib/python3/dist-packages/rds/init.py", line 17, in
from .bindings.rds_python import *
ModuleNotFoundError: No module named 'rds.bindings'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "", line 1, in
File "/usr/local/lib/python3/dist-packages/rds/init.py", line 19, in
from .rds_python import *
ImportError: generic_type: type "decoder" referenced unknown base type "gr::sync_block"

Using gnuradio version "v3.10-compat-xxx-xunknown"
Using SoapyRTLSDR:
Lib Version: v0.8.1-g9cbaa3cf
API Version: v0.8.0
ABI Version: v0.8
Using gr-rds version: Unknown (built from maint-3.10)

Any help would be appreciated.

rds Module?

Sorry to bother you again,

So I found the examples and I was able to get the flowchart up. I did run into a run error though

fm_rds_alternate.py", line 47, in
import rds
ModuleNotFoundError: No module named 'rds'

I thought this would be installed after running the make install command. Which I know completed successfully.

OS: Ubuntu 20.04
GNU Radio 3.8.2.0 (Python 3.8.5)

AttributeError: module 'rds' has no attribute 'parser'

Python 3.7.7 macOS 10.14.5
I'm using GNURadion 3.8 from from https://github.com/ktemkin/gnuradio-for-mac-without-macports

Have installed gr-rds from maint-3.8, everything looks fine, example loads in gnuradio-companion, but I get error
AttributeError: module 'rds' has no attribute 'parser'

Have tried to put libgnuradio-rds.dylib into /Applications/GNURadio.app/Contents/MacOS/usr/lib and danced with paths
If I import rds in python and do dir(rds), I'll get
['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', 'rdsPanel', 'rdspanel', 'unicode_literals']

Receiving TMC question

Hello,

thanks for your awesome Project.

I have a question about receiving tmc messages, i have the latest version of your blocks and your rx example (grc 3.10) up and running with an RTL-SDR dongle. RDS works great!

I may be blind, but where can I see the output of the decoded tmc messages?
Sorry to bother you, keep up the good work!

Small comments to the great .grc examples

Hello thanks a lot for sharing that gr-rds and FM stereo ( rx / tx) .
Great job, it is the perfect reference that I was searching, and also it works with version gnuradio 3.10.6 !

Just let me add small comments to your examples, for your consideration ,
(1) rds_rx.grc
Regarding that deemphasis block , as I am in EUR, I would just add this comment ,
Tau : Time constant in seconds (75us in US, 50us in EUR)
image

(2) rds_tx.grc
Here in that transmitter example , I would just add two comments ,

a-) I think it is missing to add in audio baseband , the two symetrical pre-emphasis filters ,
image

b-) Regarding the modulation index level of each part , If I understood correctly , current grc is using 26% for (L+R) and (L-R),
image
(but not sure if this is the right FM stereo specs)

Then , based on that , my understanding is that in FM STEREO transmission,
(L+R) baseband , and (L-R ) double sideband suppressed carrier (DSBSC) sub-channel , could be each one 42,5%,
Pilot Tone 19Khz 10% , and RDS BPSK around 5% .

image

In that sense , I think we can increase that 0.26 to 0.425 , if I am not wrong .

Feel free to close or modify that issue , if it is not completely correct,

Cheers, and thanks for your great contribution to gnuradio community !!!

GR-RDS .rx

Hi there.
I Downloaded your rds_rx.grc flowgraph, currently im using Adalm-Pluto and i edited the file and it looks perfectly!
But there is a point i cant understand. How did you configure the value of rrc_taps_manchester? (->> [rrc_taps[n] - rrc_taps[n+8] for n in range(len(rrc_taps)-8)]? I mean, i can't really understand what this is doing. Whats the difference between using a Decimating FIR FIlter using rrc_taps_manchester , instead of using a Root Raised Cosine Filter?
Your work is awesome btw.
Thanks a lot for the Help,
hope you are doing great!!

Block key xx not found in Platform while loadin flow graph in GRC 3.7.2.1

Hi!
I successfully compiled the library sources without any errors and the libgnuradio-rds.so is installed in /usr/local/lib, but when I open apps/rds_rx.grc in GRC, it shows lots of error messages:

Loading: "/home/sulyokg/epg/rds/apps/rds_rx.grc"
>>> Error: Block key "gr_rds_decoder" not found in Platform - grc(GNU Radio Companion)
>>> Error: Block key "gr_rds_panel" not found in Platform - grc(GNU Radio Companion)
>>> Error: Block key "gr_rds_parser" not found in Platform - grc(GNU Radio Companion)
>>> Error: Block key "rtlsdr_source" not found in Platform - grc(GNU Radio Companion)
>>> Error: Connection between digital_diff_decoder_bb_0(0) and gr_rds_decoder_0(0) could not be made.
	sink block id "gr_rds_decoder_0" not in block ids
>>> Error: Connection between gr_rds_decoder_0(out) and gr_rds_parser_0(in) could not be made.
	source block id "gr_rds_decoder_0" not in block ids
>>> Error: Connection between gr_rds_parser_0(out) and gr_rds_panel_0(in) could not be made.
	source block id "gr_rds_parser_0" not in block ids
>>> Error: Connection between rtlsdr_source_0(0) and freq_xlating_fir_filter_xxx_0(0) could not be made.
	source block id "rtlsdr_source_0" not in block ids
>>> Done

Can You help Me?

ImportError: libgnuradio-blocks.so.3.8.1: cannot open shared object file: No such file or directory

Installed gr-rds on kali rolling from repository and building from source and always I get this error that gnuradio cannot open shared object.

<<< Welcome to GNU Radio Companion 3.10.3.0 >>>

Block paths:
	/usr/share/gnuradio/grc/blocks
	/usr/local/share/gnuradio/grc/blocks

Loading: "/home/user/gr-rds-3.10/examples/rds_rx.grc"
>>> Done

Generating: '/home/user/gr-rds-3.10/examples/rds_rx.py'

Executing: /usr/bin/python3 -u /home/user/gr-rds-3.10/examples/rds_rx.py

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/osmosdr/__init__.py", line 17, in <module>
    from .osmosdr_python import *
ImportError: libgnuradio-blocks.so.3.8.1: cannot open shared object file: No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/user/gr-rds-3.10/examples/rds_rx.py", line 42, in <module>
    import osmosdr
  File "/usr/lib/python3/dist-packages/osmosdr/__init__.py", line 21, in <module>
    from .osmosdr_python import *
ImportError: libgnuradio-blocks.so.3.8.1: cannot open shared object file: No such file or directory

>>> Done (return code 1)

Also osmosdr is up to date:

gr-osmosdr/kali-rolling,now 0.2.3-6+b2 amd64 [installed]
  Gnuradio blocks from the OsmoSDR project

libgnuradio-osmosdr0.2.0/kali-rolling,now 0.2.3-6+b2 amd64 [installed]
  Gnuradio blocks from the OsmoSDR project - library

libosmosdr-dev/kali-rolling,now 0.1.8.effcaa7-7+b1 amd64 [installed]
  Software defined radio support for OsmoSDR hardware (development files)

libosmosdr0/kali-rolling,now 0.1.8.effcaa7-7+b1 amd64 [installed,automatic]
  Software defined radio support for OsmoSDR hardware (library)

osmo-sdr/kali-rolling,now 0.1.8.effcaa7-7+b1 amd64 [installed]
  Software defined radio support for OsmoSDR hardware (tools)

Following the instructions, fails to compile. "Missing GnuradioConfig.cmake, gnuradio-config.cmake"

Executing the compilation recipe:

mkdir build
cd build
cmake ..
make
sudo make install
sudo ldconfig

Fails at the cmake .. step:

CMake Error at CMakeLists.txt:77 (find_package):
  By not providing "FindGnuradio.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Gnuradio",
  but CMake did not find one.

I'm not familiar with the cmake process...

not good work when i used hackrf

hi, your project is Great i used it with rtl-sdr. it work very good.
but when i used hackrf, it is poor result fm . the noise is so many. my question is how i can find a manual or reference for setting this blocks GRC gnuradio that work perfectly for hackrf. for input source i used hackrf,i changed parameter osmocom source very but quality is not good.
thank you
best regards stackprogramer

rds tx example

Hello,
I tried the rds tx example with GNU 3.7, Windows 10 and a HackRF but it is not working. Do I have to configure something special? This is my console output:

gr-osmosdr c653754d (0.1.5git) gnuradio 3.7.12.0
built-in sink types: uhd hackrf bladerf redpitaya file
[INFO] [UHD] Win32; Microsoft Visual C++ version 14.0; Boost_106000; UHD_3.11.0.0-0-unknown
Using HackRF One with firmware 2017.02.1
PS set to "WDR 3"
nbuffers: 0
preparing 0
encoding 89.8
preparing 0
encoding 89.8
preparing 0
encoding 89.8
preparing 0
encoding 89.8
preparing group 1
preparing group 3
preparing group 3
preparing group 11
nbuffers: 26
INFO: Audio source arch: windows
UTraceback (most recent call last):
File "C:\Users\bravo\Downloads\gr-rds-maint-3.7\apps\rds_tx.py", line 376, in
main()
File "C:\Users\bravo\Downloads\gr-rds-maint-3.7\apps\rds_tx.py", line 370, in main
tb = top_block_cls()
File "C:\Users\bravo\Downloads\gr-rds-maint-3.7\apps\rds_tx.py", line 258, in init
self.connect((self.audio_source_0, 1), (self.blocks_multiply_const_vxx_0_1, 0))
File "C:\Program Files\GNURadio-3.7\lib\site-packages\gnuradio\gr\hier_block2.py", line 47, in wrapped
func(self, src, src_port, dst, dst_port)
File "C:\Program Files\GNURadio-3.7\lib\site-packages\gnuradio\gr\hier_block2.py", line 110, in connect
self.primitive_connect(*args)
File "C:\Program Files\GNURadio-3.7\lib\site-packages\gnuradio\gr\runtime_swig.py", line 5312, in primitive_connect
return _runtime_swig.top_block_sptr_primitive_connect(self, *args)
ValueError: port number 1 exceeds max of 0
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUU

GR_SWIG_MAKE_DOCS kali linux GNU radio 3.8.2.0 (Python 3.9.1)

-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.9.so (found version "3.9.1")
CMake Error: File /root/gr-foo/docs/doxygen/Doxyfile.swig_doc.in does not exist.
CMake Error at /usr/local/lib/cmake/gnuradio/GrSwig.cmake:58 (configure_file):
configure_file Problem configuring file
Call Stack (most recent call first):
/usr/local/lib/cmake/gnuradio/GrSwig.cmake:112 (GR_SWIG_MAKE_DOCS)
swig/CMakeLists.txt:50 (GR_SWIG_MAKE)

RDS panel - Variable slider missing - GRC 3.8

Hi,
sorry to bother you again.
Finally I get everything to work, thanks for the previous suggestion.
I now have this configuration:
GNURadio 3.8 installed on arch linux with USRP N210.
After some tests that seems to have the correct resolution,
I was trying to encode rds on the fly, but unfortunately variable slider blocks are missing:
Where I can find them? I also add on grc.conf the grc blocks section as you suggest in other issue

Thanks in advance

Field order in RDSPanel

This is all brilliant stuff, thanks so much for putting in the work, and for making it available. I have installed the maint-3.10 branch on my Linux Mint system, and it works great. Just one odd thing I noted - in the window that comes up when I run the rds_rx.grc flow in the GnuRadio Companion, the fields for Program ID and Program Type seem to be the wrong way around. I'm not a Python coder, but I had a look at the rdspanel.py code, and nothing hit me in the eye that looked wrong. Not a big deal obviously, but I just like things to look right. I've attached a clip of a screenshot that shows what I mean.

GR-RDS

QT RDS Panel doesn't work in GNURadio 3.7.11

I tried running the Qt rdspanel.py in the next branch, but all I got was this error:

Traceback (most recent call last):
  File "/home/pepin/Desktop/top_block.py", line 34, in <module>
    import rds
  File "/usr/lib/python2.7/site-packages/rds/__init__.py", line 36, in <module>
    from rdspanel import *
  File "/usr/lib/python2.7/site-packages/rds/rdspanel.py", line 6, in <module>
    class rdsPanel(gr.sync_block, QtWidgets.QWidget):
AttributeError: 'module' object has no attribute 'QWidget'

I'm running GNU Radio Companion 3.7.11, the reason I'm trying to use the next branch is because I'm porting my application ovet to Qt.

Thanks

Module 'rds' has no attribute 'parser'

When trying to run the example code I get an error. Using gnuradio-companion 3.8, Python 3.8 and gr-rds 3.8.


Block paths:
	/home/xxxx/.grc_gnuradio
	/usr/share/gnuradio/grc/blocks
	/usr/local/share/gnuradio/grc/blocks

Loading: "/home/xxxx/3/fmradio.grc"
>>> Done

Loading: "/home/xxxx/3/fmradio_2.grc"
>>> Done

Loading: "/home/xxxx/3/gr-rds/examples/rds_rx.grc"
>>> Done

Generating: '/home/xxxx/3/gr-rds/examples/rds_rx.py'

Executing: /usr/bin/python3 -u /home/xxxx/3/gr-rds/examples/rds_rx.py

/usr/lib/python3.8/site-packages/gnuradio/qtgui/range.py:41: SyntaxWarning: "is not" with a literal. Did you mean "!="?
  precision = len(temp) if temp is not '0' else 0
Traceback (most recent call last):
  File "/home/xxxx/3/gr-rds/examples/rds_rx.py", line 586, in <module>
    main()
  File "/home/xxxx/3/gr-rds/examples/rds_rx.py", line 564, in main
    tb = top_block_cls()
  File "/home/xxxx/3/gr-rds/examples/rds_rx.py", line 139, in __init__
    self.rds_parser_0 = rds.parser(False, False, 0)
AttributeError: module 'rds' has no attribute 'parser'

>>> Done (return code 1)

Swig is replaced with PyBind in GR 3.9

Got the following compilation error while running cmake .. . My GR is compiled from source from the gnuradio master branch as of commit 39af5fb4ad9cce452406f905039af4349a6ef828. Swig has been dropped in support of PyBind.

CMake Error at swig/CMakeLists.txt:26 (include):
  include could not find load file:

    GrSwig


CMake Error at swig/CMakeLists.txt:37 (GR_SWIG_MAKE):
  Unknown CMake command "GR_SWIG_MAKE".

No module named rds_swig

when trying to run the example flowcharts, i get this error:

  File "/usr/local/lib/python2.7/dist-packages/rds/__init__.py", line 22, in <module>
    from rds_swig import *
ImportError: No module named rds_swig

when looking in that directory there are no files named rds_swig with any extension

i have tried compiling from your git repo and installing from the kali repo, neither fixed the issue

branch master not compatible with current gnuradio version (3.9.0.0)

I've installed the latest version of gnuradio (3.9.0.0).
Unfortunately gr-rds is not compatible yet - it's still looking for gnuradio version 3.8.
Using the master branch, cmake gives me the following error:

CMake Error at CMakeLists.txt:87 (find_package):
Could not find a configuration file for package "Gnuradio" that is
compatible with requested version "3.8".

The following configuration files were considered but not accepted:

/usr/local/lib/cmake/gnuradio/GnuradioConfig.cmake, version: 3.9.0.0-git

Will this be fixed soon?

Error while cloning.

Hello, hope you're doing great. You 've done an amazing work here!
I want to mention that, while im cloning the 3.10 repository(my GNU RADIO is 3.10.1.1), cmake progress fails. The commands i use:
-git clone --branch=maint-3.10 https://github.com/bastibl/gr-rds.git
-cd gr-rds
-mkdir build
-cmake ..
And now cmake fails, given the output:
-- The CXX compiler identification is GNU 11.3.0
-- The C compiler identification is GNU 11.3.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Build type not specified: defaulting to release.
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2")
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Checking for module 'gmp'
-- Found gmp, version 6.2.1
-- Found GMP: /usr/lib/x86_64-linux-gnu/libgmpxx.so
-- Using GMP.
-- Found MPLIB: /usr/lib/x86_64-linux-gnu/libgmpxx.so
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.74.0/BoostConfig.cmake (found suitable version "1.74.0", minimum required is "1.74.0") found components: date_time program_options system regex thread unit_test_framework
-- Found Volk: Volk::volk
-- User set python executable /usr/bin/python3
-- Found PythonInterp: /usr/bin/python3 (found version "3.10.6")
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.10.so (found suitable exact version "3.10.6")
-- Found Git: /usr/bin/git
-- Extracting version information from git describe...
**-- Found Doxygen: /usr/bin/doxygen (found version "1.9.1") found components: doxygen dot
CMake Error at /usr/lib/x86_64-linux-gnu/cmake/Boost-1.74.0/BoostConfig.cmake:141 (find_package):
Could not find a package configuration file provided by "boost_locale"
(requested version 1.74.0) with any of the following names:

boost_localeConfig.cmake
boost_locale-config.cmake

Add the installation prefix of "boost_locale" to CMAKE_PREFIX_PATH or set
"boost_locale_DIR" to a directory containing one of the above files. If
"boost_locale" provides a separate development package or SDK, be sure it
has been installed.
Call Stack (most recent call first):
/usr/lib/x86_64-linux-gnu/cmake/Boost-1.74.0/BoostConfig.cmake:258 (boost_find_component)
/usr/share/cmake-3.22/Modules/FindBoost.cmake:594 (find_package)
CMakeLists.txt:117 (find_package)**

Anything idea would be helpfull!
Thank you :)
(Currently using Ubuntu 22.04 LTS)

gr_rds_decoder, parser, panel are missing.

I followed the README.md.
After the file rds_rx.grc loaded, i get these messages:

Block key "gr_rds_decoder" not found
Block key "gr_rds_panel" not found
Block key "gr_rds_parser" not found

Could anyone tell me what should i do to use these blocks.

20170313_110042_5492n8t

Failed to Load 'rds_rx.grc' example with RTL-SDR

Using gnuradio 3.10, the example loads but errors out when parsing and I receive the following error:

<<< Welcome to GNU Radio Companion v3.10-compat-xxx-xunknown >>>

Block paths:
/home/user/.grc_gnuradio
/usr/share/gnuradio/grc/blocks
/usr/local/share/gnuradio/grc/blocks

Loading: "/home/user/git/gr-rds/examples/rds_rx.grc"

Done

Generating: '/home/user/git/gr-rds/examples/rds_rx.py'

Executing: /usr/bin/python3 -u /home/user/git/gr-rds/examples/rds_rx.py

gr-osmosdr 0.2.0.0 (0.2.0) gnuradio 3.8.1.0
built-in source types: file osmosdr fcd rtl rtl_tcp uhd miri hackrf bladerf rfspace airspy airspyhf soapy redpitaya freesrp
[INFO] [UHD] linux; GNU C++ version 9.2.1 20200304; Boost_107100; UHD_3.15.0.0-2build5
[INFO] Using format CF32.

Done (return code -11)

Generating: '/home/user/git/gr-rds/examples/rds_rx.py'

Executing: /usr/bin/python3 -u /home/user/git/gr-rds/examples/rds_rx.py

gr-osmosdr 0.2.0.0 (0.2.0) gnuradio 3.8.1.0
built-in source types: file osmosdr fcd rtl rtl_tcp uhd miri hackrf bladerf rfspace airspy airspyhf soapy redpitaya freesrp
[INFO] [UHD] linux; GNU C++ version 9.2.1 20200304; Boost_107100; UHD_3.15.0.0-2build5
Found Rafael Micro R820T tuner
Using device #0 Realtek RTL2838UHIDIR SN: 00000001
Found Rafael Micro R820T tuner
[R82XX] PLL not locked!
Exact sample rate is: 2000000.052982 Hz
[R82XX] PLL not locked!
Traceback (most recent call last):
File "/home/user/git/gr-rds/examples/rds_rx.py", line 429, in
main()
File "/home/user/git/gr-rds/examples/rds_rx.py", line 407, in main
tb = top_block_cls()
File "/home/user/git/gr-rds/examples/rds_rx.py", line 133, in init
self.rds_parser_0 = rds.parser(False, False, 0)
AttributeError: module 'rds' has no attribute 'parser'

Done (return code 1)

digital_mpsk_receiver_cc is deprecated (removed in GnuRadio next)

This block is now deprecated and removed from next branch of GnuRadio. Is shuld be replaced by constellation_receiver.

For BPSK this C++ code snippet (1) replaces the deprecated block, for .grc corresponding blocks exists.

(1)
gr::digital::constellation_sptr p_c = gr::digital::constellation_bpsk::make()->base();
d_mpsk = gr::digital::constellation_receiver_cb::make(p_c, 1*M_PI/100.0, -0.06, 0.06);

Error reading in example flowgraphs

Anyone else getting KeyError: 'untyped' when opening the example flowgraphs? I'm in 3.9.5, I tried opening maint-3.9, maint-3.10, and the one on master, but all errored out. Would be cool if GR would tell me which block was causing the grc read error so I could investigate.

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/gnuradio/grc/gui/Application.py", line 746, in _handle_action
    flow_graph_update()
  File "/usr/lib/python3/dist-packages/gnuradio/grc/gui/Application.py", line 110, in flow_graph_update
    fg.update()
  File "/usr/lib/python3/dist-packages/gnuradio/grc/gui/canvas/flowgraph.py", line 189, in update
    self.validate()
  File "/usr/lib/python3/dist-packages/gnuradio/grc/core/base.py", line 27, in validate
    child.validate()
  File "/usr/lib/python3/dist-packages/gnuradio/grc/core/Connection.py", line 101, in validate
    source_size = self.source_port.item_size
  File "/usr/lib/python3/dist-packages/gnuradio/grc/core/ports/port.py", line 79, in item_size
    return Constants.TYPE_TO_SIZEOF[self.dtype] * self.vlen
KeyError: 'untyped'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/gnuradio/grc/gui/DrawingArea.py", line 203, in _handle_window_realize
    self._flow_graph.update()
  File "/usr/lib/python3/dist-packages/gnuradio/grc/gui/canvas/flowgraph.py", line 189, in update
    self.validate()
  File "/usr/lib/python3/dist-packages/gnuradio/grc/core/base.py", line 27, in validate
    child.validate()
  File "/usr/lib/python3/dist-packages/gnuradio/grc/core/Connection.py", line 101, in validate
    source_size = self.source_port.item_size
  File "/usr/lib/python3/dist-packages/gnuradio/grc/core/ports/port.py", line 79, in item_size
    return Constants.TYPE_TO_SIZEOF[self.dtype] * self.vlen
KeyError: 'untyped'

Minor 3.9 Issues

  • the decoder throws for non-UTF-8 text (i.e, German umlauts)
  • the frequency is not displayed in the GUI
  • the decoder does not reset on frequency change

Runtime Error on Fedora 34

Summary: successful build and install (to default /usr/local) on Fedora 34 using repository versions of gnuradio, osmosdr, etc (and their devel equivalents), I get the following error:

Traceback (most recent call last):
File "/usr/local/lib64/python3.9/site-packages/rds/__init__.py", line 17, in <module>
from .bindings.rds_python import *
ModuleNotFoundError: No module named 'rds.bindings'

I'm not very fluent with Python, and tried to track this down, but it eludes me.

Any suggestions on where to look for this module?

Thanks!

Import RDS Fails

Loading the RDS Module fails after syncing, gnuradio/gr-osmocomsdr/gr-rds to versions 3.10.1 (not sure why it's looking for 3.10.2git).

Install gnuradio from gnuradio ppa (ppa:gnuradio/gnuradio-releases).
Installed gr-osmocomsdr from git using branch "master"
installed gr-rds (branch maint-3.10)

Traceback (most recent call last):
File "/usr/local/lib/python3.9/dist-packages/rds/init.py", line 17, in
from .bindings.rds_python import *
ModuleNotFoundError: No module named 'rds.bindings'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/home/user/git/gr-rds/examples/rds_rx.py", line 44, in
import rds
File "/usr/local/lib/python3.9/dist-packages/rds/init.py", line 19, in
from .rds_python import *
ImportError: libgnuradio-runtime.so.3.10.2git: cannot open shared object file: No such file or directory

rds in

Hello,

Would it be possible to give an example to use the rds in port on the RDS encoder block ?
Looking the code it seems possible to set for example the radio text.
But I can not get it to work.

Thanks
Wim.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.