Page 1 of 1

Standalone dump1090-mutability - Making it work - SDR ADS-B

Posted: 12 Feb 2025 17:28
by admin
For decades, Dump1090 was the "Default" Linux application for decoding ADS-B signals. As with many other Open Source projects, Forks were created, and development moved to new and improved versions. This is the case with dump1090.

Currently, one of these forks -- dump1090-mutability -- is the version available in the repositories of some common Linux distributions -- Specifically Ubuntu and Q4OS.

This guide is also for people that just want the stand-alone version from the distro repository, and for people working on a full PC, not a Raspberry PI or similar.

Steps:
-- Install dump1090-mutability from your distribution:

Code: Select all

sudo apt install dump1090-mutability
During the install it will prompt you for running it at startup. I use my SDR for other things, so I didn't want dumb1090 "grabbing" it, so I answered no.

-- install lighttpd from your distribution:

Code: Select all

apt-get install lighttpd
-- dump1090-mutability sends data to the web interface by writing json files to a path under /run.
We must create this directory. Since - again - I want it to work as a normal user app, we must make this directory writable by everyone:

Code: Select all

sudo mkdir /run/dump1090-mutability
sudo chmod 777 /run/dump1090-mutability
/run/ is a symlink to /var/run/. If you do not have a /run/, create the file in /var/run/

-- Start dump1090-mutability with an appropriate command line:

Code: Select all

dump1090-mutability --interactive  --write-json /run/dump1090-mutability --lat <your lat> --lon <your lon> --gain -10
Note: --gain -10 means "automatic gain". This improved my range significantly over the defaults.

-- Launch a web browser, and enter the following in the URL bar:

Code: Select all

http://localhost/dump1090/gmap.html
Note that you can also connect to the host running dump1090-mutability from another PC by entering:

Code: Select all

http://x.x.x.x/dump1090/gmap.html
Where x.x.xx. is the IP address of host machine running dump1090-mutabiliy.



If it stops working after a re-boot or power cycle:
See if the directory /run/dump1090-mutability/ has disappeared.
Note that this is actually a good thing. /run/ is actually in memory. This is done to prevent wear on an SD card, or Solid State or mechanical hard drive.

if so, do one of the following:
Option 1: Recreate it manually. This is a fine solution for occasional use:

Code: Select all

sudo mkdir /var/dump1090-mutability
sudo chmod 777 /var/dump1090-mutability
Option 2: There is now a centralized mechanism for the creation of temporary files and directories such as these. A service wishing to use this method can remove mkdir commands in its own startup script and instead place a .conf file in /etc/tmpfiles.d, /run/tmpfiles.d, or /usr/lib/tmpfiles.d, with Ubuntu services seeming to prefer the last option. for your case create a file /usr/lib/tmpfiles.d/dump1090-mutability.conf.
the content of the file would be:

Code: Select all

d /var/run/dump1090-mutability   0777 root root
Here d stands for directory, next to it is the path, permission, owner and group.
This will create /var/run/dump1090-mutability/ on reboot.

Option 3: If using systemd, there is a configuration item explicitly for this.

Code: Select all

[Service]
RuntimeDirectory=dump1090-mutability
If set, one or more directories by the specified names will be created below /run, and will be owned by the user and group specified in User= and Group=. This means the service does not need permissions to write directly to /run.

[more specific details will be added to this if needed.]