New install of PiAware 3 can't communicate with Beast

I followed the direction here…

Set “receiver-type” to “beast”. No further configuration is needed.

The impression I get is as exactly as it says. To install beast-splitter you have to compile it from source, and I would think FA would indicate this if so.

setting receiver-type to beast seems to be only supported for the sd-card image.

So i have added the flightaware repository to my debian sources, did you do the same?

If so you might be able to just do an “apt-get install beast-splitter”. (i’m running on an rasperry though and the package might not be available for regular pcs.)

if you are not running a raspi you might need to just compile it from source.
running dpkg-buildpackage as stated in the readme on github will probably result in errors until you install quite a few dependencies you need to compile stuff. a bit of a hassle but just give it a try :slight_smile:

Yes, the repository was added. I’m not sure how else piaware and dump1090-fa would be easily obtained. I’ve made sure I’ve gone over the instruction multiple times, and did searches.

And I tried doing an apt install for beast-splitter but that doesn’t go so well…

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:
beast-splitter : Depends: libboost-program-options1.55.0 but it is not installable
Depends: libboost-regex1.55.0 but it is not installable
Depends: libboost-system1.55.0 but it is not installable
E: Unable to correct problems, you have held broken packages.

Ah i see the problem after trying do to the same on my stretch install.

add
deb http://mirrordirector.raspbian.org/raspbian/ jessie main contrib non-free rpi
to you /etc/apt/sources.list
do an apt-get update and then the install should work.

the required library is too old to be available for stretch :wink:

Have you tried this?

sudo apt-get update

Install packages needed to meet dependencies

sudo apt-get install debhelper libboost-system-dev libboost-program-options-dev libboost-regex-dev dh-systemd

sudo apt-get install git
git clone https://github.com/jprochazka/adsb-receiver.git
cd adsb-receiver/bash/extras
./beastsplitter.sh
1 Like

At the end of execution of cammand ./beastsplitter.sh on RPi/Raspbian Stretch

.... ... ... ....
.... ... ... ....
  Entering the beast-splitter build directory...
  Installing the beast-splitter package...

Selecting previously unselected package beast-splitter.
(Reading database ... 53442 files and directories currently installed.)
Preparing to unpack beast-splitter_3.5.0_armhf.deb ...
Unpacking beast-splitter (3.5.0) ...
Setting up beast-splitter (3.5.0) ...
Created symlink /etc/systemd/system/default.target.wants/beast-splitter.service → /lib/systemd/system/beast-splitter.service.

  Moving the beast-splitter package into the archive directory...

'/home/pi/adsb-receiver/bash/extras/build/beast-splitter/beast-splitter_3.5.0_armhf.deb' -> '/home/pi/adsb-receiver/bash/extras/build/package-archive/beast-splitter_3.5.0_armhf.deb'
'/home/pi/adsb-receiver/bash/extras/build/beast-splitter/beast-splitter-dbgsym_3.5.0_armhf.deb' -> '/home/pi/adsb-receiver/bash/extras/build/package-archive/beast-splitter-dbgsym_3.5.0_armhf.deb'

  Creating the file beast-splitter_maint.sh...
  Setting file permissions for beast-splitter_maint.sh...

mode of '/home/pi/adsb-receiver/bash/extras/build/beast-splitter/beast-splitter_maint.sh' retained as 0755 (rwxr-xr-x)

  Checking if the beast-splitter startup line is contained within the file /etc/rc.local...

  Starting beast-splitter...

  Checking for any running beast-splitter processes...
  Killing the current beast-splitter_maint.sh process...
  Executing the beast-splitter script...

  Entering the ADS-B Receiver Project root directory...

  ------------------------------------------------------------------------------
  beast-splitter setup is complete.

.

Checked installtion:

pi@raspberrypi:~/adsb-receiver/bash/extras $ apt-cache policy beast-splitter
beast-splitter:
  Installed: 3.5.0
  Candidate: 3.5.0
  Version table:
     3.5.0 500
        500 http://flightaware.com/adsb/piaware/files/packages jessie/piaware armhf Packages
 *** 3.5.0 100
        100 /var/lib/dpkg/status

Thank you, I appreciate the effort. But I had already gone ahead and installed the PiAware SD card image since I had a Model 3 available. Everything is functioning now. Not the direction I wanted but it works. It doesn’t appear FA’s instructions on working with an existing OS install are applicable to starting from a vanilla raspbian install.

Thanks everyone for the help!

Fully Manual Method to Install Beast Splitter

Credits:

I have derived this manual method from file beastsplitter.sh of Joe Prochazka’s “adsb-receiver project”.

STEP-BY-STEP METHOD

(1) Update your system
sudo apt-get update

(2) Install packages needed to meet dependencies

sudo apt-get install debhelper libboost-system-dev libboost-program-options-dev libboost-regex-dev dh-systemd

(3) Make new directory to hold build files of beast-splitter, enter the build-bs directory, and clone the soutce-code of beast-splitter

sudo mkdir build-bs
cd build-bs

sudo apt-get install git
sudo git clone https://github.com/flightaware/beast-splitter.git

(4) Enter the cloned directory and build package

Note: It will take long time to complete build process.

cd beast-splitter
sudo dpkg-buildpackage -b

(5) After above build process is completed, and beast-splitter package is built, install it

cd ../
sudo dpkg -i beast-splitter_*.deb

(6) Create necessary scripts to start beast-splitter at boot, and keep it alive.

6.1 - Create new blank file bs-maint.sh

cd build-bs
sudo nano bs-maint.sh

6.2 - Copy-paste following code in the newly created blank file bs-maint.sh
Note: Replace [BEASTSPLITTER_LISTEN_PORT] and [BEASTSPLITTER_CONNECT_PORT] by their actual values.

#! /bin/bash
while true
  do
    sleep 30
    beast-splitter --serial /dev/beast --listen [BEASTSPLITTER_LISTEN_PORT]:R --connect localhost:[BEASTSPLITTER_CONNECT_PORT]:R
  done

6.3 - Make file bs-maint.sh executeable

sudo chmod +x bs-maint.sh

6.4 - Open file rc.local for editing

sudo nano /etc/rc.local 

6.5 - Add following line in the above file, just above last line, i.e. above exit 0.

/home/pi/build-bs/bs-maint.sh &

6.6 - Reboot Pi
sudo reboot

1 Like

Failed to create a new package from the source code beast-splitter 7.1 on debian 11 bullseye on the board Raspberry with RAM 1GB.
To create a package, you need more RAM

you need to place ready-made deb packages with arm architecture on the site armhf and arm64 !

We provide armhf packages for bullseye already.

If you need aarch64 packages, you’ll need to build them yourself, and that may well need a Pi (or other arm system) with more RAM or more swap - recent g++ versions seem particularly memory-hungry. beast-splitter is not a particularly complex bit of code, I suspect you’ll run into similar problems building other things that use boost.

it may well be!
I am enlarging the swap file: sudo nano /etc/dphys-swapfile

when building a package, the system freezes

other users have assembled a deb package for arm64 and sent it to me. thanks to them.

I was told that 1.5 GB of RAM is required to build the package

where can I download the ready-made deb package beast-splitter for armhf?

I had issues building on 1 and 2GB RPIs. It would just hang there for a long time. I opened any ssh session and ran top or htop on it and could see I was running out of physical memory and even swap memory. I moved the SD card to a 4GB RPI and it worked like a charm.

I don’t have a RPI 4 with 4GB RAM to build

I faced the same problem when building dump978-fa on RPi4 with 1 Gb ram. I have another RPi4 with 4 Gb ram. I built dump978-fa package on it successfully.

Ok, this weekend I will try to build 64-bit beast-splitter on my RPi4 with 4 Gb ram (running Raspberry Pi OS Bullseye OS), and upload it to my ppa (personal package archive) at Github

https://github.com/abcd567a/rpi

NOTE: Above ppa is only for 64-bit packages
 

 

1 Like

@antonipls
@jonhawkes2030

I also tried to build dump978-fa on OrangePiPC. It has 1 Gb ram and an additional 1/2 Gb swap. Still the Pi hanged during the build process. Both memories were fully used up, and Pi went into “swap death”.

1 Like

 

The armhf package of beast-splitter is available from Flightaware repository.

pi@raspberrypi:~ $ apt-cache policy beast-splitter
beast-splitter:
  Installed: (none)
  Candidate: 7.1
  Version table:
     7.1 500
        500 http://flightaware.com/adsb/piaware/files/packages bullseye/piaware armhf Packages 

 

You can install it by command

sudo apt-get install beast-splitter

However before issuing above command, you will have to add Flightaware repo to your RPi by commands below:

wget https://flightaware.com/adsb/piaware/files/packages/pool/piaware/p/piaware-support/piaware-repository_7.1_all.deb
sudo dpkg -i piaware-repository_7.1_all.deb
sudo apt-get update   

 

