Comparison of different dongles for 978 MHz UAT reception

Yes, but its log will be full of lines “unable to connect to port 30005” or something similar.

If you install rbfeeder without first installing dump1090 (fa, or mutab, or EB, or MR version), it will detect abscence of dump1090, and set its config to “network_mode=false”, and start it’s integral dump1090. You will then have to edit config file /etc/rbfeeder.ini and change it to network_mode=true to prevent rbfeeder from starting it’s integral dump1090.

EDIT

Issue command rbfeeder --help to find if any option is available to disable 1090

Anyone know which amplifier chip the rb978 runs? Would be great to some some pics of the board. Guess I’ll pull the trigger as I have one sitting in my Amazon shopping cart…what’s one more dongle to add to the ever-increasing pile :grinning:

Trying to run dump978-fa piaware and rbfeeder. any hints on what config options are likely to work?

pi@c121746:~ $ sudo systemctl restart rbfeeder
pi@c121746:~ $ sudo systemctl status rbfeeder
● rbfeeder.service - RBFeeder Service
Loaded: loaded (/lib/systemd/system/rbfeeder.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Thu 2020-02-27 22:43:08 EST; 3s ago
Process: 2154 ExecStart=/usr/bin/rbfeeder (code=exited, status=1/FAILURE)
Main PID: 2154 (code=exited, status=1/FAILURE)

Feb 27 22:43:08 c121746 systemd[1]: rbfeeder.service: Service RestartSec=100ms expired, scheduling restart.
Feb 27 22:43:08 c121746 systemd[1]: rbfeeder.service: Scheduled restart job, restart counter is at 5.
Feb 27 22:43:08 c121746 systemd[1]: Stopped RBFeeder Service.
Feb 27 22:43:08 c121746 systemd[1]: rbfeeder.service: Start request repeated too quickly.
Feb 27 22:43:08 c121746 systemd[1]: rbfeeder.service: Failed with result ‘exit-code’.
Feb 27 22:43:08 c121746 systemd[1]: Failed to start RBFeeder Service.
pi@c121746:~ $ rbfeeder --help
Starting RBFeeder Version 20200203195559

    --config [-c]    <filename>             Specify configuration file to use. (default: /etc/rbfeeder.ini)
    --device [-d]    <number>               Specify device number to use.
    --showkey [-sw]                         Show current sharing key set in  configuration file.
    --setkey [-sk] <sharing key>            Set sharing key and store in configuration file.
    --set-network-mode <on / off>           Enable or disable network mode (get data from external host).
    --set-network-protocol <beast/raw>      Set network protocol for external host.
    --set-network-port <port>               Set network port for external host.
    --no-start                              Don't start application, just set options and save to configuration file.
    --help [-h]                             Display this message.

piaware is not broken yet by installing rbfeeder

pi@c121746:~ $ sudo piaware-status
PiAware master process (piaware) is running with pid 446.
PiAware ADS-B client (faup1090) is not running (disabled by configuration settings)
PiAware ADS-B UAT client (faup978) is running with pid 775.
PiAware mlat client (fa-mlat-client) is not running.
Local ADS-B UAT receiver (dump978-fa) is running with pid 441.

dump978-fa (pid 441) is listening for UAT connections on port 30978.
faup978 is connected to the ADS-B UAT receiver.
piaware is connected to FlightAware.

dump978 is producing data on localhost:30978.

Just this command:

$ rbfeeder

pi@c121746:~ $ rbfeeder
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Starting RBFeeder Version 0.3.3 (build 20200203195559)
[2020-02-28 00:25:41] Using configuration file: /etc/rbfeeder.ini
[2020-02-28 00:25:41] Network-mode disabled. Using local dongle.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file (/etc/rbfeeder.ini).
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
[2020-02-28 00:25:41] Error loading ini file.
usb_claim_interface error -6
rtlsdr: error opening the RTLSDR device: Device or resource busy
pi@c121746:~

STEP-1

Uninstall dump1090-fa and dump978-rb

sudo apt purge dump1090-fa
sudo apt purge dump978-rb

Now there is only dump978-fa left to claim & use the single dongle

STEP-2

Edit file /etc/rbfeeder.ini and make sure settings are as in screenshot below. Pay particular attention to lines indicated by red arrows

 


pi@piaware:~ $ sudo systemctl status rbfeeder
● rbfeeder.service - RBFeeder Service
   Loaded: loaded (/lib/systemd/system/rbfeeder.service; enabled; vendor preset: en   Active: active (running) since Fri 2020-02-28 11:25:44 UTC; 1min 44s ago
 Main PID: 19958 (rbfeeder)
    Tasks: 12 (limit: 2200)
   Memory: 5.6M
   CGroup: /system.slice/rbfeeder.service
           ├─19958 /usr/bin/rbfeeder
           └─19973 /usr/bin/python3.7 /usr/bin/mlat-client --results beast,listen,3
Feb 28 11:26:14 piaware rbfeeder[19958]: [2020-02-28 11:26:14]  Data sent: 1.6 KB
Feb 28 11:26:14 piaware rbfeeder[19958]: [2020-02-28 11:26:14]  Data received: 1.0 
Feb 28 11:26:45 piaware rbfeeder[19958]: [2020-02-28 11:26:45]  ******** Statistics
Feb 28 11:26:45 piaware rbfeeder[19958]: [2020-02-28 11:26:45]  Packets sent in the
Feb 28 11:26:45 piaware rbfeeder[19958]: [2020-02-28 11:26:45]  Data sent: 2.1 KB
Feb 28 11:26:45 piaware rbfeeder[19958]: [2020-02-28 11:26:45]  Data received: 1.1 
Feb 28 11:27:16 piaware rbfeeder[19958]: [2020-02-28 11:27:16]  ******** Statistics
Feb 28 11:27:16 piaware rbfeeder[19958]: [2020-02-28 11:27:16]  Packets sent in the
Feb 28 11:27:16 piaware rbfeeder[19958]: [2020-02-28 11:27:16]  Data sent: 2.1 KB
Feb 28 11:27:16 piaware rbfeeder[19958]: [2020-02-28 11:27:16]  Data received: 1.1

That doesn’t make sense, there is no beast data on that port.

Would need some other configuration, but the correction might not even exist …

Thanks for pointing out.
In config file,mode=beast should be changed to mode=raw

I have now updated the screenshot

 

It would need to be a 978 specific mode.
I somehow doubt they implemented that.

Your screenshots don’t mean anything …
raw isn’t a protocol.

Flightaware’s dump978-fa config file says
--raw-port 30978. It does not say protocole.

Radarbox24’s config file does not say protocole, it says mode=raw or mode=beast

I will try another way, but it wont work on piaware sd card image as it requires editing file /etc/default/dump978-fa, but any changes to this file are lost at restart pf dump978-fa.

I will burn a spare microSD card with Raspbian Buster, and package install piaware, dump978-fa and rbfeeder. I will then edit file /etc/default/dump978-fa, and add a parameter –raw-port 28380 (please see below).

Output after dump978-rb_enabled=false is changed to dump978-rb_enabled=true`

Feb 28 12:53:25 piaware rbfeeder[5356]: [2020-02-28 12:53:25] Can't connect to 978 source (127.0.0.1:28380). Waiting 5 second...

After the step 2 suggestions appears to be working. Thanks!

You don’t understand what i’m saying.

raw is just the meaning of the word raw, not anything specific like “beast”.
So raw isn’t compatible with raw …

The network part of the rbfeeder configuration is obviously for 1090 stuff.
Could well be that they haven’t even implemented the ability to use 978 from another program but it only works if you enable their 978.

Anyhow maybe you can get an answer from them on their forums …

@wiedehopf
@turbodogfl

The Flightaware’s dump978-fa outputs raw data on port 30978.
The rbfeeder is hard-coded to receive dump978-rb data on port 28380

I have done following:

STEP- 1

Added port 28380 to Flightaware’s dump978-fa configuration file (see screenshot below).
Note:
(a) This modification does not persist if done on Piaware SD Card image, and disappears on boot or restart of dump978-fa. Therefore I am using Raspbian Buster image with piaware & dump978-fa package install.

(b) The port 28380 is added and does not replace port 30978. As a result dump978-fa’s raw data is now available at both the ports 30978 (for use by piaware) and 28380 (for use by rbfeeder).

 

STEP- 2

In file /etc/rbfeeder.ini changed
dump978_enabled=false
to
dump978_enabled=true

Note:
I tried to stop the input to rbfeeder on 30978 by making networ_mode=false, but this resulted in failure of rbfeeder.

I tried to change
mode=raw
external_port=30978
to
mode=beast
external_port=30005

Result: rbfeeder went into perpetual "cannot connect to 30005", and status & logs were full of this statement.

Now dump978-fa’s data is fed to rbfeeder from port 30978 as 1090 data, and at port 28380 as dump978 data.

 

 

 

STEP-3: Checked

pi@raspberrypi:~ $ netcat 127.0.0.1 28380
-5c7844b522aca749100074e4a08e122b40c413731172e33a3c582ad28909af437854;rs=7;rssi=-34.2;t=1582919135.393;
-e7e1791e08cf1b75414d8cf5948544e033f4530930477f146545b8427ccd7e972640;rs=7;rssi=-34.5;t=1582919181.576;

 

 

pi@raspberrypi:~ $ sudo systemctl status rbfeeder
● rbfeeder.service - RBFeeder Service
   Loaded: loaded (/lib/systemd/system/rbfeeder.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2020-02-28 20:04:42 GMT; 1min 42s ago
 Main PID: 6543 (rbfeeder)
    Tasks: 12 (limit: 1599)
   Memory: 1.8M
   CGroup: /system.slice/rbfeeder.service
           └─6543 /usr/bin/rbfeeder

Feb 28 20:05:12 raspberrypi rbfeeder[6543]: [2020-02-28 20:05:12]  Data sent: 1.1 KB
Feb 28 20:05:12 raspberrypi rbfeeder[6543]: [2020-02-28 20:05:12]  Data received: 1.0 KB
Feb 28 20:05:43 raspberrypi rbfeeder[6543]: [2020-02-28 20:05:43]  ******** Statistics updated every 30 seconds ********
Feb 28 20:05:43 raspberrypi rbfeeder[6543]: [2020-02-28 20:05:43]  Packets sent in the last 30 seconds: 0, Total packets sent since startup: 0
Feb 28 20:05:43 raspberrypi rbfeeder[6543]: [2020-02-28 20:05:43]  Data sent: 1.6 KB
Feb 28 20:05:43 raspberrypi rbfeeder[6543]: [2020-02-28 20:05:43]  Data received: 1.0 KB
Feb 28 20:06:14 raspberrypi rbfeeder[6543]: [2020-02-28 20:06:14]  ******** Statistics updated every 30 seconds ********
Feb 28 20:06:14 raspberrypi rbfeeder[6543]: [2020-02-28 20:06:14]  Packets sent in the last 30 seconds: 0, Total packets sent since startup: 0
Feb 28 20:06:14 raspberrypi rbfeeder[6543]: [2020-02-28 20:06:14]  Data sent: 1.6 KB
Feb 28 20:06:14 raspberrypi rbfeeder[6543]: [2020-02-28 20:06:14]  Data received: 1.1 KB

2 Likes

Is it possible to run a port forwarding command or script to avoid reimaging?

UNTESTED

Create a socat pipe from port 30978 (dump978-fa) to port 28380 (rbfeeder).

sudo socat -u TCP:localhost:30978 TCP:localhost:28380  

NOTE:
The above command creates a pipe from Pi (localhost) to same Pi (localhost). If you want to create pipe between two Pis, use command below (replace 192.168.0.21 by 2nd Pi’s IP where rbfeeder is located)

sudo socat -u TCP:localhost:30978 TCP:192.168.0.21:28380  

this command seems to have many options, suggestions on other combinations?
$ sudo socat -u TCP:localhost:30978 TCP:localhost:28380
2020/02/28 17:20:25 socat[9870] E connect(6, AF=2 127.0.0.1:28380, 16): Connection refused

Is rbfeeder running on this Pi? The port 28380 is input port for rbfeeder. May be it is already in use by a direct connection established with dump978-fa.

This command will show status of listening ports:

sudo netstat -anp | grep -w LISTEN

You’re confusing which application needs to listen and which does the connecting.
Your socat command will try to connect on both ports, but actually needs to listen on one of them.

Honestly i’d just not bother until RB make it compatible with dump978-fa … doing a senseless fork and changing the ports is just stupid.