Today we are publishing the first of a set of “flight bag” specifications and projects aimed at creating some standards for the distribution of data sets to aviation apps and electronic flight bags. There are quite a few standards in aviation with respect to formatting and distribution of aeronautical and charting data, but many of these are not in the public domain and are not suitable for all applications.
Historically, aeronautical information publishers have favored text file formats like fixed width and CSV. While text formats are easy to produce and distribute, app developers ultimately have to build parsers and packagers to format or store the data in a format suitable for use in an application. If data providers package data in portable database formats like SQLite, the amount of parser and import code written worldwide is reduced, and devs will write and publish drivers to read these standardized database formats. Our hope is that this will reduce code duplication, accelerate adoption, and focus devs on innovative new features.
The first specification we are publishing is the Flight Bag Tiles specification – “FBTiles” for short. FBTiles is a SQLite database specification for packaging the tile bits that make up a raster chart (SQLite is a widely used, portable database engine for apps). FBTiles is a superset of the MBTiles format published by MapBox that adds support for showing and hiding chart margins that typically appear around raster charts.
Here are some things you could do with FBTiles:
- Distribute chart tiles that replace the default base tile layer in MapKit or in Android’s Maps SDK.
- Display charts in a web browser served from a server app that can read the FBTiles format. ForeFlight, for example, uses an FBTiles server app we developed in house to send chart bits to ForeFlight Mobile.
- Build a business around distributing chart databases in the FBTiles format to app publishers.
- Distribute authorized charts (e.g. FAA, NAV CANADA, Air Services Australia charts) in FBTiles database format to app publishers.
- Build a set of tools or a service for converting charts in GeoPDF or GeoTIFF format into FBTiles databases.
We plan to extend the Flight Bag specifications further to include database formats for providing airport and facility directory information, navigation databases, flight publications, weather information, NOTAMs, and more. Ideas for extensions to the flight bag specs are welcomed.
The goal is to provide and evolve an open set of standards that help accelerate the distribution of information to web, desktop, and mobile aviation apps.
You can find the FBTiles spec on GitHub: https://github.com/foreflight/fbtiles. Enjoy!