Lime Suite

Democratising Wireless Innovation
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Welcome to Lime Suite

Lime Suite is a collection of software supporting several hardware platforms including the LimeSDR, drivers for the LMS7002M transceiver RFIC, and other tools for developing with LMS7-based hardware.

Supported hardware

Installers and binaries

We have support for a select number of platforms and package managers. If your platform isn't supported, follow the next sections for getting the dependencies and building LimeSuite.

Ubuntu PPA

The drivers PPA for Ubuntu has a recent build of LimeSuite:

sudo add-apt-repository -y ppa:myriadrf/drivers
sudo apt-get update
sudo apt-get install limesuite limesuite-udev soapysdr-lms7

Windows

  • The build/bin/Release directory of the repo has a pre-built binary for the lms7suite GUI. Use this application for testing, plotting, firmware updates, and hardware evaluation.
  • LimeSuite is also bundled with the PothoSDR development environment to use supported hardware in an ecosystem of SDR applications like GQRX, Pothos, CubicSDR, and GNU Radio.

OSX homebrew

The pothosware homebrew tap has a build recipe for LimeSuite. Also checkout the dholm homebrew tap for other SDR related software. To install LimeSuite:

brew tap pothosware/homebrew-pothos
brew update
brew install limesuite

Get the dependencies

Before building LimeSuite from source, several dependencies must be installed. However, the dependencies required change based on how much of the suite will be used. LimeSuite will automatically try and build all components that it can satisfy the dependencies for. The following table is a guide to the the requirements for various components.

Component Dependencies Notes
Build system Git & CMake
Core library sqlite3 Has embedded copy for windows
LMS7 GUI wx widgets & OpenGL Has embedded GL for windows
LimeSDR libusb 1.0/CyAPI Use CyAPI for windows
NovenaRF7 i2c and spi dev Linux only device
SoapyLMS7 SoapySDR SDR app ecosystem support

Ubuntu

#packages for soapysdr available at myriadrf PPA
sudo add-apt-repository -y ppa:myriadrf/drivers
sudo apt-get update

#install core library and build dependencies
sudo apt-get install git g++ cmake libsqlite3-dev

#install hardware support dependencies
sudo apt-get install libsoapysdr-dev libi2c-dev libusb-1.0-0-dev

#install graphics dependencies
sudo apt-get install libwxgtk3.0-dev freeglut3-dev

Windows

Users building LimeSuite on windows will need a recent visual studio compiler, preferable 2015. Other dependencies can be obtained from the following download links:

Building LimeSuite

Build on unix

The following commands will clone the LimeSuite repository, configure the project using CMake, build the project, and install it. The output of the cmake command will show enabled and disabled components. Pay careful attention to this before building with make.

git clone https://github.com/myriadrf/LimeSuite.git
cd LimeSuite
mkdir builddir && cd builddir
cmake ../
make -j4
sudo make install

Linux-only post install step: Install the udev rules to enable non-root users to access usb-based devices like the LimeSDR:

cd LimeSuite/
udev-rules
sudo ./install.sh

Build on windows

After installing the dependencies, open a cmd prompt and run the following command to clone the repository:

git clone https://github.com/myriadrf/LimeSuite.git

Now use cmake-gui or cmake command line to configure the project and to generate a visual studio project solution. The following settings are an example on how to specify the dependencies (cmake command line or gui), your installation directories may vary:

-DWX_ROOT_DIR=C:/wxWidgets-3.1.0
-DwxWidgets_ROOT_DIR=C:/wxWidgets-3.1.0
-DwxWidgets_LIB_DIR=C:/wxWidgets-3.1.0/lib/vc140_x64_lib
-DFX3_SDK_PATH=C:/EZ-USB FX3 SDK/1.3
-DSoapySDR_DIR=C:/PothosSDR

Build the generated visual studio project solution.

LimeSDR notes

The following post-install tasks are designed to get users up and running with the LimeSDR by making sure that LimeSuite utilities can find the LimeSDR attached to your system and that firmware and FPGA images are up-to-date.

CyUSB driver (windows)

Windows only, OSX and Linux users do not need to install drivers for USB support. Download the CyUSB driver: The driver is part of the cyusb suite, however we also maintain a zip of just the drivers to make it easy on users. LimeSDR should appear as an unrecognised device in the device manager. Use the device properties dialogue to specify the path to the drivers directory (its the directory that contains CyUSB.chm). Once the proper directory is specified, the driver installation should complete successfully.

Locating the LimeSDR

From the command line run LimeUtil to get a list of available devices:

LimeUtil --find

#Example print output from LimeUtil
  * [module=STREAM, media=USB, name=USB 3.0 (LimeSDR-USB), addr=241:1204]

Similarly, if users will be working with SDR ecosystem applications, its also a good check to verify that the LimeSDR can be found by SoapySDR:

#make sure that lime is one of the available factories 
SoapySDRUtil --info

SoapySDRUtil --find

#Example print output from LimeUtil
Found device 0
  addr = 241:1204
  driver = lime
  media = USB
  module = STREAM
  name = USB 3.0 (LimeSDR-USB)
  • TODO lms7suite GUI screenshot

Updating firmware/FPGA