256 comments

[ 2.7 ms ] story [ 230 ms ] thread
Another fun project would be to build your own ADS-B receiver!

https://www.adsbexchange.com/ways-to-join-the-exchange/

Just a few weeks ago I got interested in this as well ("where does FR24 get its data from?"). I ended up buying a cheap RTL-SDR dongle (R820T2) and a small outdoor antenna. I run the free dump1090 tool (I'm on Fedora) to decode ADS-B messages, then my own simple "radar-like" visualization program ([1]) connects to dump1090's network socket to receive decoded data (SBS1 textual format). Even with the antenna just sitting in my room (on a photo tripod), I typically receive data from 10-20 aircraft, up to 190 km away. I drove to a hilltop this weekend (some 600 m higher) and immediately got >100 aircraft, up to 500 km.

[1] https://github.com/GreatAttractor/plane-tracker

I don't have any experience with it myself, but you can provide your ADS-B data to ADS-B exchange. https://www.adsbexchange.com/ways-to-join-the-exchange/
If you share your data with these sites, they usually give you premium access for free.

https://www.flightradar24.com/premium

I share ADS-B data, how do I activate my free Business plan subscription?

Please sign up for a free Basic account using the following link using the same email address with which you registered your feed. Once your feed is live, your complimentary Business subscription will be activated.

Heads up - IIRC ADSB-exchange was sold out, an alternative might be adsb.fi

Regardless you can send your ADS-B data to all of them - ADSB-exchange, adsb.fi, flightradar, flightaware, etc.

That way you get all of the benefits and contribute community data.

aiui there was some kerfuffle over adsb.fi DNS ownership - I think https://airplanes.live is where the OSS community gravitated.
Ah I've been out of the loop - thanks for correcting me!
The ADS-B Exchange situation is more complicated than it "was sold out," and there are valid reasons for not wanting to use them–but it is still the most comprehensive source of uncensored flight tracking data.
I have done the same thing in C# and ArcGIS maps.

I'm going to test it out in an airplane. My map is dynamic, doesn't have to be stationary, and works offline.

I set one up a few months ago and was really surprised at how much coverage I got–I thought I might need an outdoor one, or at least to fiddle with it a bit, but even just plopped on my desk behind my computer screen on the ground floor of a three story house in a dense area I’m picking up planes from miles all around.

I built a little app that processes the data to count how many are flying low over the park nearby, so I can go there when it’s quiet: https://noisy.today/prospect-park/

Not as fun as building your own, but note that you can apply for a free receiver from FR24.

https://www.flightradar24.com/apply-for-receiver

That's incredible, whats the catch!?

I reckon if I shelled out for a business plan I could start doing some simple stuff with free tier / extra paid features

> That's incredible, whats the catch!?

They prioritize low-coverage areas (no idea how generous they are for covered areas).

Nearly all of their position data is from these receivers, so you're providing them with more coverage/redundancy for the plane positions.

The hardware is relatively cheap (under 50$) and I don't imagine the business tier costs them much money.

> I reckon if I shelled out for a business plan I could start doing some simple stuff with free tier / extra paid features

You don't need to they'll give it to you for free.

sidenote: You can build your own with an rtl-sdr and a raspberry pi/cheap computer. If you do this you can forward the data to all of the commercial sites for the free perks, and to all of the community sites.

That's quite genius, I wonder whether Apple's I/O and Radio APIs will let me do this on mobile...
Mine serves as a fun party trick. I never built this out but I always wanted to build a little display that shows the overhead plane's src/dest, speed, and altitude using the antenna.
Once you have a receiver, you can use a raspberry pi image like https://adsb.im/home to easily feed data to more than 20 different networks. FlightAware, FlightRadar24, ADS-B Exchange, airplanes.live, TheAirTraffic, etc. Most of the networks give extra privileges to people who feed them data.
Love it!

From the error message it seems that too many HN users are trying it out right now. I will come back later.

Yeah, the API is free and has no guaranteed SLO.

I think for V2 I'll allow people to enter their OpenSky credentials, since it allows for basic auth

V3 (unlikely unless this takes off, pun intended) I might look into paid services.

(comment deleted)
This is great!

Small detail question: Did CRT radar scopes really have scan lines? I would have guessed they were vector displays.

Re. list of extra features: Since the app targets planespotting, it would be cool to show aircraft type, maybe for a few seconds after you tap a blip.

(comment deleted)
They were vector displays. But possibly not quite in the way you're thinking.

The original radar displays would scan from the center outward along a radial. The timing of the scan was predefined to scale for distance. The beam intensity signal was directly the (amplified) radar return signal. So a stronger returned signal would cause a more visible "blip" on the long-phosphor display.

The interesting part is to make the radar beam scan around the CRT display, the whole cathode tube emitter assembly would be driven by a motor synchronized with the spinning radar dish. This rotation would have to match the speed and direction of the radar dish at all times, otherwise the blips would show in the wrong place.

The fixed radial and distance lines would be printed either on the CRT tube itself or on a transparent cover. Displays like this were used for decades, probably well into the 1980s or even early 1990s. Newer versions were able to use simple electronics to scan in the X and Y direction independently, to avoid the more complex rotating beam emitter assembly.

More info at https://en.wikipedia.org/wiki/Radar_display#Plan_position_in...

I was wondering about that after asking my question, since converting the signal to an x/y scope requires trigonometry. Probably a challenge to do electronically in the early days of radar. Leave it to the WW2-era engineers to find an electromechanical solution!
(comment deleted)
Radar was surprisingly advanced by the end of WW2, the Brits and Americans had ground scanning radar by the end of WW2 (H2S and the later H2X) all done without transistors or computers as we'd recognise them :).
No, you're right. Old-school radar displays were basically like oscilloscopes where the X and Y position were controlled by the angle of the radar, and the current range of the radar return. So it's a type of polar plot.

The phosphor afterglow made it so that stronger radar returns remained on the screen for a bit. If the radar made more than a revolution in that time, you'd see the same airplane as a new dot ("plot") that had moved a bit. You could use a felt tip pen to mark the plots as "tracks" on the screen.

There were also special radar screens with a movie camera pointed at them, where hours of radar returns could be recorded for later playback.

For instance this sped up recording of Warsaw Pact planes during the 1968 revolution in Czechoslovakia: https://youtu.be/rAUodXI4LPw?t=622

Just to expand on one point the other two replies touched on: The beam does indeed scan radially outward from the center (though the angle can either be produced by physically rotating the deflection plates, or computing sin/cos electronically and applying to the x/y plates), and the amplitude of the returned signal does directly drive the beam current (so a target with a larger return will appear brighter.

Additionally, there's also a storage tube effect going on, too--but it works like the variable-persistence mode found in certain oscilloscopes, not the bi-stable mode found in storage-tube x-y vector displays for early computers (some o'scopes had both var persist and bi-stable modes).

One consequence of the above is related to early attempts at designing stealth airplanes, like the SR-71 and XB-70: The beam current is set such that the radar tube tends to build up the "blip" over multiple sweeps, and the blip usually moves less than its own diameter between sweeps.

But, if the airplane has an intrinsically low radar cross-section and if it is moving so fast that the blimp moves a greater distance between sweeps... the radar operator may just interpret the little ghost blips as noise, especially if he or she is overwhelmed by a large number of targets.

[flagged]
What he has done is awesome. Yes, I misunderstood the title at first too, but that was more than made up by the care and attention put into building this app. Building things for your own kids just for the fun of it is what parents do.

Stop dunking on people having fun.

They don't seem to be dunking.

The title of the the piece/submission would be well served by calling it a simulated radar. I, like I suspect many others, clicked on it because I was honestly intrigued by the concept of some sort of homebrew radar. Setting that bar and then seeing that it's some API results plotted on a simulated radar screen is a bit of a letdown.

Submission is clickbait. It's a cool project, sounds like fun and I'm sure their kid likes it, but the root post is not wrong.

Thank you. I clicked thinking that I was gonna see someone's home made radar.
I clicked because I was excited to see the story of their unexpected interaction with the FCC and FAA (or local equivalents) due to putting out that much EM radiation in those spectra. But no. Still cool, though.
The difference is, I was expecting literally what was on the title :-)
Are you human?
This is probably an alt account for jocaal who posted a nearly-identical, unuseful comment and then deleted it. Then this one magically appeared right after, to again point out what's already obvious to the rest of us.

