Cannot install piaware on Orange Pi Zero Plus (Allwinner H5 arm64)

Hello everyone,

Last month i’ve fried my OPi zero using an LG quick charger. I believe that the board requested more power and the charger pumped up 9V into it. Not sure, but now pulls 3,4V/1,3A and it’s getting hot instantly. The more you learn…

So,i’ve ordered another one. But i chosed the “plus” as it has a better processor without checking if it would be possible to install piaware on it.

At this moment, besides that the ArmbianOS for it is in testing phase for this board (but it works), piaware refuses to install and gives the following error:

sudo apt-get update

Hit:7 Index of /debian stretch Release
Reading package lists… Done
N: Skipping acquire of configured file ‘piaware/binary-arm64/Packages’ as repository ‘http://flightaware.com/adsb/piaware/files/packages jessie InRelease’ doesn’t support architecture ‘arm64’
root@orangepizeroplus:~# sudo apt-get install piaware
Reading package lists… Done
Building dependency tree
Reading state information… Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
** piaware:armhf : Depends: tcllib:armhf but it is not installable**
E: Unable to correct problems, you have held broken packages.

Probably, Piaware cannot be installed as it is not a native 64bit application.

I have searched and found out that i can actually install 32bit apps to 64bit OS. Unfortunatelly, my coding skils are very low.

Any tutorials,ideas on how to install piaware on this board?

Thank you!

Try this

(1) First give following command to purge piaware repository which you have installed:

sudo dpkg --purge piaware-repository

.

(2) After purging the repository, run these commands

sudo apt-get update  
sudo apt-get install git  
git clone https://github.com/jprochazka/adsb-receiver.git  
cd ~/adsb-receiver  
chmod +x install.sh  
./install.sh 

.
After the last command (./install.sh), you will be offered options.
In the options offered, choose:

  1. dump1090-fa
  2. Flightaware piaware (sometimes Flightaware piaware is not offered separately and is automatically installed when you choose dump1090-fa)

NOTE:
(a) To choose an option, move selection by arrow keys, then when on required option, press Space Bar, then press Enter key.

(b) You will be offered many other options also. Do NOT choose any other options.

ADS-B Receiver Project Setup Scripts

.

2 Likes

Hello abcd567 (always to the rescue),

I have used jprochazka’s script on my last OPi0, and tried on OPI0+ also.

There are 2 versions of Armbian for OPi0+: Stretch & Bionic.

On Stretch, dump1090fa & piaware can be installed with the script (YAY!). Unfortunatelly, Stretch has a network DNS bug which is restricting the OPi to connect to the internet. I always need to reinitiate the network drivers (?!) in order to reconnect.

On Bionic, there is no network bug, but the script doesn’t show the dump1090-fa option. Just mutability. So, going further with mutability, i receive the following:

