Setting up Virtual Radar Server: your own radar display on Windows

Virtual Radar Server turns the data from your ADS-B receiver into your own radar map in the browser. Installation, receivers, merged feeds, database, filters and sharing, step by step.

Planetrack editorial teamPublished: October 15, 202615 min read

Key takeaways

  • Local radar map: Virtual Radar Server (VRS) is a free open-source program that shows the data from your own receiver as a map in the browser – without a detour through an online service.
  • Runs on Windows and via Mono: There are installers for 32-bit and 64-bit Windows as well as a package for Linux and macOS via Mono.
  • Connect the receiver over the network: VRS reads the BaseStation format (typically port 30003) and Beast or AVR raw data, among others – so it works with dump1090, readsb and many ready-made receivers.
  • The database makes the difference: Only with a BaseStation database (for example via the Database Writer plugin) do you get registrations, types and reports on past flights.
  • Filters like the big ones: You filter by callsign, registration, type code, airline, altitude, distance, squawk, military, aircraft class and more.
Contents
  1. 1.What Virtual Radar Server is – the short answer
  2. 2.What you need beforehand
  3. 3.Installation on Windows
  4. 4.Connecting the receiver as a Receiver
  5. 5.Combining several receivers: merged feeds
  6. 6.Databases: turning hex codes into registrations
  7. 7.Filters: how to find the interesting aircraft
  8. 8.Reports: your logbook in the background
  9. 9.Access on the home network and from the internet
  10. 10.VRS on Linux and the Raspberry Pi
  11. 11.Common problems and quick fixes
  12. 12.Conclusion

Online flight trackers are handy, but they show you what a provider wants to show – with a delay, with ads and often with filters behind a paywall. If you run your own ADS-B receiver, there is another way: Virtual Radar Server turns your raw data into a full-fledged radar display in the browser, with your own database, your own photos and filters that you define yourself. This guide shows you how to set up VRS on Windows, connect your receiver, pull in registrations and types and use the map on your home network or on the go.

From the radar straight into your hangar

What you discover on your radar map, you log in Planetrack as a sighting with photo, registration, type, airline and spot. Planetrack is launching soon – join the waitlist and get early access.

Download Planetrack on the App Store Get Planetrack on Google Play

What Virtual Radar Server is – the short answer

Virtual Radar Server, usually just called VRS among spotters, is a free open-source program for .NET, developed by Andrew Whewell. It connects to one or more Mode S or ADS-B receivers, decodes their data and starts a small web server. You then see the aircraft in any modern browser on a map, plus a sortable list with all the details.

Important for your expectations: VRS is not a receiver. It needs a data source – such as an SDR stick with dump1090 or readsb, a ready-made receiver or a classic Kinetic receiver. How to build such a station is covered in the guide Building your own ADS-B receiver. Without a receiver, VRS can only display aircraft from Microsoft Flight Simulator or X-Plane when it runs on the same computer.

2.4.4last stable version according to the download page (December 2019)
30003typical port for the BaseStation format
€0open source, source code on GitHub

You should know the state of development honestly: according to the official download page, the last stable version 2.4.4 is from December 20, 2019. Pre-releases of version 3 appeared until February 2023. That makes VRS a mature but only sporadically maintained tool. For many spotters it is still the first choice because it bundles database, reports, pictures and filters in one package. A comparison with the leaner web interface tar1090 can be found in the article Desktop flight tracking with tar1090 and Virtual Radar.

What you need beforehand

Before you install, sort out three things:

  • Data source: A running decoder that provides its data on the network. With dump1090 and readsb that is the default. How to set up readsb is described in the guide Installing readsb and tar1090; which SDR stick is suitable is shown in the SDR stick comparison.
  • A computer for VRS: A Windows PC that runs around the clock if possible. Alternatively, a Linux machine with Mono works too, more on that below.
  • The receiver’s IP address: Note down the address of your Raspberry Pi or ready-made receiver on the home network. It is best to assign a fixed address in the router, otherwise VRS loses the connection after a restart.
Data format in VRS Typical source Typical port Note
BaseStation dump1090, readsb, Kinetic receivers 30003 text format, supported by almost every decoder
AVR or Beast Raw dump1090, readsb, Beast-compatible receivers 30005 (Beast) VRS detects on its own whether AVR or Beast arrives and decodes the raw data
SBS-3 Raw Kinetic SBS-3 30006 binary format
Plane Finder Radar Plane Finder receivers depends on the device raw format of the Plane Finder receiver
Compressed VRS / Aircraft List (JSON) another VRS instance freely selectable Compressed VRS is only sent by VRS rebroadcast servers

Many spotters choose the Beast raw data because VRS then decodes it itself. The BaseStation format on port 30003, on the other hand, is the most straightforward and works practically every time.

