How to Install and Configure Piaware 5.0 SD card image - Quickstart Guide

1 - Download and write Piaware SD card image on a microSD card.

http://piaware.flightcdn.com/piaware-sd-card-5.0.img.zip

Note: When you first boot the image it will look and act like a normal 1090 MHz PiAware. Only in case you want to activate the 978 Mhz features, carry out Steps 5 and 6 below, otherwise skip Steps 5 & 6.

2 - Enable SSH & WiFi

While the microSD card is still in the card reader of your Laptop/Desktop, in File Explorer (Windows) or Finder (Mac) click on drive letter of the microSD card (labelled boot) to open it. It will open folder /boot which has many files & few folders.

2.1 - SSH
In the folder /boot, create a new text file and name it ssh
For further details, please see “For Beginners - How-to SSH to RPi - Setup Putty in Windows”

For Piaware SD card image
username = pi
default password = flightaware

.
2.2 - WiFi (only if required)
In the folder /boot, you will find a file named “piaware-config.txt”. Open this file using a text editor like Notepad (Windows) orTextEdit (Mac).

In the opened file “piaware-config.txt”, scroll down till you see this text:

wireless-ssid MyWifiNetwork
wireless-password s3cr3t99

Replace MyWifiNetwork by your router’s wifi ssid, and s3cr3t99 by your router’s wifi password.

3 - Slip microSD card in RPi and Power up.

4 - Configure Station ID

Alternative-1:
Get a brand new station number & feeder id

Log-in to your Flightaware account, go to this page and follow instructions to claim a new station https://flightaware.com/adsb/piaware/claim

Alternative-2:
Configure an Existing Station

(a) - Find existing station’s feeder-id (Unique Identifier)
Log-in to your Flightaware account, go to “My ADSB” / stats page
flightaware.com/adsb/stats/user/,
and look for 32-digit Unique Identifier: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

(b) - SSH and configure station id:

sudo piaware-config feeder-id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 
# Replace xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx  
# by your actual feeder-id 

sudo systemctl restart piaware

Note: Since 978 is used only in USA, Steps 5 & 6 below do not apply to receivers outside USA.

5 - Serialize dongles if using UAT 978: (CLICK HERE)

If you want to recieve both ES1090 and UAT978, then two dongles are required, one for 1090 and other for 978. In this case you will have to serialize dongles so that correct dongle+antenna sets are used by dump1090-fa and dump978-fa.

For 1090 Mhz dongle: use serial # 00001090
For 978 Mhz dongle : use serial # 00000978

Note: You can use any other serial numbers if you want, but do not use single digit serial numbers (0 to 9) or (01 to 09), as these may conflict with device numbers. Use at least two digit numbers like 21 or 93 etc)

6 - Configure UAT 978

sudo piaware-config uat-receiver-type sdr
sudo piaware-config rtlsdr-device-index 00001090
sudo piaware-config uat-sdr-device driver=rtlsdr,serial=00000978

# Reboot Pi to implement configuration settings
sudo reboot

7 - Check Status

sudo systemctl status piaware  
sudo systemctl status dump1090-fa  
sudo systemctl status dump978-fa  

8 - View Maps

8.1 - dump1090-fa map
http://local-ip-of-pi/dump1090-fa/
http://local-ip-of-pi:8080/

8.2 - dump978 map
http://local-ip-of-pi/skyview978/
http://local-ip-of-pi:8978/

9 - USING ONLY ONE FREQUENCY (978 Mhz OR 1090 Mhz)

9.1 - If you want to run 978 Mhz only
In this case, you will need only one dongle, but you will have to disable dump1090-fa by following command

sudo piaware-config uat-receiver-type sdr
sudo piaware-config receiver-type none
sudo systemctl restart piaware

To re-enable dump1090-fa (requires an additional dongle for dump1090-fa)

sudo piaware-config receiver-type rtlsdr
sudo systemctl restart piaware

9.2 - If you want to run 1090 Mhz only
In this case, you will need only one dongle, but you will have to disable dump978-fa by following command

sudo piaware-config receiver-type rtlsdr
sudo piaware-config uat-receiver-type none
sudo systemctl restart piaware

To re-enable dump978-fa (requires an additional dongle for dump978-fa)

sudo piaware-config uat-receiver-type sdr
sudo systemctl restart piaware

10 - Adjusting the gain of dongle

Default values are:
The 1090 Mhz dongle is set to gain -10
The 978 Mhz dongle is set to gain 49

To check current gain setting:

  • For 1090 Mhz dongle
    piaware-config --show rtlsdr-gain

  • For 978 Mhz dongle
    piaware-config --show uat-sdr-gain

