Overhead Sky: A Mac App That Names Local Aircraft in your Menu Bar

Thank you to Chris Miller for submitting news about the release of his (paid) Mac app called Overhead Sky. This app sits in the MacOS menu bar, and names aircraft as they pass overhead, by making use of the adsb.lol ADS-B data aggregator.

The app costs $24.99 one off, or $3.99 monthly, however Chris writes that people who feed adsb.lol with an RTL-SDR or other SDR get the app discounted at $9.99. Chris writes that detecting people feeding to adsb.lol was a challenge, and shares his methods below:

I started on a commercial flight-data API and found it bills per aircraft returned rather than per call, which means one person leaving the app running over a busy sky costs more in a month than the app costs in a year. So I went to the community feeds and read the licences properly, and most said no. airplanes.live is non-commercial. ADS-B Exchange's affordable tier is a non-commercial community tier, and the site is Jetnet-owned now. adsb.lol is ODbL, which permits commercial use with attribution. So that is what it runs on, credited in the app, on the privacy page, and in the App Store description.

Two things follow from being a paid product living on a volunteer commons, both written down before it went on sale. Ten percent of profit goes back to the ADS-B open-data community, totalled once a year and published so the promise stays checkable. And anyone who feeds pays $9.99 instead of the full sticker.

The verification is the part I think fits your readership best. adsb.lol has no login, so the app calls GET /0/me, which reports the caller's own receiver based on the source IP of the request. If your Mac shares a public IP with your receiver, your beast or mlat client shows up and you are verified with no input at all. That call has to run from the user's machine rather than my server, because through a proxy it would judge my IP and match nobody.

The same reasoning sets the data path. Positions go from the Mac straight to adsb.lol, coarsened to about a one kilometre square first, because adsb.lol rate limits per IP and routing every user through one Cloudflare egress would have earned the block it deserved. Only route lookups pass through my server, carrying a callsign already on the user's screen and no location, unlogged.

So that leaves two honest gaps, since they belong in any piece about this. The app reads the aggregated network rather than a local dump1090 or tar1090 feed, so it is API-backed rather than receiver-backed today. And I do not run a receiver myself yet (though I hope to eventually).

Overhead Sky
Overhead Sky
Subscribe
Notify of
guest

2 Comments
KC1WZQ

…….seriously.. $30 is an extreme amount as a one time payment. $30 per MONTH for this…? somethings up..