Installation on Windows

The official download page offers two installers: a 32-bit and a 64-bit installer. The developers recommend the 32-bit version for most Windows users. The 64-bit variant needs more memory and cannot load 32-bit third-party libraries, which causes individual features to fail. It only pays off for feeds with many thousands of aircraft – so hardly for a home station.

1. Download the installer

Download the server installer from virtualradarserver.co.uk. There is also an optional language pack, which includes German.

2. Set the port

During installation you choose the port on which VRS serves its web page. Remember it – you need it to open the page in the browser and for sharing later.

3. Start the program

After starting, the status window opens. It shows links for access from the same computer, from the home network and from the internet. If you close the window, you shut down the server.

4. Install plugins

Particularly useful are the Database Writer, the Web Admin plugin for configuration via browser and the Tile Server Cache for faster-loading maps.

In current versions, the map uses Leaflet with freely usable map tiles – the Tile Server Cache plugin builds on that too. Google Maps can be integrated as an alternative but requires your own API key, and Google bills use of its maps API by volume. For a private radar display, the simplest option is to stay with Leaflet.

Connecting the receiver as a Receiver

The actual work happens in the Options under Receivers. There you create an entry for each data source:

  • Name: freely selectable but must be unique – for example “Attic” or “Balcony Pi”.
  • Format: the matching data format from the table above.
  • Connection type: “Network” for receivers on the home network, “Serial” for older devices on the COM port.
  • Address and Port: the receiver’s IP address and the port it sends on.
  • Visibility: “Normal” shows the feed on the web page, “Hide from web site” hides it, “Merge only” uses it only in merged feeds.

VRS establishes the connection itself on startup and retries every second if it drops. If the status window permanently shows no active connection, the address, port or format is usually wrong. An idle timeout helps with unstable connections: if no data arrives for a certain number of seconds, VRS restarts the connection.

For special cases there is the Push Receiver: VRS then waits on a port until the other side sends data – handy if a receiver at another location sits behind a router and is supposed to push its data to you actively. In this mode you can use allow and deny lists to define which IP addresses may connect.

Don’t forget the location

Under Receiver Locations, create your receiver’s location with latitude and longitude and assign it to the receiver. Ground positions cannot be calculated unambiguously without this – taxiing aircraft at the airport otherwise only appear once they lift off.

Combining several receivers: merged feeds

If you run more than one antenna, say one at home and one at a friend’s place closer to the airport, a merged feed combines both into one view. A receiver can be part of any number of merged feeds, but merged feeds cannot be nested inside each other.

The logic behind it: for each aircraft, VRS “locks on” to the receiver that reported it first. Only when that one goes silent for the configured ICAO timeout does the next one take over. If the value is too short, aircraft jump back and forth with a receiver that has a delay. If it is too long, they seem briefly frozen. For connections with little delay, the documentation gives about one second as a guideline; for connections with a lot of delay you should raise the value.

If a receiver delivers MLAT positions, you can mark it as an MLAT source in the merged feed. VRS then also adopts its calculated positions for aircraft that actually belong to another receiver. How multilateration works and why it makes aircraft without an ADS-B position visible is explained in the article MLAT explained simply.

A rare visitor on the radar?

Planetrack notifies you with a sighting alert when a registration, type, airline or special livery you are watching is on approach. Planetrack is launching soon – join the waitlist and get early access.

Download Planetrack on the App Store Get Planetrack on Google Play

Databases: turning hex codes into registrations

An ADS-B signal contains the ICAO 24-bit address, callsign, position, altitude and speed – but neither registration nor aircraft type nor operator. VRS fills this gap in two ways.

Online lookup

In the Data Sources options you can enable the online lookup. VRS then fetches registration, manufacturer, model, operator, year of manufacture and serial number for aircraft that are not yet in your local database. For getting started, that is entirely sufficient.

The BaseStation database

VRS gets really powerful with your own SQLite database in BaseStation format (BaseStation.sqb). Without it, the reports stay empty. The file is created either by Kinetic’s BaseStation program or – for everyone else – by the Database Writer plugin:

  1. Open the plugin under Tools › Plugins and enable it.
  2. Enter a file name or choose “Use default filename” and create an empty database via “Create Database”.
  3. Select the receiver or merged feed the plugin should log – it can only record one source at a time.
  4. Optionally enable “Save online lookups in database” so that looked-up registrations end up permanently in the database.

Never two writers on one database

If you use Kinetic’s BaseStation or another program that already writes to BaseStation.sqb, do not install the Database Writer. If two programs write to the same file, it can become corrupted.