To adjust / change gain

  • For 1090 Mhz dongle:

    sudo piaware-config rtlsdr-gain xx
    sudo systemctl restart piaware
    sudo systemctl restart dump1090-fa

  • For 978 Mhz dongle:

    sudo piaware-config uat-sdr-gain xx
    sudo systemctl restart piaware
    sudo systemctl restart dump978-fa

NOTE: In above commands, replace xx by the value of gain you want to set

11 - Shooting the trouble … I mean troubleshooting :slight_smile:.

In case of trouble or failure, issue following commands, and post output in this forum for help (thanks to @wiedehopf for suggesting these commands)

sudo journalctl -eu piaware 
sudo journalctl -eu dump1090-fa 
sudo journalctl -eu dump978-fa 

.
NOTE:
Output of some of above commands contain your feeder id and precise latitude & longitude information. Before submitting the post, please replace these values by xxxxx, like below:

feeder-id xxxxxxxxx
--lat xx.xxx --lon xx.xxx

14 Likes

Very nice.

You could add how to check the specific logs in the Check Status section:

journalctl -eu piaware
journalctl -eu dump1090-fa
journalctl -eu piaware | grep -v 'reported location\|--lat\|feeder ID'

When something isn’t working those usually give better clues than the status.

3 Likes

Is this correct for DUMP978-fa;
– Logs begin at Thu 2016-11-03 17:16:43 UTC, end at Fri 2019-04-05 23:48:11 UTC. –
Apr 05 23:22:35 piaware systemd[1]: Started dump978 ADS-B UAT receiver.
Apr 05 23:22:36 piaware dump978-fa[510]: raw-port: listening for connections on 0.0.0.0:30978
Apr 05 23:22:36 piaware dump978-fa[510]: raw-port: listening for connections on [::]:30978
Apr 05 23:22:36 piaware dump978-fa[510]: json-port: listening for connections on 0.0.0.0:30979
Apr 05 23:22:36 piaware dump978-fa[510]: json-port: listening for connections on [::]:30979
Apr 05 23:22:37 piaware dump978-fa[510]: usb_claim_interface error -6
Apr 05 23:22:37 piaware dump978-fa[510]: Detached kernel driver
Apr 05 23:22:37 piaware dump978-fa[510]: Found Rafael Micro R820T tuner
Apr 05 23:22:37 piaware dump978-fa[510]: Reattached kernel driver
Apr 05 23:22:38 piaware dump978-fa[510]: Detached kernel driver
Apr 05 23:22:38 piaware dump978-fa[510]: Found Rafael Micro R820T tuner
Apr 05 23:22:38 piaware dump978-fa[510]: Exact sample rate is: 2083333.135571 Hz
Apr 05 23:22:38 piaware dump978-fa[510]: [R82XX] PLL not locked!
Apr 05 23:22:38 piaware dump978-fa[510]: SoapySDR: using maximum manual gain 49.6 dB
Apr 05 23:22:38 piaware dump978-fa[510]: SoapySDR: INFO: Using format CS8.
Apr 05 23:22:40 piaware dump978-fa[510]: [::]:30978: accepted a connection from [::1]:59566
Apr 05 23:22:40 piaware dump978-fa[510]: [::]:30978: accepted a connection from [::1]:59568

I am not sure if its working or not. DUMP 978 map is showing in France and not my location in Central Texas.
The DUMP 1090-fa side is working great!

The log is just fine, all working.

There is a minor bug right now making the location not show up.

You can fix it with these two commands:

sudo sed -i 's/$LAT/$PIAWARE_LAT/;s/$LON/$PIAWARE_LON/' /usr/share/skyview978/start-skyview978
sudo systemctl restart skyview978
4 Likes

wiedehopf,
I ran the commands and all is good now. Thank you very much and also the range rings showed up too.

Could you please point out that most of the instructions from this point on are for UAT only and do not apply for receivers outside of the US.

IT is only self-evident to those who already know.

Thanks,

S.

2 Likes

The log is quite strange, it actually tries all the dongles to find the correct serial number assigned to it.
As dump1090-fa has already grabbed the other dongle, it will show a usb_claim_interface error -6 but that doesn’t mean anything as long as it’s eventually finding a dongle it can use.

Exact sample rate is: 2083333.135571 Hz SoapySDR: INFO: Using format CS8. is usually a good sign.

@glennblum Just wanted to suggest to turn the gain up to AGC if you don’t have a yellow flightaware stick for 978 MHz but it appears for the current sd-card image you can’t use that setting.

Anyway glad it works :slight_smile:

1 Like

Done :slight_smile: .

2 Likes

I have to Yellow Flightaware sick set up for this.

