# GNU Radio for Android

**URL:** <https://www.ruby-forum.com/t/gnu-radio-for-android/241855>\
**Category:** GNU Radio\
**Created:** [May 5, 2015, 10:07pm UTC](https://www.ruby-forum.com/t/gnu-radio-for-android/241855 "2015-05-05T22:07:26Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![musicdenotation](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ea666f/32.png) [@musicdenotation](https://www.ruby-forum.com/u/musicdenotation)\
**Post date:** [May 5, 2015, 10:07pm UTC](https://www.ruby-forum.com/t/gnu-radio-for-android/241855/1 "2015-05-05T22:07:26Z")

</div>

While I have been talking around it for a while, I wanted to better  
publicize our work on GNU Radio for Android. We can now build  
applications  
that run GNU Radio flowgraphs on Android (\>= 5.0). We build the  
flowgraph  
in C++ and link it through to a Java app for the user interface using  
the  
JNI. I have tried to collect the howtos for getting all of the various  
parts up and running here:

[http://gnuradio.org/redmine/projects/gnuradio/wiki/Android](http://gnuradio.org/redmine/projects/gnuradio/wiki/Android)

Last week, we got UHD support working, and I felt this was a big marker  
in  
our progress on the project. To top it off, we now even have ControlPort  
support on Android apps, which makes it possible to provide remote  
control  
and run tools like gr-perf-monitorx, from which I’m already finding out  
new  
things about GNU Radio and Android device performance issues.

There’s still a big warning about this being a work in progress, and it  
definitely is. However, with the support for all of the various hardware  
and tools that we now have, I think we’re at a place of usability for a  
lot  
of applications.

Feel free to ask questions if things in the wiki don’t work for you.  
I’ve  
tried to go through it multiple times and make it as robust as possible  
and  
mostly things should be copy-and-paste. But as things change, and they  
do  
rapidly here, we’re likely to continue to need some evolution of the  
instructions.

I will hopefully post some of my simple applications online sometime  
soon,  
as well.

Tom

---

<div class="post-metadata">

**Author:** ![tomrobinson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/d78d45/32.png) [@tomrobinson](https://www.ruby-forum.com/u/tomrobinson)\
**Post date:** [May 6, 2015, 9:30am UTC](https://www.ruby-forum.com/t/gnu-radio-for-android/241855/2 "2015-05-06T09:30:55Z")

</div>

Wow, it’s so cool! I’ll have a try, following your wiki. -Lin

2015-05-06 4:06 GMT+08:00 Tom R. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

---

<div class="post-metadata">

**Author:** ![tomrobinson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/d78d45/32.png) [@tomrobinson](https://www.ruby-forum.com/u/tomrobinson)\
**Post date:** [May 9, 2015, 2:05am UTC](https://www.ruby-forum.com/t/gnu-radio-for-android/241855/3 "2015-05-09T02:05:53Z")

</div>

Hi,

I’ve been trying the instructions in the wiki with ubuntu 15.04 and gcc  
4.8  
(4.9 also gave me problems).

I got the following error checking out the android branch from git://  
[git.gnuradio.org/gnuradio.git](http://git.gnuradio.org/gnuradio.git)  
error: The following untracked working tree files would be overwritten  
by  
checkout:  
volk/CMakeLists.txt  
…  
Aborting

But it worked well with the repo: [GitHub - trondeau/gnuradio: GNU Radio](https://github.com/trondeau/gnuradio/)

I also got an error compiling GRAnd. It seems to be related with boost,  
which I cross compiled following the instructions. I’ve attached the  
output  
of make, if anyone has the time to have a look at it it would be much  
appreciated.

Thanks,  
Murray

2015-05-06 8:29 GMT+01:00 Lin HUANG [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

---

<div class="post-metadata">

**Author:** ![tomrobinson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/d78d45/32.png) [@tomrobinson](https://www.ruby-forum.com/u/tomrobinson)\
**Post date:** [May 9, 2015, 4:11pm UTC](https://www.ruby-forum.com/t/gnu-radio-for-android/241855/4 "2015-05-09T16:11:45Z")

</div>

On Fri, May 8, 2015 at 7:57 PM, Murray T.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> …  
> Aborting
> 
> But it worked well with the repo: [GitHub - trondeau/gnuradio: GNU Radio · GitHub](https://github.com/trondeau/gnuradio/)

Ok, that should be fixed now. I use the trondeau/gnuradio android branch  
as  
my staging area while working on new stuff. The one on gnuradio’s repo  
was  
prior to me rebasing off the latest master, which was before the volk  
submodule change. I’ve just updated gnuradio’s repo branch to the latest  
so  
we shouldn’t see this problem now.

> I also got an error compiling GRAnd. It seems to be related with boost,  
> which I cross compiled following the instructions. I’ve attached the output  
> of make, if anyone has the time to have a look at it it would be much  
> appreciated.
> 
> Thanks,  
> Murray

Can you send me the command you used and output of cmake? I’m wondering  
if  
it’s picking up a wrong version of Boost. You can force this by passing  
it  
-DBOOST\_ROOT=\<base of dir when libboost\_xxx.a lives in base/lib\>.

Just make sure that PREFIX is set correctly and Boost was installed into  
that same PREFIX.

Tom

---

<div class="post-metadata">

**Author:** ![tomrobinson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/d78d45/32.png) [@tomrobinson](https://www.ruby-forum.com/u/tomrobinson)\
**Post date:** [May 9, 2015, 7:00pm UTC](https://www.ruby-forum.com/t/gnu-radio-for-android/241855/5 "2015-05-09T19:00:00Z")

</div>

On Sat, May 9, 2015 at 11:07 AM, Murray T.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> I’ve attached the command used and the output of cmake.  
> Thanks for your time.  
> Murray

Ah, ok, I think I see the problem. I’ve left out PMT as a dependency. If  
you go into gr-grand/CMakeLists.txt file, change line 113 from:

set(GR\_REQUIRED\_COMPONENTS RUNTIME VOLK)

to

set(GR\_REQUIRED\_COMPONENTS RUNTIME PMT VOLK)

I have a feeling my system is picking up an outdated component check  
file  
because it’s pulling in libgnuradio-pmt.so for me as part of the RUNTIME  
check.

Everything else looked good. Thanks for all the necessary details here.

Let me know if this works for you and I’ll check in the patch.

Also, what version of cmake are you using? Looks like there’s a lot of  
sloppiness in my cmake stuff for this project, and I’m guessing you’re  
using a newer version that’s throwing all of those warnings. I’ll try to  
clean that up, too.

Thanks,  
Tom

---

<div class="post-metadata">

**Author:** ![tomrobinson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/d78d45/32.png) [@tomrobinson](https://www.ruby-forum.com/u/tomrobinson)\
**Post date:** [May 9, 2015, 5:08pm UTC](https://www.ruby-forum.com/t/gnu-radio-for-android/241855/6 "2015-05-09T17:08:25Z")

</div>

I’ve attached the command used and the output of cmake.  
Thanks for your time.  
Murray

2015-05-09 15:10 GMT+01:00 Tom R. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

---

<div class="post-metadata">

**Author:** ![tomrobinson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/d78d45/32.png) [@tomrobinson](https://www.ruby-forum.com/u/tomrobinson)\
**Post date:** [May 9, 2015, 11:00pm UTC](https://www.ruby-forum.com/t/gnu-radio-for-android/241855/7 "2015-05-09T23:00:42Z")

</div>

Thanks Tom,  
That change solved the problem and I managed to install it.  
I’m using cmake version 3.0.2. The change in the gnuradio repo also  
fixed  
my problem checking out the android branch.  
I appreciate you taking the time to help me with this problems so  
quickly,  
specially on a weekend. I’ll have to think about something cool to do  
with  
GnuRadio and Android now 🙂

Cheers,  
Murray

2015-05-09 17:58 GMT+01:00 Tom R. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

---

<div class="post-metadata">

**Author:** ![tomrobinson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/d78d45/32.png) [@tomrobinson](https://www.ruby-forum.com/u/tomrobinson)\
**Post date:** [May 11, 2015, 2:42am UTC](https://www.ruby-forum.com/t/gnu-radio-for-android/241855/8 "2015-05-11T02:42:14Z")

</div>

On Sat, May 9, 2015 at 4:59 PM, Murray T.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> 

No problem. I’m glad we got it worked out. I just pushed that patch to  
the  
public repo.

And yes, let’s figure out some cool stuff here!

Tom