Nonetheless, a great little project that inspires wonder in a kid!

True, but it even looks more like a radar than Flightradar's radar.

Cool tool for a small kid to have.

I don't know, phones are addicting and getting a toddler hooked seems like a disservice. There's so many educational things the author could be giving their toddler and they're teaching them to have their eyes glued to their screen from such a young age...
> I don't know, phones are addicting and getting a toddler hooked seems like a disservice.

Phones are not addicting. Algorithmically manipulated services are addicting.

> There's so many educational things the author could be giving their toddler and they're teaching them to have their eyes glued to their screen from such a young age...

Like how to use one's skills and passions to develop a product for their beloved child?

I believe you're missing the crux of the problem.

What's new about phones is NOT that things are manipulated so that we want more of it. "News" have been around for centuries and they've always been manipulated to give most people outrageous stuff to consume.

What's new about phones is that A) they are an effectively infinite source of stuff and B) it takes 2 seconds to get them from our pocket.

So you're blaming addiction on optimization by evil services, but in reality the problem are the phones themselves: they make it too easy to "get more".

I see where you're coming from, it's a totally reasonable point. I tried from the outset to make it more like a toy that prompts you to look at the real world once it gives you information. But, this is a totally reasonable stance
I like that it involves more than just scrolling. There's the thing about searching and finding it in the sky and the questions which can arise from this, like where did this plane come from.

Even if it were a real radar you'd still be looking at a screen in order to make use of it.

I have a two year old. He loves planes too. I don't get it :-)
Unfortunately I was unable to jailbreak my iPhone to recieve transponder codes, but my cousin who works at NSO Group tells me he's working on it
Kraken SDR has 5 receivers, all synchronized to the same time. There was a "passive" radar project that used its hardware but got shutdown.

https://hackaday.com/2022/11/19/open-source-passive-radar-ta...

apparently passive radar is governed by some US Munitions list:

US Munitions List, Category 11(a)(3)(xxvii): Bi-static/multi-static radar that exploits greater than 125 kHz bandwidth and is lower than 2 GHz center frequency to passively detect or track using radio frequency (RF) transmissions (e.g., commercial radio, television stations);

I'm surprised this is getting downvoted: Completely different type of project and misleading headline. Still a cool project!
I downvoted for implied tone. while their comment is true, sertbdfgbnfgsd could be less of a dick about it.
Slightly off topic: I went to download this and it said I needed iOS17. Out of pure curiosity what from iOS17 does it need? Apologies if it’s mentioned in the article, I just skipped ahead to final product.
(comment deleted)
It is mentioned in the article -- the app uses new APIs in iOS 17 for map annotations.
Correct, also SwiftUI Metal Shaders (about which I've written an upcoming article) and SFSymbol animations
Not off-topic at all, happy to answer!

- Map Annotations - SwiftUI Metal Shaders (for the CRT effect) - SFSymbol Animations

If I remember anything else I'll mention :)

I didn't know they still let children into the cockpit anymore!
I believe they still do after and possibly before the flight. They used to do it during the flight!
I've done that! It was on what I think was my first commercial flight, a 767 from probably YVR to LAX sometime in the early 80s. My grandfather was the king of getting kids into fun places, he would go talk up the crew (of the plane, ferry, train, whatever), then come back and fetch whichever grandkids he had.

Sadly those days are long gone now.

I did the same on my first flight, England to America. I was very shy with the loud American pilots, but I'm sure I wasn't the first shy English boy they'd met.

This was in the mid 1990s, and the cabin crew invited me to look. I don't think there were many children on the plane.

I see one issue with this app: the app page clearly says it’s only for 4+ yet your target audience is only 2 :)

Nicely done!

I hope to stay under the radar of the app store police :D
I occasionally get large military transport planes that buzz my rural area at very low altitudes, often below my house in a canyon just a 3 iron away. I suppose they're training. The roar is epic. It'd be nice to get a little notification when that's about to happen. Not enough to write my own app for it though. Kudos for the hustle.
That's a really great little niche market, it's times like this I wish I was more entreprenurial

Thank you for the kudos :)

The military planes are hit or miss for what they put out in terms of position. Most will do Mode S transponder, which does not, by itself, include position. But if you get enough of these ADS-B receivers in an area, they can triangulate the position.

Every few weeks we have "mean jets" (what our 3 year old calls fighter jets, I think from the Iron Giant) buzz our house near KBJC going in for landing/taking off. They're super loud and often gone before you can get outside to see them (they leave at 400+ kts).

We get similar here and it's on my (long) todo list to set up a notification for low incoming planes.
Idk why, but this is delightful to use. There’s something so fun about it. Will likely delete after a few days, but just turning it on and seeing the planes appear on a radar-like screen is just charming.
Thanks, that's great to hear :)

Will try not to toot my own horn, but I think the explicit goal of making it a toy vs making a commercialised product with ads/aggressive paywalling meant I could make something simple that gives nonzero value without any baggage

This is perfect. We need more hobbyist apps. Minimalist design, simple and solid functionality, and no ads in sight. Shake off the shackles of the advertising dystopia!
This comment is perfect :)

I think certianly the toddler-based inspo made it easier to turn into a simple toy

This is cool in concept, but FlightRadar24 has a built-in Augmented Reality feature that works really well.

https://www.flightradar24.com/blog/show-us-your-best-augment...

Also, if I were to build my own local copy, I'd use an RTLSDR to get the ADSB packets direct and base my app on tar1090. https://github.com/wiedehopf/tar1090

what children truly want, need, and enjoy, is interaction with adults, and the less augmented the reality of the human contact, the real-er it is. build something that doesn't work so well with them, rather than off the shelf something perfect.
Now I'm just thinking about how I'd put a CRT filter on AR planes
This rings true. I remember the wooden toy biplane my dad made in his wood shop when I was a kid a lot more fondly than all the other bought plastic toys that came after it.
I'm not suggesting that you give the kid a phone and leave them unattended. But you, as the parent, could totally hold your phone up in AR mode so you both can see what the plane is, and where it's going. Maybe make it a little game. Guess where it's coming from, where it's going to, what kind of plane - then see the answers.

If I build and give the kid a display so they can simply stare at it all day without any human interaction... how is that better than the AR on parents phone? It's not, it's worse. (Note, I'm not saying that's what the author actually did, just proposing an option)

The technology here is not the problem. Be in AR or CRT. The problem is how we use it and how we teach our kids to use it.

That is very awesome, TIL

If I were commercially-minded (I'm not), I'd go full hog on the Mattel approach and carve out the niche as a toy vs an informational product

MSFS (MS Flight Simulator) has real-time Flight and Weather data and works in Steam's Proton fork of WINE on Linux.

FWICS there are third-party open source tools for adding live Flight data and logical behaviors to flight simulator applications.

https://fslivetrafficliveries.com/user-guide/ :

> FSLTL is a free standalone real-time online traffic overhaul and VATSIM model-matching solution for MSFS.

(... Til about FlyPadOS3 EFB: An EFB is intended primarily for cockpit/flightdeck or cabin use. For large and turbine aircraft, FAR 91.503 requires the presence of navigational charts on the airplane. If an operator's sole source of navigational chart information is contained on an EFB, the operator must demonstrate the EFB will continue to operate throughout a decompression event, and thereafter, regardless of altitude. https://docs.flybywiresim.com/fbw-a32nx/feature-guides/flypa...)

https://twinfan.gitbook.io/livetraffic/ :

> LiveTraffic is a plugin for the flight simulator X-Plane to show real-life traffic, based on publicly available live flight data, as additional planes within X-Plane. [...]

> I spent an awful lot of time dealing with the inaccuracies of the data sources, see [Limitations]. There are only timestamps and positions. Heading and speed is point-in-time info but not a reliable vector to the next position. There is no information on pitch or bank angle, or on gear or flaps positions. There is no info where exactly a plane touched or left ground. There are several data feeders, which aren't in synch and contradict each other.

...

"Google Earth 3D Models Now Available as Open Standard (GlTF)" (2023) ; land, buildings: https://news.ycombinator.com/item?id=35896176

https://developers.google.com/maps/documentation/tile/3d-til... :

> Photorealistic 3D Tiles are a 3D mesh textured with high resolution imagery. They offer high-resolution 3D maps in many of the world's populated areas. They let you power next-generation, immersive 3D visualization experiences to [...]

GMaps WebGL overlay API: https://developers.google.com/maps/documentation/javascript/...

...

From "GraphCast: AI model for weather forecasting" (2023) https://news.ycombinator.com/item?id=38267794 :

> TIL about Raspberry-NOAA and pywws in researching and summarizing for a comment on "Nrsc5: Receive NRSC-5 digital radio stations using an RTL-SDR dongle" (2023) https://news.ycombinator.com/item?id=38158091

...

"Show HN: I wrote a multicopter simulation library in Python" (2023) https://news.ycombinator.com/item?id=38255362 :

> [ X-Plane Plane Maker, Juno: New Origins (and also Hello Engineer), MS Flight Simulator cockpits are built with MSFS Avionics Framework which is React-based, [Multi-objective gym + MuJoCo] for drone simulation, cfd and helicopters ]

....

That's the first thing I thought about too, I use it all the time to confirm my A380 spottings.
Careful. This will be tolerated right up until you start building fire-control radars, at which point people with absolutely no sense of humor may take an unhealthy interest in you.
Maybe I'll make a lucrative exit to the military-industrial complex
"A fire-control radar (FCR) is a radar that is designed specifically to provide information (mainly target azimuth, elevation, range and range rate) to a fire-control system in order to direct weapons such that they hit a target. They are sometimes known as narrow beam radars,[1] targeting radars, or in the UK, gun-laying radars. If the radar is used to guide a missile, it is often known as a target illuminator or illuminator radar."

https://en.wikipedia.org/wiki/Fire-control_radar

That was a new one for me.

Great minds… I published something very similar (albeit less advanced) that also went viral on HN back in September: https://news.ycombinator.com/item?id=37379801

Mine is a webapp 80% generated by GPT that makes a sound when a plane enters a certain radius around the user’s location.

Oh awesome! Great minds indeed :)

Honestly building a toy for my toddler is some of the most fun I've had coding in years, I can't wait for her to get a little older and start articulate her own ideas

I feel you. I have all kinds of ideas for when he gets a little bit older. For example: a voice-controlled (perhaps motion activated) electric train. I think having a child gives me an excuse to express my inner child's passion for tinkering.
Off topic but you have my exact name (first and last). I wonder what the chances are on that.
numerically, quite low, but given the number of people on the internet, it happens routinely. I'd guess most English speaking people have used <internet_search_of_choice> for their name and found duplicates So:

guess maybe 100 million English names on the internet, between 2 and 100 matches, so around 1 in 10 million

BTW. I got bored counting the matches for Jacob Bartlett on facebook. definitely more than 10

Jacob and Bartlett are both relatively common names, I'd say aggregating over a lifetime one can expect to coincidentially bump into quite a few over the years (since the advent of the internet at least!)
I've never met anyone (outside known relatives) with my spelling of surname. When I moved to my current UK city I was surprised to find a Firstname Lastname match in the same city.

Facebook shows dozens of the same name in the general area.

As I've seen some say, if you're one-in-a-million then there's ~7000 people like you out there somewhere!

You in particular, pretty low. But open up the names to be any first/last combo, and we have the Birthday Paradox.

My name is quite a bit more unique than Bartlett, and I still know of about a dozen people with the same first/last as myself. I thought about setting up an FB group named after us and inviting them all just for funsies. None of us are related as far as we can tell, but the name is unique enough that we probably are, if only distantly.

Nice! Minor nits:

* It takes me out of the immersion a bit when planes move after having been drawn. It would feel more realistic if the blips were "painted" by the sweep and then static until the next sweep.

* To make it a bit more realistic you could extrapolate from previous data points so each plane would make consistent progress from sweep to sweep.

Thank you :)

Both very valid points. I think if I was clever with timing and angles the first one is definitely doable. The second one woudl be even simpler - the API returns flight velocity so I can even calculate this from one data point

I suggest adjusting your gradient so they don't fully fade out until just before the sweep hits them, or maybe even only down to 10%, so they only get wiped by the bar. It'll make it much easier to watch a plane if it doesn't keep disappearing entirely.
On the other hand, if you want maximum realism, everything should fade continuously from when it is drawn.

The underlying technology being imitated here is a slowly decaying phosphor.

And this is why I still hang out here, after abandoning nearly everything else.

I love how a discussion like this can occur here and there's no flaming or egos getting hurt. When you post a labor of love like this, it's great to see the reaction on HN.

I spend a lot of time trying to decide what to do with old tech in my volunteer gig. We have old Univac "dumb" terminals and I feel the need to plug them in and see if they still work. I come here for re-charging.

I think emulating old hardware is fascinating. Am I the only one who watches old media just to hopefully get a glimpse of the past?

Not sure if you picked up your own slight mistake earlier, but this is also exactly why you shouldn't try and 'tween' the planes to the new positions if you're aiming for realism.
Huh? What I'm proposing if you want to make it realistic (which may or may not be good UI) is:

* Everything fades from when it was drawn

* Everything is only drawn with the sweep

* Simulate a continuous motion for the planes, and use that to determine a new position at each sweep.

Did I make a mistake?

On re-reading it seems more like I misunderstood.

I thought you were saying to animate the planes, but I no longer think that's what you meant.

Thanks for this comment - I knew the exact visual effect I was going for but didn't actually know the physics of what is happening until now! :)
I swear there are startups that blabber for years before making an MVP.. Jacob was able to build this in a cave, with a box of scraps..
In the interests of appeal to modesty, I can tell you about my long history of unreleased apps, failed startups, and false starts :)
if you're anything like me, you have a stash of items that you just haven't gotten to yet but have every intention of doing something with at some point. law of averages suggests one of them will hit!
This is great. On my « one day » build list.

In a similar vein, my 5yr old son has a flight log book - I started it for him as a baby. Every flight he gives asks one of the crew if the captain wouldn’t mind completing it. It logs route, aircraft and any events that happened. The crew _love_ this kind of thing - we’ve toured cockpits and crew rests and the messages are always gracious. He’s always beaming to get it back. Highly recommend it for little plane geeks.

That's genius, being invited into the cockpit felt extremely cool even as a grown adult, so I will absolutely get this started next time we get a flight
I thought that after 9/11 passengers were not allowed to visit the cockopit any more
They are not allowed in there during the flight. When the plane is turned off and parked at the gate, the rules are a bit more relaxed.
Yeah always at the gate upon landing - sigh, I’d love to jump seat to satisfy my curiosity
perhaps, but my 10yo son was invited to land in the cockpit earlier this year. he loved it and will never forget it.