Yeah then you don’t need to up with gain probably, maybe even down a little.
But i’m not sure how strong UAT transmissions are and how good your antenna setup is.

I’m curious, does dump978-fa have RSSI values?

Click on expand sidebar:
Screenshot%20from%202018-12-16%2010-44-54

Click the column head of RSSI twice so the numbers closer to zero are first:
Screenshot%20from%202018-12-16%2010-46-24

1 Like

When I followed 978 UAT last year I would see probably 4 aircraft on the average. Hopefully this will improve

1 Like

Yeah that is just how SoapySDR does it apparently. It’s not very clean about logging.

@obj,

Will this work with an airspy?

I have installed
sudo apt-get install airspy libairspy-dev
sudo apt-get install libairspy0 soapysdr0.5-2-module-airspy soapysdr-module-airspy

jonha@odroid:~$ sudo systemctl status dump978-fa.service
● dump978-fa.service - dump978 ADS-B UAT receiver
Loaded: loaded (/lib/systemd/system/dump978-fa.service; enabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Sat 2019-04-06 12:49:00 EDT; 4s ago
Docs: PiAware - ADS-B and MLAT Receiver - FlightAware
Process: 5333 ExecStart=/usr/share/dump978-fa/start-dump978-fa (code=exited, status=2)
Main PID: 5333 (code=exited, status=2)

Apr 06 12:49:00 odroid systemd[1]: dump978-fa.service: Failed with result ‘exit-code’.
jonha@odroid:~$ sudo /usr/share/dump978-fa/start-dump978-fa
raw-port: listening for connections on 0.0.0.0:30978
raw-port: listening for connections on [::]:30978
json-port: listening for connections on 0.0.0.0:30979
json-port: listening for connections on [::]:30979
SoapySDR: using maximum manual gain 45.0 dB
Uncaught exception: Dynamic exception type: std::runtime_error
std::exception::what: setupStream invalid format ‘CS8’ – Only CS16 and CF32 are supported by SoapyAirspy module.

If I remove --format CS8 from /etc/default/dump978-fa
I get this
jonha@odroid:~$ sudo systemctl status dump978-fa.service
● dump978-fa.service - dump978 ADS-B UAT receiver
Loaded: loaded (/lib/systemd/system/dump978-fa.service; enabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Sat 2019-04-06 12:51:42 EDT; 1s ago
Docs: PiAware - ADS-B and MLAT Receiver - FlightAware
Process: 5446 ExecStart=/usr/share/dump978-fa/start-dump978-fa (code=exited, status=1/FAILURE)
Main PID: 5446 (code=exited, status=1/FAILURE)

Apr 06 12:51:42 odroid systemd[1]: dump978-fa.service: Failed with result ‘exit-code’.
jonha@odroid:~$

jonha@odroid:~$ /usr/share/dump978-fa/start-dump978-fa
raw-port: listening for connections on 0.0.0.0:30978
raw-port: listening for connections on [::]:30978
json-port: listening for connections on 0.0.0.0:30979
json-port: listening for connections on [::]:30979
SoapySDR: using maximum manual gain 45.0 dB
SoapySDR: INFO: Using format CS16.
SoapySDR: SSI: O
Sample source reports error: OVERFLOW
Abnormal exit
jonha@odroid:~$

Just installed this… This is what my 978 log is showing, is this normal? Not seeing any aircraft yet, but not too surprised about that, waiting for some of the low flying choppers before I expect anything.

pi@piaware:~ $ journalctl -u dump978-fa
-- Logs begin at Sat 2019-04-06 16:52:31 UTC, end at Sat 2019-04-06 17:08:18 UTC. --
Apr 06 16:52:39 piaware systemd[1]: Started dump978 ADS-B UAT receiver.
Apr 06 16:52:40 piaware dump978-fa[455]: raw-port: listening for connections on 0.0.0.0:30978
Apr 06 16:52:40 piaware dump978-fa[455]: raw-port: listening for connections on [::]:30978
Apr 06 16:52:40 piaware dump978-fa[455]: json-port: listening for connections on 0.0.0.0:30979
Apr 06 16:52:40 piaware dump978-fa[455]: json-port: listening for connections on [::]:30979
Apr 06 16:52:41 piaware dump978-fa[455]: Detached kernel driver
Apr 06 16:52:41 piaware dump978-fa[455]: Found Rafael Micro R820T tuner
Apr 06 16:52:41 piaware dump978-fa[455]: Reattached kernel driver
Apr 06 16:52:41 piaware dump978-fa[455]: usb_claim_interface error -6
Apr 06 16:52:41 piaware dump978-fa[455]: Detached kernel driver
Apr 06 16:52:42 piaware dump978-fa[455]: Found Rafael Micro R820T tuner
Apr 06 16:52:42 piaware dump978-fa[455]: Exact sample rate is: 2083333.135571 Hz
Apr 06 16:52:42 piaware dump978-fa[455]: [R82XX] PLL not locked!
Apr 06 16:52:42 piaware dump978-fa[455]: SoapySDR: using maximum manual gain 49.6 dB
Apr 06 16:52:42 piaware dump978-fa[455]: SoapySDR: INFO: Using format CS8.
Apr 06 16:52:42 piaware dump978-fa[455]: [::]:30978: accepted a connection from [::1]:57444
Apr 06 16:52:43 piaware dump978-fa[455]: [::]:30978: accepted a connection from [::1]:57448
Apr 06 16:53:01 piaware dump978-fa[455]: Sample source reports error: TIMEOUT
Apr 06 16:53:01 piaware dump978-fa[455]: Reattached kernel driver
Apr 06 16:53:01 piaware systemd[1]: dump978-fa.service: Main process exited, code=exited, status=1/FAILURE
Apr 06 16:53:01 piaware systemd[1]: dump978-fa.service: Unit entered failed state.
Apr 06 16:53:01 piaware systemd[1]: dump978-fa.service: Failed with result 'exit-code'.
Apr 06 16:53:31 piaware systemd[1]: dump978-fa.service: Service hold-off time over, scheduling restart.
Apr 06 16:53:31 piaware systemd[1]: Stopped dump978 ADS-B UAT receiver.
Apr 06 16:53:32 piaware systemd[1]: Started dump978 ADS-B UAT receiver.
Apr 06 16:53:32 piaware dump978-fa[1582]: raw-port: listening for connections on 0.0.0.0:30978
Apr 06 16:53:32 piaware dump978-fa[1582]: raw-port: listening for connections on [::]:30978
Apr 06 16:53:32 piaware dump978-fa[1582]: json-port: listening for connections on 0.0.0.0:30979
Apr 06 16:53:32 piaware dump978-fa[1582]: json-port: listening for connections on [::]:30979
Apr 06 16:53:32 piaware dump978-fa[1582]: Detached kernel driver
Apr 06 16:53:32 piaware dump978-fa[1582]: Found Rafael Micro R820T tuner
Apr 06 16:53:33 piaware dump978-fa[1582]: Reattached kernel driver
Apr 06 16:53:33 piaware dump978-fa[1582]: usb_claim_interface error -6
Apr 06 16:53:33 piaware dump978-fa[1582]: Detached kernel driver
Apr 06 16:53:33 piaware dump978-fa[1582]: Found Rafael Micro R820T tuner
Apr 06 16:53:33 piaware dump978-fa[1582]: Exact sample rate is: 2083333.135571 Hz
Apr 06 16:53:34 piaware dump978-fa[1582]: [R82XX] PLL not locked!
Apr 06 16:53:34 piaware dump978-fa[1582]: SoapySDR: using maximum manual gain 49.6 dB
Apr 06 16:53:34 piaware dump978-fa[1582]: SoapySDR: INFO: Using format CS8.
Apr 06 16:54:01 piaware dump978-fa[1582]: [::]:30978: accepted a connection from [::1]:57458
Apr 06 16:54:31 piaware dump978-fa[1582]: [::]:30978: accepted a connection from [::1]:57460
Apr 06 17:00:52 piaware dump978-fa[1582]: [::1]:57458: connection closed
Apr 06 17:00:53 piaware dump978-fa[1582]: [::]:30978: accepted a connection from [::1]:57462

Thanks for the help!

@sheltonr2
What you got is exactly what I always get. This is normal.
The dump978-fa makes multiple failed attempts, then finally succeeds in starting & connecting.

2 Likes

I have my spare Pi running the new piaware
71175
ADSB working fine no traffic yet on 978. I need a “T” to interface both dongles to one feedline though, male N to 2 N females (or 2 SMA males). Using a home-made colinear tuned at 1GHz with a 2:1 SWR within about 2MHz so should cover both channels.
Using blue flightaware dongle for ADSB, and a Nooelec R820T2 for 978.

This isn’t quite normal, it means the dongle stopped working and dump978-fa therefore restarted.

Looks like maybe the dongle isn’t quite getting enough power?

Had the same start-restart thing on dump978 here too. It does seem to run the dongle though eventually. Can take more than 5 minutes to settle out…

hmmm ill try to find a power adapter with more output. Perhaps the second dongle put it over the edge? I’m using this one: https://www.amazon.com/gp/product/B00L88M8TE/ref=oh_aui_search_asin_title?ie=UTF8&psc=1

Wouldn’t that be terrible reception for 1090 MHz?

You can’t make a colinear for multiple frequencies, can you?