ADSBItalia logo
Join the global ADSBItalia network

Connect your ADS-B and MLAT feeder to ADSBItalia.

ADSBItalia aggregates ADS-B feeds and MLAT results from independent stations around the world. You can contribute to the live map while keeping full control of your local setup.

You can join with Ultrafeeder/Docker, ADSB.im, with a compatible Beast feed, or with the classic script-based installation. All connections to ADSBItalia are outbound: no router port forwarding is required.

Community support

Need help with your setup?

Ask the ADSBItalia community on Discord or Telegram. Include your setup method, hardware, software, error message and relevant logs. Never share tokens, passwords or personal information.

Ways to join

ADSBItalia accepts ADS-B feeds in Beast format and, where possible, dedicated MLAT connections. The best method depends on how your station is configured: Docker/Ultrafeeder, ADSB.im, a classic local decoder, readsb, dump1090 or other compatible software.

Recommended Ultrafeeder / Docker

If you use Ultrafeeder, you can add ADSBItalia as an outbound feeder without installing additional systemd services on the host.

No script ADSB.im

If you use ADSB.im, add ADSBItalia from the Expert section in the additional Ultrafeeder arguments field.

Alternative Classic installation

If you have a local decoder with Beast output available on a TCP port, you can use the ADSBItalia script to create dedicated ADS-B and MLAT services.

The “Your feed status” page also works with Ultrafeeder: ADSBItalia checks connections from your public IP to the network ports.

What you send to ADSBItalia

  • ADS-B Beast feed to ADSBItalia on port 31108.
  • MLAT connection to ADSBItalia on port 41113, if configured.
  • Optional local MLAT results on a dedicated port, if supported by your setup.
  • Correct feeder name, coordinates and altitude to identify the station and improve MLAT quality.

Main ports

Local Beast30005
ADSBItalia ADS-B31108
ADSBItalia MLAT41113
MLAT results33106 / libera

The local Beast port may be different from 30005. ADSBItalia ports are outbound connections from the feeder to the server.

Recommended method: Ultrafeeder / Docker

Ultrafeeder is the best option if you already manage your ADS-B station with Docker. In this case, you do not need to install the ADSBItalia script on the host: add ADSBItalia to the outbound configuration of the container and restart Ultrafeeder.

Before editing

  • Make a copy of your docker-compose.yml or .env file.
  • Check that coordinates, altitude, feeder name and UUID are correct.
  • If you already have other networks in ULTRAFEEDER_CONFIG, add ADSBItalia without deleting existing lines.

Ultrafeeder configuration example

Add the ADSBItalia lines to your ULTRAFEEDER_CONFIG variable. Keep semicolons between lines, except on the last line of the variable.

ULTRAFEEDER_CONFIG=
adsb,adsbitalia.it,31108,beast_reduce_plus_out;
mlat,mlat.adsbitalia.it,41113;

Restart and check

docker compose pull ultrafeeder
docker compose up -d ultrafeeder
docker logs -f ultrafeeder
The MLAT line requires only the MLAT server host and port. Use the configuration exactly as shown. If you are unsure, contact ADSBItalia and mention that you use Ultrafeeder.

ADSB.im method

If you use ADSB.im, do not run install.sh. Add ADSBItalia directly from the additional Ultrafeeder arguments field in the Expert section.

Where to enter the data

  1. Open the ADSB.im web interface.
  2. Go to Setup.
  3. Open the Expert section.
  4. In Add additional Ultrafeeder arguments, paste the ADSBItalia lines.
  5. Press Apply and wait for the configuration to apply.
ADSB.im: click Setup and select Expert
In the Setup menu, open Expert.
ADSB.im: paste the ADSBItalia lines and press Apply
In Add additional Ultrafeeder arguments, paste the ADSBItalia lines and press Apply.

Lines to paste

Paste this string into the additional Ultrafeeder arguments field. Do not delete any existing configuration.

adsb,adsbitalia.it,31108,beast_reduce_plus_out; mlat,mlat.adsbitalia.it,41113;
In ADSB.im/Ultrafeeder, the MLAT line requires only the MLAT server host and port. Paste the configuration exactly as shown, then check the “Your feed status” page.

Classic script-based installation

Use this method if you have a local ADS-B decoder exposing Beast output on 127.0.0.1 or on a host reachable by the feeder machine.

Quick install

Run this command on the feeder:

curl -fsSL https://raw.githubusercontent.com/djrexishere91/Adsb-Italia/main/install.sh -o install.sh && bash install.sh

What the script does

The script checks the local Beast port, installs the needed packages, prepares the dedicated mlat-client environment, registers the feeder and creates local systemd services to send ADS-B and MLAT to ADSBItalia.

Available scripts

  • install.shinitial feeder installation.
  • update.shupdate feeder name, coordinates and altitude.
  • uninstall.shremove ADSBItalia services and the dedicated MLAT environment.

Requirements

  • Active ADS-B receiver.
  • Local Beast feed available or a compatible Ultrafeeder/Docker setup.
  • Stable Internet connection.
  • Ability to send data to ADSBItalia through an outbound connection.
  • Correct coordinates and altitude if you also want to contribute to MLAT.

No router port forwarding is required. Classic installation needs sudo privileges; with Ultrafeeder you only edit your existing Docker configuration.

Local MLAT results

When configured, the feeder can receive MLAT results locally and reuse them in its own installation, for example in the local map or compatible services.

Management commands

Classic installation

Service status:

sudo systemctl status adsbitalia-feed.service
sudo systemctl status adsbitalia-mlat.service

Live logs:

sudo journalctl -u adsbitalia-feed.service -f
sudo journalctl -u adsbitalia-mlat.service -f

Ultrafeeder / Docker

docker ps | grep ultrafeeder
docker logs -f ultrafeeder
docker compose logs -f ultrafeeder

Update and removal

Update classic installation details

To change feeder name, coordinates or altitude:

curl -fsSL https://raw.githubusercontent.com/djrexishere91/Adsb-Italia/main/update.sh -o update.sh && bash update.sh

Remove ADSBItalia

To remove ADSBItalia services from the classic installation:

curl -fsSL https://raw.githubusercontent.com/djrexishere91/Adsb-Italia/main/uninstall.sh | sudo bash

With Ultrafeeder, remove the ADSBItalia lines from the container configuration and restart Ultrafeeder.

Files created by the classic installation

/opt/adsbitalia-mlat                         Python environment dedicated to mlat-client.
/etc/adsbitalia/feeder.conf                 Feeder configuration.
/etc/systemd/system/adsbitalia-mlat.service     ADSBItalia MLAT systemd service.
/etc/systemd/system/adsbitalia-feed.service     ADSBItalia ADS-B forwarding systemd service.

These files are not created if you join through Ultrafeeder/Docker without using the classic script.

Troubleshooting

If the feed does not appear online, first check which method you are using.

Classic installation

sudo systemctl status adsbitalia-feed.service
sudo systemctl status adsbitalia-mlat.service
sudo journalctl -u adsbitalia-feed.service -n 100 --no-pager
sudo journalctl -u adsbitalia-mlat.service -n 100 --no-pager

Ultrafeeder

docker ps | grep ultrafeeder
docker logs --tail 100 ultrafeeder
docker compose logs --tail 100 ultrafeeder

Also check that the local feeder is generating ADS-B data, that coordinates are correct and that the firewall allows outbound connections to ADSBItalia.