[Discuss-gnuradio] Installing GNURadio On Raspberry Pi
First time posting. I'm not much of a Linux guy but I am trying to learn. Anyway, is there a "right way" to install GNURadio on a Raspberry Pi? I have been trying a lot of methods over the last few weeks and none of them is stable. Note, I have been using GRC on Windows for months so I have some feel for how things work. After my latest installation, when I run a flow graph that includes the block for an rtlsdr dongle I get: ImportError: No module named _osmosdr_swig. I have a whole lot of Traceback reports but I can't make anything out of them (Python inexperience is a major problem for me). This error seems pretty common but none of the steps others used to solve it have worked for me. Most of them involve a lot of uninstalls and reinstalls and then "poof" it works. Can anyone point me in the right direction? Thanks In Advance, Pete ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Installing GNURadio On Raspberry Pi
Ben, I am sorry if I came across as cynical and sarcastic. I didn't mean to. I really wanted to know if anyone could make GNURadio work on a RPi. I'll be the first to say I know nothing about Linux and Python. However, I created the flow graph I need on my windows computer months ago and have been trying ever since to get it to work reliably on my RPi. I experienced repeated segment faults, malloc faults, failure to have the osmocom block I needed, etc. Since I asked the question here I have gotten help, very good help and still no luck. In addition I did so many installs and removes my SD card is to the point it just needs to be reformatted and rebuilt. But I did discover during the process that the culprit is the osmocom/rtlsdr block. No matter how I install it, my flow graph just won't run when it is enabled. Luckily during this process, last night, I discovered that I don't need the osmocom/rtlsdr block. I can get the stream from my rtlsdr using the command: rtl-sdr -f -s /tmp/aFIFO where a FIFO is created with mkfifo aFIFO. Then read the FIFO with a file source block. It might not have as good a SNR as on windows but I think I can adjust some filtering and move some gains around and it will be acceptable. So, I'm off and running to complete my project and I'm not looking back (I hope). Maybe if I need to do this for another project I'll start over. It looks like Glen and Marcus are using Ubuntu where as I have been using Raspbian. I'll go that route next time. Thanks, Pete On 5/7/2019 3:20 PM, Ben Hilburn wrote: Hi Pete - Yes, I personally know of multiple. Albin's work of implementing volk kernels for TujaSDR <https://tujasdr.com/>, shared here on the list with some regularity, is an excellent example. On Wed, May 1, 2019 at 5:32 PM P C <mailto:pc...@yahoo.com>> wrote: Problem Solved! .NOT! Tell me, is anyone running GNURadio on a Raspberry Pi (3-B) using an RTL-SDR dongle? I thought I cured my problems then the next day, more problems. This is what I thought fixed my problem (but later, didn't). This kind of thing can be difficult to debug, but please refrain from cynical sarcasm here - especially if you want help and support. If you're willing to share your progress and current issues, I'm sure there are people willing to provide some thoughts. Cheers, Ben ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Installing GNURadio On Raspberry Pi
Glen, Beautiful job. Very impressive. It may be that using Raspbian not Ubuntu is my problem. It would be interesting to know if other have success with Raspbian. Thanks, Pete On 5/7/2019 5:44 PM, Glen I Langston wrote: Hi We’ve put our event detection on three Raspberry Pi 3B + for confirming events in the forward direction (not side lobes). I have a 8 GB image .iso that I could put on line this weekend. Where is appropriate for such large files? We installed everything on one Pi then just copied the image to the other SD cards. This is setup for Ubuntu with Gnuradio for use with Airspys and RTL-SDR dongles. The Pi 3B+ can just about eat all 6 MHz of event samples without loosing many samples. The Pi can not FFT the samples to make spectra without loosing a large fraction of the samples. Probably the 3B+ could deal with 2.4 MHz of bandwidth, but not much more. The band pass spectra still look good, but a large fraction of the samples are lost (at 6 MHz bandwidth, 12 MHz samples). We have these in boxes near our telescopes. Image attached. regards Glen On May 7, 2019, at 4:39 PM, Marcus D. Leech wrote: On 05/07/2019 04:20 PM, Ben Hilburn wrote: Hi Pete - Yes, I personally know of multiple. Albin's work of implementing volk kernels for TujaSDR, shared here on the list with some regularity, is an excellent example. On Wed, May 1, 2019 at 5:32 PM P C wrote: Problem Solved! .NOT! Tell me, is anyone running GNURadio on a Raspberry Pi (3-B) using an RTL-SDR dongle? I thought I cured my problems then the next day, more problems. This is what I thought fixed my problem (but later, didn't). This kind of thing can be difficult to debug, but please refrain from cynical sarcasm here - especially if you want help and support. If you're willing to share your progress and current issues, I'm sure there are people willing to provide some thoughts. Cheers, Ben Is there not an Ubuntu image for the rPi? I used a stock Ubuntu image for the Odroid C1 and just used the GnuRadio+friends from the repos, which included gr-osmosdr support for a number of different devices. I did end up doing a source build later, but that was for device support for "newer stuff". ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Could This Be A Speed Problem? How Can I Make It Faster
Kyeong Su Shin, Wow, I think your "answer" gives a far more elegant solution to my problem. I didn't know anything about Python Blocks. I have been trudging through the "GNU Radio Manual and C++ API Reference" but haven't gotten close to that section yet. I have done some searching but the hits that are returned are just a source of confusion because of incorrect or obsolete information or just lack of experience on my part. Your search string displays better information then I have ever found. As for the Throttle block, I don't think I need it. I just stuck it in there to get rid of the warning. My input File Source stream is created by the command line: rtl_sdr -f 34500 -s 100 /tmp/stream I believe that if rtl_sdr command is creating samples at 1M/s and I decimate by 4 then convert to UChar I should be creating 250k bytes/sec to the File Sink. If I understand things correctly that is. Thanks, Pete On 5/17/2019 1:33 AM, Kyeong Su Shin wrote: Hello Pete, This is not really an asnwer to your question lists, but if you want to continuosly process data generated by GNU Radio using Python, you can simply write a GNU Radio Python block (using a 'Python Block' on GNU Radio Companion, or by creating a custom module). In that way, you do not need to use a File Sink, TCP, ZMQ, or whatever that is needed to transfer the data from GNU Radio to your own Python code. There are a few examples on the Internet ( https://www.google.com/search?client=firefox-b-d&q=embedded+python+block+gnuradio ). Also, if the rate of the flow graph is limited by the incoming file stream (i am not 100% certain, but I think that could be the case), I recommend try dropping the Throttle block in your flow graph. It is only used when the rate of the program is not limitted by any other blocks. In my experience, Python IS a bit slow for real-time data processing applications, IF the processing is not handled by external libraries. Writing programs in C/C++ does help if you cannot get the jobs done using existing libraries. Regards, Kyeong Su Shin ---- *보낸 사람:* P C 대신 Discuss-gnuradio *보낸 날짜:* 2019년 5월 17일 금요일 오전 4:13:43 *받는 사람:* GNURadio Discussion List *제목:* [Discuss-gnuradio] Could This Be A Speed Problem? How Can I Make It Faster I have what I think is a problem with processing speed. I want to run the attached flow graph on my Raspberry Pi 3B. It captures a serial bit stream. The lower File Sink is a FIFO type file that is read and processed in real time (I hope) by the Python script decoder.py (attached). Actually decoder.py is a dummed down script I am using to isolate the problem. The script I hope to use is ~100 lines long. The upper File Sink just writes a file that is processed off line by a different script. Note that in decoder.py there is a variable delay. If I make delay small, like 0 or 1, I believe the flow graph runs successfully. But if I make delay larger things start to fall apart. By that I mean bits are dropped. Also the Time Sink falls behind. I test that by manually changing the bit stream. What I see is, if delay is small, the Time Sink displays the changed bit stream immediately. If delay is 2 or 3 the change to the bit stream is delayed 5 or 6 seconds. Also, in the larger delay case, the file Capture.sec is also missing bits. It seems that if decoder isn't taking bytes out of the FIFO fast enough, the "backup" reflects back to the output of the Multiply Constant. I separated the paths to the File Sinks hoping that I could avoid this effect but no luck. So, I guess my questions are: (1) Is my analysis correct? (2) Is it reasonable that just one or two times through that "while" loop could be such a problem? (3) Would it be useful to rewrite the processing script as a C program? Keeping in mind that the program I really want to use is 10 or 20 times longer. (4) Am I doing things in a way that slows things down and could be fixed by some manipulation? (5) Shouldn't a FIFO be able to "absorb" the data flow? (6) Would using something like ZMQ get around this problem? Thanks, Pete ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Building an OOT from the Tutorial
I'm having a problem following the Tutorial at: https://wiki.gnuradio.org/index.php/OutOfTreeModules At the step where it says, "Creating the files", as instructed, I type the line: "gr-howto % gr_modtool add -t general -l cpp square_ff" But I get: "bash: gr-howto: command not found" I did some searching and found: https://www.scribd.com/document/375870432/OOT-Tutorial which said to use: "gr-howto$ gr_modtool add -t general square_ff" But I get the same results. I found this link from 2013 on this list that I am sure is obsolete: https://lists.gnu.org/archive/html/discuss-gnuradio/2013-01/msg00357.html I also tried: https://sites.google.com/a/microembedded.com/gnuradio/outoftreemodules Where it said to use: |"~/tmp % gr_modtool.py create howto" I guess I have to resort to bothering you folks. Where can I find an example of how to build an OOT for dummies? Thanks, Pete | ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Building an OOT from the Tutorial
Marcus, There is a distinct possibility I have mucked up the installation. I started with the most straightforward steps. I am using a Raspberry Pi with their GUI that looks like a Windows type GUI. It has a Add/Remove software option and will search for any items I want. I am pretty sure it uses apt. It found GNURadio and a whole host of blocks. I installed and no osmocom blocks were available. I have the cheapy dongle. So I went back to Add/Remove software and saw further down, GNURadio blocks from the OsmoSDR project. I installed and now I had the block I needed. Unfortunately that gave me all kinds of segment faults and other Python errors. So I searched for other ways to install GNURadio and tried those. In all likelihood I have remnants of those other attempts laying all over my SD card. BUT---IN THIS CASE Kyeong Su Shin gets the blue ribbon. I was including the prompt in the command. I have been banging my head against GNURadio so much I think I'm loosing it. I am now past that step and will get back to the rest soon. Note, if that OutOfTreeModules is obsolete I tried the tutorials but they seem to be down right now. https://wiki.gnuradio.org/index.php/Guided_Tutorial_GRC https://wiki.gnuradio.org/index.php/Tutorials and https://wiki.gnuradio.org/index.php/Guided_Tutorial_GNU_Radio_in_Python All say, "Unable to connect". Thanks, Pete On 5/20/2019 12:18 AM, Müller, Marcus (CEL) wrote: Hi PCZZS, I'm a bit surprised, this document still attracts so much attention. I'd generally recommend simply going through the guided tutorials starting by chapter 1; chapter 4 introduces out-of-tree modules and gr_modtool. Anyway, what you're encountering sounds a lot like an installation problem. How did you install GNU Radio? Are you maybe having a different gr_modtool that remained from an older installation? Best regards, Marcus On Sun, 2019-05-19 at 15:19 -0500, P C wrote: I'm having a problem following the Tutorial at: https://wiki.gnuradio.org/index.php/OutOfTreeModules At the step where it says, "Creating the files", as instructed, I type the line: "gr-howto % gr_modtool add -t general -l cpp square_ff" But I get: "bash: gr-howto: command not found" I did some searching and found: https://www.scribd.com/document/375870432/OOT-Tutorial which said to use: "gr-howto$ gr_modtool add -t general square_ff" But I get the same results. I found this link from 2013 on this list that I am sure is obsolete: https://lists.gnu.org/archive/html/discuss-gnuradio/2013-01/msg00357.html I also tried: https://sites.google.com/a/microembedded.com/gnuradio/outoftreemodules Where it said to use: "~/tmp % gr_modtool.py create howto" I guess I have to resort to bothering you folks. Where can I find an example of how to build an OOT for dummies? Thanks, Pete | ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Building an OOT from the Tutorial
Kyeong Su Shin, You win the blue ribbon. I'm loosing it. Thanks, Pete On 5/20/2019 12:27 AM, Kyeong Su Shin wrote: Dear Pete, To me, it sounds like that you are inputting ``` gr-howto % gr_modtool add -t general -l cpp square_ff ``` instead of ``` gr_modtool add -t general -l cpp square_ff ``` . That "gr-howto %" is part of the terminal prompt (saying that you are in the "gr-howto" directory), and shall not be inputted. Regards, Kyeong Su Shin ---- *보낸 사람:* P C 대신 Discuss-gnuradio *보낸 날짜:* 2019년 5월 20일 월요일 오전 5:19:03 *받는 사람:* GNURadio Discussion List *제목:* [Discuss-gnuradio] Building an OOT from the Tutorial I'm having a problem following the Tutorial at: https://wiki.gnuradio.org/index.php/OutOfTreeModules At the step where it says, "Creating the files", as instructed, I type the line: "gr-howto % gr_modtool add -t general -l cpp square_ff" But I get: "bash: gr-howto: command not found" I did some searching and found: https://www.scribd.com/document/375870432/OOT-Tutorial which said to use: "gr-howto$ gr_modtool add -t general square_ff" But I get the same results. I found this link from 2013 on this list that I am sure is obsolete: https://lists.gnu.org/archive/html/discuss-gnuradio/2013-01/msg00357.html I also tried: https://sites.google.com/a/microembedded.com/gnuradio/outoftreemodules Where it said to use: |"~/tmp % gr_modtool.py create howto" I guess I have to resort to bothering you folks. Where can I find an example of how to build an OOT for dummies? Thanks, Pete | ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio