Today, I’m excited to write about a special migration. This time, it’s me who’s switching from proprietary to free software. The challenge is navigation - not by car, bicycle, or foot. It’s about flying in the sky with an airplane. Admittedly, this is a niche with only a few players. Finding an open-source project here is delightful!
Unfortunately, there’s no space for a built-in device in the cockpit of my open biplane. The typical mounts with suction cups and goosenecks are out of scope as they’re not secure in wind and weather conditions. Besides, a display would ruin the charm of a historically-inspired biplane with an analogue “clock store”.
So, a solution for the wrist is needed. Suitable mounts can be quickly found in bicycle accessories. And since I need to renew my subscription to the proprietary software Skydemon this October 2022, I’ve spent the past few weeks searching for something better.
What do I want? What criteria do I use to measure success and good software? For me, a navigation app must be able to:
- Display a moving map
- Scale-Free and zoomable vector maps
- Cover Europe with all airspace and optionally circuit patterns
- Offer basic flight planning with wind factor and fuel consumption
- Display track, heading, and groundspeed
- Provide all airfield information and frequencies
- Display METAR and TAF weather information
- Be open-source with a free license
- Must work offline
- Uncluttered user interface
I appreciate software that focuses on a few core features and solves them ingeniously. Years ago, that was the Jeppesen app, which I switched to from Air Nav Pro in 2015.1 But when the Boeing Corporation forced the half-finished ForeFlight as a replacement a few years later, I switched to Skydemon out of principle. It was a pragmatic switch without love. And though Skydemon has accompanied me faithfully on tours across Europe for many years, it always remained unfamiliar to me in terms of handling. To make a long story short, I’m really excited about Enroute from the first moment.2
Programmed in C++ by a small, dedicated team led by Stefan Kebekus, as a project of Akaflieg Freiburg e.V.3 with the support of the University of Freiburg. Everywhere in the app it’s evident that pilots, not marketing fluff or non-specialist decision-makers, were at work.
It’s free from complexity and feature-itis that overwhelms you with other apps during VFR flights4. Also, no behavioral data is collected. Only the METAR and TAF are retrieved directly from aviationweather.gov, leaving data traces there. The download and updating of the map data, which come from an Enroute server (more on that later), are pleasing.
What I don’t want is advertising nudging, in-app purchases, or crashes (of the app!). I wouldn’t write this if I hadn’t observed it repeatedly over a decade of practice as a pilot and flight instructor with 1500+ flight hours. Bugs may be fun in IT, but in general aviation, they quickly become dangerous when combined with other factors. And there are plenty of very good reasons why the systems of a certain manufacturer are practically irrelevant in the aviation industry. Below is a familiar image from IT, dangerous in general aviation, and a story as a footnote.5
In addition to that, there is a “special” circumstance in Germany. In almost all countries around us, free portals and open data licenses for official AIP, weather, and airfield data are available. I can attest to this personally from my foreign flights.6 However, in 2022, the German air traffic control (DFS) cannot offer a current PDF of the ICAO map of Germany for download. Neither on their website7 nor in the AIS portal.8 At least it can be displayed as a layer in the NOTAM briefing. But printed as a PDF, it only provides coordinates as text without map sections. Those who buy a DFS license for charts and ICAO maps for their apps or built-in devices can enjoy huge pixel blocks when zooming in, which are layered as bitmaps over vector maps.
When commercial and free projects like OpenAIP9 or OpenFlightmaps10 offer better solutions than the official sources, it says a lot about the technical and organizational state.
Possible cause: Own economic interests, positions, and posts in the sale of paper maps and digital usage licenses in the DFS company Eisenschmidt.11 From my point of view, this is a problematic wishy-washy at the expense of not only the many sports and private pilots but also the general public. Either you play in the same league driven by accepted quality standards as a service provider with a sovereign mandate, or better not. Taxpayer money in free software projects contributes more to the public good than any public-corporate partnerships. Keyword: Public Money - Public Code.12
For little money (around 75,- EUR), I got the cheapest noname Chinese device (Oscal) for this dedicated purpose. The only important things for the hardware were interchangeable batteries and a not too outdated Android system. A Google account was not required for commissioning and it took a while to clean up the device from the pre-installed, “phoning home” nonsense.
I then conveniently obtained Enroute via F-Droid.13 Big kudos to the documentation: the components and dependency list are very clear - that’s how it should be.14 Of course, I do not like the length of the dependencies. But I won’t complain. Enroute is programmed in volunteers’ spare time.
The planning mode of Enroute is intuitive and entirely sufficient. The wind comes from the METAR/TAF data and must be manually typed in. There is no update of wind data based on position.
I only connect the device to the internet as needed for AIRAC15 or weather updates. Otherwise, it remains offline, which results in a longer runtime for a continuously running, maximum brightness display. Those who own an external GPS mouse or a FLARM/ADSB can integrate it via WLAN/BT.16 Enroute uses the same databases as the built-in Air Avionics, Flarm, or Butterfly devices.17
The particularly pleasant thing is that the Enroute server is also free.18 It retrieves all map data from OpenAIP and OpenFlightmaps to convert it into the GeoJSON format required by the app.19
How nice it would be to live in a world where a gliding association like the DAEC20 or various national aviation authorities would contribute their own Enroute servers to this project and not only relieve the only Uni-Freiburg server but also make Enroute more well-known as an app. This does not require complex or centralized cluster infrastructure. Simple mirror servers that are randomly queried from a server list for a download by the app and report their available bandwidth and utilization. If one server is at its limit, it switches to the next (+1) in the list. If this one is also tight, it goes to the next (+2) until after n requests, the best one so far is taken as a fallback. I get lost in technical details and wishful thinking.
Enroute also accepts various flight simulators as traffic and GPS receivers.21 I was able to establish a connection with MSFS2020 using fs2ff.22 Enroute can be quickly and easily installed on Linux desktops via Flatpak, simplifying route planning and information synchronization with other sources.
I am very satisfied with Enroute and hope that I can contribute to the popularity of this project with this blog.