IndexError: tuple index out of range
debian/rules:55: recipe for target ‘build_cxfreeze’ failed
make[1]: *** [build_cxfreeze] Error 1
make[1]: Leaving directory ‘/root/adsb-receiver/build/piaware_builder/package-jessie’
debian/rules:83: recipe for target ‘build’ failed
make: *** [build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2

_ Installing the FlightAware PiAware client package…_

dpkg: error: cannot access archive '/root/adsb-receiver/build/piaware_builder/piaware*.deb’: No such file or directory_

_ Checking that the FlightAware PiAware client package was installed properly…_

_ INSTALLATION HALTED!_
_ UNABLE TO INSTALL A REQUIRED PACKAGE._
_ SETUP HAS BEEN TERMINATED!_

The package “piaware” could not be installed.

_ ------------------------------------------------------------------------------_
_ FlightAware PiAware client setup halted._

At this point, it’s either fixing the DNS bug or finding a way to show 1090-fa option. :frowning:

Thanks for the support!

1 Like

Interesting. I am also trying to get an Orange Pi Zero Plus running; I am running into a funny error with the script. It runs for a while after I select the relevant options, and then fails out with the following:

    In function ‘show_config’:
sdr_bladerf.c:116:76: error: passing argument 3 of ‘bladerf_get_frequency’ from                                  incompatible pointer type [-Werror=incompatible-pointer-types]
  (status = bladerf_get_frequency(BladeRF.device, BLADERF_MODULE_RX, &freq)) < 0                                  ||
                                                                     ^
In file included from sdr_bladerf.c:23:0:
/usr/include/libbladeRF.h:1262:15: note: expected ‘bladerf_frequency * {aka long                                  unsigned int *}’ but argument is of type ‘unsigned int *’
 int CALL_CONV bladerf_get_frequency(struct bladerf *dev,
               ^~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
Makefile:41: recipe for target 'sdr_bladerf.o' failed
make[2]: *** [sdr_bladerf.o] Error 1
make[2]: Leaving directory '/home/onshi/adsb-receiver/build/dump1090-fa/dump1090                                 '
dh_auto_build: make -j1 RTLSDR=yes BLADERF=yes DUMP1090_VERSION=3.6.3 returned e                                 xit code 2
debian/rules:23: recipe for target 'override_dh_auto_build' failed
make[1]: *** [override_dh_auto_build] Error 2
make[1]: Leaving directory '/home/onshi/adsb-receiver/build/dump1090-fa/dump1090                                 '
debian/rules:32: recipe for target 'build' failed
make: *** [build] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2

  Entering the dump1090-fa build directory...
  Installing the dump1090-fa package...

dpkg: error: cannot access archive 'dump1090-fa_3.6.3_*.deb': No such file or di                                 rectory

  Checking that the dump1090-fa package was installed properly...

  INSTALLATION HALTED!
  UNABLE TO INSTALL A REQUIRED PACKAGE.
  SETUP HAS BEEN TERMINATED!

The package "dump1090-fa" could not be installed.

  ------------------------------------------------------------------------------
  Dump1090-fa setup halted.

Press enter to continue...

Hmm… a little googling suggests other projects recently ran into problems with bladerf…

.

Please see this post for WORKAROUND
(Note: The workaround for Version numbers in file version.sh has been fixed by J Prochazka few days after my below noted post on GitHub).
.

There is a PR for the bladerf issue here: use correct type for bladerf_get_frequency by larsks · Pull Request #22 · flightaware/dump1090 · GitHub
(though it still needs some work)

I always just remove the bladerf dependencies from the file debian/control and change the compile option to BLADERF=no in debian/rules

That way i don’t need all those dependencies when compiling dump1090-fa.

I guess you would need to git clone and compile yourself though as the receiver-project probably clones the repository and instantly starts the compilation.

Which one do you compile?

  • deb package (sudo dpkg-buildpackage -b)
    OR
  • binary (sudo make BLADERF=no)

debian package.

you need the following changes:

diff --git a/debian/control b/debian/control
index f60de0d..587fb46 100644
--- a/debian/control
+++ b/debian/control
@@ -2,7 +2,7 @@ Source: dump1090-fa
 Section: embedded
 Priority: extra
 Maintainer: Oliver Jowett <oliver@mutability.co.uk>
-Build-Depends: debhelper(>=9), librtlsdr-dev, libusb-1.0-0-dev, pkg-config, dh-systemd, libncurses5-dev, libbladerf-dev
+Build-Depends: debhelper(>=9), librtlsdr-dev, libusb-1.0-0-dev, pkg-config, dh-systemd, libncurses5-dev
 Standards-Version: 3.9.3
 Homepage: http://www.flightaware.com/
 Vcs-Git: https://github.com/flightaware/dump1090.git
@@ -19,7 +19,7 @@ Description: transitional dummy package for dump1090
 
 Package: dump1090-fa
 Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}, libbladerf1 (>= 0.2016.06), adduser, lighttpd
+Depends: ${shlibs:Depends}, ${misc:Depends}, adduser, lighttpd
 Replaces: dump1090 (<< 3.0)
 Breaks: dump1090 (<< 3.0)
 Description: ADS-B Ground Station System for RTL-SDR
diff --git a/debian/rules b/debian/rules
index b97cd02..d31ed38 100755
--- a/debian/rules
+++ b/debian/rules
@@ -20,7 +20,7 @@ ifeq ($(DEB_HOST_ARCH),armhf)
 endif
 
 override_dh_auto_build:
-       dh_auto_build -- RTLSDR=yes BLADERF=yes DUMP1090_VERSION=$(DEB_VERSION)
+       dh_auto_build -- RTLSDR=yes BLADERF=no DUMP1090_VERSION=$(DEB_VERSION)

After editing files dump1090/debian/control and dump1090/debian/rules

pi@orangepipc:~/dump1090$ sudo dpkg-buildpackage -b
dpkg-buildpackage: info: source package dump1090-fa
dpkg-buildpackage: info: source version 3.6.3
dpkg-buildpackage: info: source distribution stable
dpkg-buildpackage: info: source changed by Oliver Jowett <oliver@mutability.co.uk>
dpkg-buildpackage: info: host architecture armhf
 dpkg-source --before-build dump1090
 debian/rules clean
debian/rules:24: *** missing separator (did you mean TAB instead of 8 spaces?).  Stop.
dpkg-buildpackage: error: debian/rules clean gave error exit status 2

You should edit your file instead of copy pasting. copy/paste screws up spaces/tabs

git checkout the file to restore the original then edit manually.

1 Like

@wiedehopf
Thanks. Copy-paste has created the problem. Simple editing in place did the job.

pi@orangepipc:~/ $ sudo git clone https://github.com/flightaware/dump1090.git
Cloning into 'dump1090'...
... ...
... ...
cd dump1090

sudo nano debian/control

.

sudo nano debian/rules

.

#Install packages to fulfill dependencies, and tools to build the package
sudo apt install  debhelper  dh-systemd  librtlsdr-dev  libusb-1.0-0-dev  
sudo apt install  pkg-config  libncurses5-dev  lighttpd

#Now build dump1090-fa package
sudo dpkg-buildpackage -b

dpkg-buildpackage: info: source package dump1090-fa
dpkg-buildpackage: info: source version 3.6.3
.... ....
.... ....
.... ....
dpkg-deb: building package 'dump1090-fa' in '../dump1090-fa_3.6.3_armhf.deb'.
 dpkg-genbuildinfo --build=binary
 dpkg-genchanges --build=binary >../dump1090-fa_3.6.3_armhf.changes
dpkg-genchanges: info: binary-only upload (no source code included)
 dpkg-source --after-build dump1090
dpkg-buildpackage: info: binary-only upload (no source included)
 signfile dump1090-fa_3.6.3_armhf.buildinfo
gpg: skipped "Oliver Jowett <oliver@mutability.co.uk>": No secret key
gpg: dpkg-sign._xxzGXIH/dump1090-fa_3.6.3_armhf.buildinfo: clear-sign failed: No secret key

dpkg-buildpackage: error: failed to sign .buildinfo file

cd ../
ls
dump1090                dump1090-fa_3.6.3_armhf.buildinfo  dump1090-fa_3.6.3_armhf.deb
dump1090_3.6.3_all.deb  dump1090-fa_3.6.3_armhf.changes    dump1090-fa-dbgsym_3.6.3_armhf.deb

No need for any of the 3 sudo in that post.

Much nicer than my diff to look at i suppose :slight_smile:

True, but only if user is root. If I open the file as user pi, and dont use sudo, the file opens as write protected.

That’s because you cloned the repository with sudo as well :slight_smile:

Yes, you are right, but I was forced to use sudo to clone (else it will fail to clone) because I did not clone in ~ (/home/pi) directory. I cloned it from inside ~/build-dump-fa-deb (/home/pi/build-dump-fa-deb) directory. This I did to keep all related files inside one exclusive directory build-dump-fa-deb to make it easy to find. :slight_smile:

I have not shown build-dump-fa-deb directory in my above post to avoid confusion and keep things simple. :slight_smile:

1 Like

I was getting ready to get an Orange Pi Zero Plus, I am happy that someone else is trailblazing this before I get that :smiley:

Also tested and worked on Ubuntu 18.04 (Bionic) on ARM64 (Odroid N2)

Hi! can I ask why you chose an OPi? (over an RPi).
I nearly used an OPi for one site because it offered an external WiFi antenna, but decided for an AP with the Pi connected via Cat5 (at this stage, there seemed no benefit to use anything other than a '3B (for this site)).
Did you ‘choose’ an OPi or just happen to have one available?

@geckoVN

I purchased Orange Pi PC in December 2015, just out of curiosity and urge to explore.

This thread has prompted me to purchase it:

Orange Pi PC – a $15 alternative to RPi 2? So far, so good