Radarcape:Acarsdec: Difference between revisions
imported>Dl4mea |
imported>Dl4mea mNo edit summary |
||
Line 13: | Line 13: | ||
opkg install cmake | opkg install cmake | ||
opkg install libusb-1.0-dev | opkg install libusb-1.0-dev | ||
opkg install libsndfile-dev | |||
</source> | </source> | ||
This will take some time. | This will take some time. | ||
Line 55: | Line 56: | ||
# remove -D WITH_ALSA from the CFLAGS line<br> | # remove -D WITH_ALSA from the CFLAGS line<br> | ||
Next, I found that with some other compiler options the CPU load is about one third of the original ones. This modifies a line you should already have modified<br> | |||
original: CFLAGS= -g -Ofast -ftree-vectorize -funroll-loops -pthread -D WITH_RTL -D WITH_SNDFILE -D WITH_ALSA<br> | original: CFLAGS= -g -Ofast -ftree-vectorize -funroll-loops -pthread -D WITH_RTL -D WITH_SNDFILE -D WITH_ALSA<br> | ||
modified: CFLAGS= - | modified: CFLAGS= -flto -O3 -ffast-math -march=armv7-a -mfloat-abi=softfp -mtune=cortex-a8 -mfpu=neon -D WITH_RTL -D WITH_SNDFILE | ||
# add | # add the library librt to the linker libraries: | ||
original: LDLIBS= -lm -pthread -lrtlsdr -lsndfile -lasound | |||
modified: LDLIBS= -lm -pthread -lrtlsdr -lsndfile -lasound -lrt |
Revision as of 18:35, 29 May 2014
acarsdec on the Radarcape
acarsdec is a software which uses a DVB-T stick in order to decode up to 4 channels ACARS signals within a 1MHz band segment. The Radarcape's front panel extension port may be used to plug such a DVB-T stick.
The decoding process requires some mathematical functions and obtains plenty of processing resources. Due to that it is not guaranteed to run on a heavily loaded Radarcape and/or together with FR24 feeder. You may need to disable some features.
Installation requires some skills in handling a console but at the end is easy.
Prepare Installation
First, you need to install build tools on the Radarcape.
opkg update
opkg install packagegroup-core-buildessential
opkg install cmake
opkg install libusb-1.0-dev
opkg install libsndfile-dev
This will take some time.
Install librtlsdr
Download one of the packaged releases: Look for the eventually greyed .tar.gz text, cut & paste the link of it and fetch it with wget on your Radarcape (in this case it is version 0.5.3, which was current while writing this descrition):
wget --no-check-certificate https://github.com/steve-m/librtlsdr/archive/v0.5.3.tar.gz
Untar/unpack it. Note that the filename eventually may differ for your download
tar xvf v0.5.3.tar.gz
As described here, navigate to ' Building with cmake: ' and follow these steps. You don't need sudo, as you are already root user on your Radarcape. The first command 'cd' must be adopted to what you have got as folder when unpacking your archive in the latest step.
cd librtlsdr-0.5.3
mkdir build
cd build
cmake ../
make
make install
ldconfig
Install acarsdec
acarsdec source package can be found on sourceforge. There is a nice green button with the latest version, click on it and then look for the ' direct link ', which you should cut & paste, edit and execute with wget like shown below.
But before, with a simple cd, go back into your root folder. After uncompressing the archive, change to the folder that became created by tar
cd
wget http://downloads.sourceforge.net/project/acarsdec/acarsdec/2.4/acarsdec-2.4.tar.gz
tar xvf acarsdec-2.4.tar.gz
cd acarsdec-2.4
Now it comes... the complicated part is that ALSA lib is not necessary for the build here, and it seems that the Angstrom distribution that is used on the Radarcape has a different library structure.
That means you need to edit the Makefile:
- remove -D WITH_ALSA from the CFLAGS line
Next, I found that with some other compiler options the CPU load is about one third of the original ones. This modifies a line you should already have modified
original: CFLAGS= -g -Ofast -ftree-vectorize -funroll-loops -pthread -D WITH_RTL -D WITH_SNDFILE -D WITH_ALSA
modified: CFLAGS= -flto -O3 -ffast-math -march=armv7-a -mfloat-abi=softfp -mtune=cortex-a8 -mfpu=neon -D WITH_RTL -D WITH_SNDFILE
- add the library librt to the linker libraries:
original: LDLIBS= -lm -pthread -lrtlsdr -lsndfile -lasound modified: LDLIBS= -lm -pthread -lrtlsdr -lsndfile -lasound -lrt