The option “Overwrite details on existing aircraft” refreshes online data for entries older than 28 days. If you maintain records by hand – for example with the Database Editor plugin – better leave it off, otherwise the online lookup overwrites your corrections. Through the database you can also mark aircraft as “interesting” and filter for them later.

Photos, flags and silhouettes

Three more folders make the display more personal:

  • Pictures folder: Pictures in JPG, PNG, GIF or BMP format, named after hex code or registration. For both, the hex code takes priority. If you like, VRS also searches subfolders. Ideal for seeing your own spotter photos next to the live position – provided your files are named cleanly. Tips are in the article Labeling photos properly.
  • Flags folder: Airline logos as BMP, named after the ICAO operator code.
  • Silhouettes folder: Type silhouettes as BMP, named after the ICAO type code such as A320 or B738.

Filters: how to find the interesting aircraft

On a day with a lot of overflight traffic you quickly see hundreds of aircraft. VRS’s filters separate the exciting from the everyday. According to the technical documentation, the Aircraft List interface supports these criteria, among others, which you can combine in the web interface:

Filter What it is good for in everyday spotting
Callsign specific flight numbers or callsign prefixes such as freighters or ambulance flights
Registration and hex code follow a specific aircraft, such as a special livery (Tracking an aircraft by registration)
ICAO type code show only A388, B748 or other rarities (ICAO type codes explained)
Operator and operator ICAO code filter out one airline
Altitude and distance only traffic below a given altitude or within a radius of your spot
Squawk narrow down certain transponder codes, such as the emergency squawks 7500, 7600 and 7700
Military show or hide aircraft recognized as military
Interesting aircraft marked in the database
Aircraft class, engine type, wake turbulence category for example only helicopters or only heavy jets
Country, airport, custom tag country, departure, destination or intermediate airport of the route, tags you assigned yourself

All filters are combined with AND and can also be inverted. That way you can build, for example, a view of “heavy jets within 30 kilometers, but not airline X”. For hunting grays there is the military filter; what to keep in mind with military traffic is in the guide Tracking military aircraft online. How transponder codes come about is explained in the post Mode S transponders explained.

VRS is ideal if …

  • you keep a Windows machine running around the clock anyway
  • you want your own database with reports on past flights
  • you want to include your own photos and logos in the display

Think twice if …

  • your receiver is a Raspberry Pi without an additional PC
  • you only look at the map occasionally

Go with tar1090 instead if …

  • you want a lean, actively maintained interface directly on the receiver
  • you do not want to maintain a Windows or Mono environment

Reports: your logbook in the background

Once the database is running, VRS logs every flight your receiver picks up. In the Reports of the web interface, you can later search specifically for past flights, for example for a particular aircraft or time period. That lets you answer questions like “Was the freighter really here last night?” or “How often does this registration show up in my area?”. For spotters this is gold for assigning your own photos to a flight after the fact – how to do that systematically is described in the article Matching sightings with ADS-B logs.

Access on the home network and from the internet

The status window shows three addresses: for your own computer, for the home network and for access from the internet. On the home network, you simply open the map on a tablet or smartphone – there is a desktop and a mobile view.

For access on the go, VRS can set up a port forward in the router via UPnP. Separate restrictions apply to users from the internet: reports and aircraft photos are blocked for them by default, while speech output, labels and range plots can be allowed or forbidden individually. You can also require visitors to log in.

In favor of sharing

  • your own radar map on your smartphone at the spot
  • friends and fellow spotters see what your receiver sees

Against

  • an open port is an additional security risk, especially since VRS hardly gets updates anymore
  • without a login, anyone can see your page and thus roughly your receiver’s location

If you share, do it only with a login. It is safer to reach the map via a VPN into your home network rather than through an open port. And before you make your data publicly accessible, read the article on the legal situation of receiving and sharing ADS-B data.

VRS on Linux and the Raspberry Pi

If you do not want to keep a Windows computer running around the clock, you start VRS via Mono. For that, you install the Mono runtime (on Debian and Ubuntu, for example via the package mono-complete), unpack the Mono archive from the download page and start the program. With the parameter -nogui, VRS runs without an interface; it is then configured via the Web Admin plugin, for which you create an administrator on the command line. Under Mono, VRS listens on port 8080 by default, and the path “VirtualRadar” in the address is case-sensitive there.

A few limitations apply: speech output, UPnP and the connection to Flight Simulator X do not work under Mono, and neither do keep-alive packets – the idle timeout helps here. If your receiver runs on a Raspberry Pi anyway, the combination of readsb and tar1090 is usually the simpler solution. Alternatives to the Pi are presented in the article ADS-B reception without a Raspberry Pi.