(domestic flight, Europe)

My father started a logbook for me when I was a toddler which I still keep updated to this day (I'm in my 30s). Every flight I've ever taken is in it. It's a really neat idea.
That is so cool. I often wonder if I’ve been on this aircraft before, wish I had that data!
+1 on the logbook. We took my daughter London - New York when she was ~8 weeks old, and got some great photos from the cockpit, including her wearing the captain's hat.
That's super wholesome. Congrats on app and plane-curious kid
If anyone is interested, you can build your own adsb receiver for very cheap (under 50$), and you can forward the data to all the platforms - ADSB-exchange, airplanes.live, flightradar, flightaware, etc.

You'll get the business tier plans on the commercial sites for free, and you'll feed the community exchanges.

You'll also be getting the data directly, so they aren't censored, and don't rely on the internet.

I bet this'd be a lot more reliable than the free API I'm using

(no hate to OpenSky though they were very nice and clear to me when I emailed them)

So cute! And of Sunday afternoon a flying saucer with green tractor beam came by to check out what the fuss was about.
I wrote a simple program that connects to (default) port 30003 on dump1090-fa (Flightaware version). It parses the ADS-B output and uses Flightaware's AeroAPI (there is a free tier based on requests) to augment with airline, aircraft, and city departure information. I then publish to my MQTT (Mosquitto) broker for planes within 2.1 nautical miles (i.e. I can visually make them out).

An MQTT client on an RPi3 (Linux) subscribes to those messages and uses a TTS service (Azure) to generate a wave file. I then use USB audio (this might have been the hardest part) to play it to me while I sit on my patio and watch local planes fly by.

I live near a couple major airports, so most of the planes are easy to spot (~5000 MSL). It's a simple pleasure.

> then use Linux USB audio (this might have been the hardest part)

Linux Audio is ALWAYS that hardest part.

> Linux Audio is ALWAYS that hardest part.

Only if you're not using ffmpeg or (c)vlc.

I did this too! - and built out an Alexa skill so I could ask 'where's that plane flying to'
That’s great, do you have a write up somewhere?
I'll finally get motivated and share :)
When you do, I'll be eager to try it, as I currently rely on FlightAware's local web display to show my 3 year old what planes our antenna is picking up.
I just realized I have the transform of the dump1090-fa data to MQTT message already written up: https://github.com/idatum/adsb2mqtt What's missing is the client that enhances flight info and uses TTS to play the generated wave. I also wanted to play around with Home Assistant's TTS. I'll get motivated to write this up more fully, blog style.
I have an iOS shortcut that anyone can use to do something similar. Install it, name it "What's Overhead", and then you can say "Siri, what's overhead?" and then Siri will speak details on whatever aircraft is closest to you.

I use it when driving, or via my watch if I hear an unusual plane or helicopter and don't want to pull out my phone.

https://www.icloud.com/shortcuts/92f43e8881ce4291b48b28a4b0b...

Great idea. Simple but effective, I'm up on a mountain with weird military traffic here and there, in addition to commercial stuff, so I'll play with this when I am driving around for sure.
> Which begs the question, why can’t Google Maps ever work out which direction I am facing?

I always wondered this as well. Apple Maps seems to be much better at this

It used to do it fine and then they had an update that made it terrible. You need to hold your phone flat, if it’s at even a slight angle it stops working.
When I was in Tokyo I noticed that the compass was completely useless. Too much EMI?
My Apple maps consistently has me 90° off from where I'm actually pointed.
My man at Apple Maps forgot to account for Header
Right! I was expecting it to be hard, but I literally get my orientation streamed by CoreLocation
My first initial thought to this headline was he actually built a radar for his own curiosity, not because their toddler loves planes.
It's a little clear which of us got more out of the project