If you want the .deb package itself, give following command (after adding Flightaware repo as above):

sudo apt-get download beast-splitter

 

You will get following warning, but still the package will be downloaded

pi@raspberrypi:~ $ sudo apt-get download beast-splitter

Get:1 http://flightaware.com/adsb/piaware/files/packages bullseye/piaware armhf beast-splitter armhf 7.1 [106 kB]
Fetched 106 kB in 1s (148 kB/s)
W: Download is performed unsandboxed as root as file '/home/pi/beast-splitter_7.1_armhf.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)

pi@raspberrypi:~ $ ls
beast-splitter_7.1_armhf.deb 

 

1 Like

htop shows it graphically(It is much easier to spot when memory and swap are in the red).

1 Like

thanks!
managed to install it into the system!

waiting for arm64 deb file

:+1: :+1: :+1:
Yes, you are 100% right.

 

64-Bit Beast-Splitter “beast-splitter_7.1_arm64.deb” Uploaded to Github

To install

sudo wget -O /etc/apt/sources.list.d/abcd567a.list https://abcd567a.github.io/rpi/abcd567a.list

sudo wget -O - https://abcd567a.github.io/rpi/KEY.gpg | sudo apt-key add -  

sudo apt update  

sudo apt install beast-splitter   

 

 

sudo nano /etc/default/beast-splitter

In above file, changed
ENABLED=“no
to
ENABLED=“yes

Saved file (Ctrl+O) Closed (Ctrl+X)

sudo reboot

pi@raspberrypi:~ $ journalctl -u beast-splitter -n 20 

-- Journal begins at Fri 2022-02-04 05:04:04 EST, ends at Sat 2022-02-19 21:29:23 EST. --
Feb 19 21:28:34 raspberrypi beast-splitter[562]: 0.0.0.0:30005: accepted a connection from 127.0.0.1:50660 with settings R
Feb 19 21:28:34 raspberrypi beast-splitter[562]: 127.0.0.1:50660: connection closed
Feb 19 21:28:35 raspberrypi beast-splitter[562]: 0.0.0.0:30005: accepted a connection from 127.0.0.1:50662 with settings R
Feb 19 21:28:43 raspberrypi beast-splitter[562]: [::]:30005: accepted a connection from [::1]:33096 with settings R
Feb 19 21:28:44 raspberrypi beast-splitter[562]: 0.0.0.0:30005: accepted a connection from 10.0.0.22:33840 with settings R
Feb 19 21:28:58 raspberrypi beast-splitter[562]: 0.0.0.0:30005: accepted a connection from 127.0.0.1:50666 with settings R
Feb 19 21:29:01 raspberrypi beast-splitter[562]: [::]:30005: accepted a connection from [::1]:33118 with settings R
Feb 19 21:29:01 raspberrypi beast-splitter[562]: [::1]:33118: settings changed to RCdfj
Feb 19 21:29:01 raspberrypi beast-splitter[562]: [::]:30005: accepted a connection from [::1]:33120 with settings R
Feb 19 21:29:01 raspberrypi beast-splitter[562]: [::1]:33120: settings changed to RCdfjV
Feb 19 21:29:01 raspberrypi beast-splitter[562]: 0.0.0.0:30005: accepted a connection from 127.0.0.1:50692 with settings R
Feb 19 21:29:01 raspberrypi beast-splitter[562]: 127.0.0.1:50692: settings changed to RCdfJV
Feb 19 21:29:08 raspberrypi beast-splitter[562]: 127.0.0.1:50666: connection closed
Feb 19 21:29:08 raspberrypi beast-splitter[562]: 0.0.0.0:30005: accepted a connection from 127.0.0.1:50700 with settings R
Feb 19 21:29:16 raspberrypi beast-splitter[562]: 0.0.0.0:30005: accepted a connection from 127.0.0.1:50710 with settings R
Feb 19 21:29:16 raspberrypi beast-splitter[562]: 127.0.0.1:50710: connection closed
Feb 19 21:29:18 raspberrypi beast-splitter[562]: 127.0.0.1:50700: connection closed
Feb 19 21:29:18 raspberrypi beast-splitter[562]: 0.0.0.0:30005: accepted a connection from 127.0.0.1:50718 with settings R
Feb 19 21:29:19 raspberrypi beast-splitter[562]: 0.0.0.0:30005: accepted a connection from 127.0.0.1:50724 with settings R
Feb 19 21:29:19 raspberrypi beast-splitter[562]: 127.0.0.1:50724: settings changed to RCdfj