Common problems and quick fixes

  • No aircraft, connection is up: Check the format. If you set the format “BaseStation” on port 30005, you will get no usable data.
  • Aircraft without registration: Check the database path and online lookup in the Data Sources options.
  • Reports empty: Without a database there are no reports. Enable the Database Writer and choose the right feed.
  • Ground traffic missing: Enter the receiver location and assign it to the receiver.
  • Map loads slowly: Install the Tile Server Cache plugin; it caches the Leaflet map tiles locally.
  • Less range than expected: That is not a VRS problem but an antenna one. Help is available in the guides on antenna location and on boosting range with an LNA and filter.

Is your Virtual Radar Server ready to go?

Check off what is done – at the end you will see whether your radar display is running smoothly.

  • My receiver has a fixed IP address on the home network.
  • The receiver in VRS uses the matching format and the right port.
  • The receiver location is entered with latitude and longitude.
  • A BaseStation database is created and the Database Writer is active.
  • The online lookup for aircraft details is switched on.
  • Sharing over the internet is either disabled or protected by a login.

Radar in the evening, spot in the morning

With Planetrack you find the right location on the spot map, check weather, wind and runways at the airport and share your sightings with the community. Planetrack is launching soon – join the waitlist and get early access.

Download Planetrack on the App Store Get Planetrack on Google Play

Conclusion

Virtual Radar Server is the Swiss Army knife for everyone who wants not just to see their own ADS-B reception but to analyze it. Setup always follows the same pattern: create a receiver with the matching format, enter the location, enable the database and online lookup, build filters. You hardly notice on your home network that the project is barely developed further – so be especially careful when sharing over the internet. If you mainly want a fast live map, tar1090 serves you well; if you value the database, reports and your own photos, you can hardly get around VRS. The bigger picture of how live data improves your spotting planning is described in the guide Flight tracking with ADS-B for spotters.

In brief

VRS turns your receiver’s raw data into your own radar map with a database, reports and powerful filters. Connect your decoder via BaseStation or Beast format, enter the receiver location, enable the Database Writer – and share the map externally at most with a login or through a VPN.

Summary

  • VRS connects to one or more ADS-B receivers and shows the aircraft as a map and list in the browser – locally, on your home network or, if you want, on the internet.
  • Merged feeds combine several receivers, and the receiver location makes sure that taxiing aircraft on the ground appear correctly too.
  • Database, picture folder, flags and silhouettes add registration, type, operator and your own photos to the raw radio data.
  • According to the project page, the last stable version 2.4.4 dates from December 2019, and pre-releases of version 3 appeared until February 2023 – the program is mature but only sporadically developed further.

Frequently asked questions

What is Virtual Radar Server?

Virtual Radar Server, VRS for short, is a free open-source program for .NET. It takes in the data from an ADS-B or Mode S receiver, starts a small web server and shows the aircraft on a map in your browser. It was developed by Andrew Whewell, and the source code is on GitHub.

Do I need my own receiver for VRS?

Yes, for real aircraft you need a data source – such as an SDR stick with dump1090 or readsb, a ready-made receiver or a Kinetic receiver. VRS itself does not receive anything; it decodes and visualizes. Without a receiver, it can only show aircraft from flight simulators like Microsoft Flight Simulator or X-Plane when it runs on the same computer.

Which port do I use to connect dump1090 or readsb?

The BaseStation format on port 30003 or the Beast raw data on port 30005 are usual. In VRS you create a receiver with the connection type Network, enter the receiver’s IP address and choose the matching format – BaseStation for 30003, AVR or Beast Raw for 30005.

Why do I not see registrations and types?

Because ADS-B only transmits the 24-bit address, callsign, position, altitude and speed. Registration, type and operator come from a database or an online lookup. Check in the Data Sources options whether a database path is set and the online lookup is enabled.

Why do aircraft on the ground not appear?

Ground positions can only be decoded unambiguously if VRS knows where your receiver is. Under Receiver Locations, create your location with latitude and longitude and assign it to the receiver. Without this, aircraft only show up after takeoff.

Does Virtual Radar Server also run on the Raspberry Pi or on Linux?

Yes, via the Mono runtime. There is a dedicated Mono package that can also be started without a graphical interface and configured via the Web Admin plugin. Some features such as speech output and UPnP are missing under Mono.

Is VRS still current?

According to the download page, the last stable version 2.4.4 appeared in December 2019, the last preview of version 3 in February 2023. The program still works but is hardly maintained anymore. If you are looking for a modern, lean web interface directly on the receiver, you often reach for tar1090 today.

PT

Planetrack editorial team

We build the Planetrack app and go spotting ourselves – on observation decks, under approach paths and at the fence. Every guide is based on our own experience and is updated regularly.

More articles in Live maps & radar services →

Read more in Live maps & radar services

← Back to the blog