LimeSDRmini and Beaglebone Black

Hi folks!
Okay, I am writing my first post on a forum ever. You will probably notice. I probably put it in the wrong place.
I used to be an RF engineer and then I somehow started building giant telescopes as a controls engineer for a living. I recently got intrigued by SDR and decided that a good way to learn more about SDR and Linux would be to dive in and try to put together a nice simple SDR. Great idea I said to myself - I can improve my Linux chops and do some RF engineering. I looked at what was available (spec. wise) and it was a no-brainer that the Lime SDR mini was the best bang for the buck. So I signed up and waited for my very cool little radio to arrive – incredible performance potential for about 3% the cost of what I used to design and build in analog component. Problem is, I am a Linux newby. So I thought to myself “Hey self, I will be able to learn Linux and SDR with an interesting project”. So I bought a Beaglebone Black with Debian Linux running on it. I think I am now in way over my head (good thing my head is hard and I will press on at all costs).
I managed to get LimeSuite running nicely on my giant Mac (good for us old guys who did so much SMD soldering we can’t see anymore). But I don’t want to use my nice Mac for this, I want to build a small, power sipping portable radio.
The Beaglebone is my plan for the brains of a small portable radio. I am an old-school ham (N6AI) and think that a nice starter project will be a little HF transceiver (again, more interesting the than the spread spectrum stuff I used to do). Enough blah blah blah…
Here is my issue: If I try and install LimeSuite on my Beaglebone, it says that I need CMake 3.1.3 or higher. If I try and install CMake 3.1.3 or higher, I find that I need a newer version of C++. I’m not sure that I can install an newer version of C++ without seriously borking my Linux install? I don’t know… I am a talented embedded micro-controller assembly language programmer but a moron Linux weeny.
Any advice on this topic for a Linux newb like me will be welcome. I’m open for any ideas including throwing out the Beaglebone for something else or whatever. Thank you for reading all this nonsense.
Aloha,
Bill

This, of course will not help your present issue, but you might want to look at an Udoo X86 (I have the Ultra, Marty is using it on the advanced, I think. Great little SBC. Win/Linux/Android capable quad core.
I am learning Linux much better, if I learn to do it in Windows, then try in Linux.
I think, balls to the wall, it takes 38 watts, or close.

When we get good, the Jetson TX2 could be in the future.

Keep at it & have fun.

Ed

Wow. 38 Watts is impressive. I will look into it. Thanks Ed! And good luck with your project!
Bill

+1 on the UDOO x86. One particularly nice thing about them is that the GPU has OpenCL support, so you can use this to offload compute intensive stuff and run apps like gr-fosphor.

The integrated Arduino could come in quite handy if you need some GPIO to control e.g. RF relays, or to generate signals to drive stepper motors etc.

In any case, back to cmake. Was this a package install from somewhere or attempt at building source?

@mcbill - Bill,

AA7QQ is correct - I’m using the UDOO Advanced card on Ubuntu Linux 17.10 (Artful Aardvark) and it’s been working great with the LimeSDR and the LimeSDR Mini - I’d highly recommend it.

73 de Marty, KN0CK

Sounds like the UDOO is the way to go. I decided on a Beaglebone because it had a fairly powerful 1 GHz processor running about 55 Watts, and it has a GPU of some sort. Also, I have always had good luck with TI chips and product. But the UDOO looks considerably more powerful for this application.

Andrew - Thanks for getting back to me. I installed cmake 2.8.9 from a package, but LimeSDR says it needs cmake 3.1.3.
So I uninstalled cmake 2.8.9 and built the very latest stable version of cmake from source - version 3.11.1. But it wouldn’t compile giving me an error about needing a newer version of C++. I think it was asking for C++11, but I don’t remember - I could try it again.

I thought perhaps I was about to mess up my Linux install, so I removed the half-built cmake 3.11.1 and put version 2.8.9 back on. I was getting into uncomfortable territory.

Marty - thank you. It is nice to know that there is a working solution out there. I like your call sign.

Aloha,
Bill

Hi Bill,

It sounds as if the Debian version installed on the Beagleboard is very old. Even Debian Jessie has cmake version 3.6.2 (from backports). I suggest to upgrade Debian to Stretch (latest stable) which shoulld enable even bleeding edge software to build. Otherwise you’re looking at spending money on new hardware every time you can’t get something working in software.

Regards,
Adrian

BBB has just a single ARM core and will be pretty resource constrained. It does have a GPU also, but I’m not aware of any OpenCL support for it, so I’m not sure how you’d use it for anything but graphics. Don’t get me wrong, they’re a fantastic little board and do a great job at e.g. CNC machine control, thanks to the PRUs (2x embedded microcontrollers), but wouldn’t be my first choice for SDR.

Ubuntu is better supported, e.g. via pre-built packages available from the Myriad-RF PPAs, and the UDOO x86 is an excellent host for running this.

1 Like

The FriendlyARM nanoPi Fire3 is a speedy 8-core 64-bit 1.4GHz ARM, even faster than the ODROID-C2.
Welcome to Ubuntu 16.04.4 LTS 4.4.49-s5p6818
System load: 1.20 Up time: 1 min Local users: 2
Memory usage: 16 % of 953Mb IP: 192.168.10.243
CPU temp: 55°C
Usage of /: 14% of 59G storage/: 3% of 458G

Thanks for all the advice Andrew and everyone. I’m ordering a UDOO today.
The Debian on the Beagleboard is Jessie. I will try and figure out how to upgrade it to Stretch and keep fooling with it.

I gave up on the Beaglebone - I need more memory than it has. I now have my UDOO X86. Trying to figure that out.

You’ll like the X86. Which did you get?

Ed

Another nice thing about the UDOO (I have an Ultra running U16.04) is that the SOC has a native SATA interface, so you can stream data to a drive without clogging up a USB port. I can run the Lime (original, not mini) plus a 1 TB 2.5" disk using just the default UDOO power supply. And, the 3 (count 'em!) USB ports are all USB3.

Hi Ed, Robert,
I got the Advanced Plus version. Didn’t spring for the Ultra. My immediate goal is to duplicate the demo that Andrew posted using the fosphor block for GNU radio.


As long as I have a GPU, I might as well use it.
I wish there was a build sheet so I knew what to load and in what order to get it to a functioning state.

1 Like

You’ll need to get the Intel OpenCL SDK set up first:

https://software.intel.com/en-us/intel-opencl

Once set up you can test it’s working by installing clinfo:

$ sudo apt-get install clinfo

The output should then show the GPU as an available platform.

You’ll obviously need Lime Suite installed also.

Thanks Andrew. I tried to install it, but ran out of disk space. You used the 32 Gb drive in your demo didn’t you?
I had already installed Lime Suite and GNU radio. Maybe I don’t need all of GNU radio?

Ah, no, I used an external drive. At least I think I did… (would have to double check).