Bluetooth Varios
Using a Bluetooth vario device with Flyskhy turns your iPhone into a professional vario meter.
Flyskyhy normally gets altitude information from the GPS and the pressure sensor (if present) in the iPhone. This altitude information is of course used in the altitude instrument of the app. Changes in the altitude are used to feed the vario instrument, giving an indication how fast you are climbing or sinking. But the pressure information from the built-in sensor comes infrequent (approx. once per second) and is delayed (approx 3-4 seconds late). Therefore, to create a responsive vario, the app uses mostly the accelerometer sensor. Fast changes are derived from the accelerometer data, and are corrected when the pressure data comes in. The result is a decent vario, but it does not have the reliability that a dedicated vario instrument has.
Therefore, the Flyskyhy app is integrated with external varios that do contain a responsive pressure sensor, and feed that data to the app. Flyskyhy can work with almost all bluetooth varios that are capable to communicate with an iPhone. Ask your vario device manufacturor for details.
How to connect
To connect your vario with Flyskyhy, go into the Flyskyhy Settings menu (if you are completely new to Flyskyky: the menu bar comes up when you swipe upwards anywhere on the screen). Select Settings→Vario→Model, then select your vario model from the list. Select the “Other Bluetooth Vario” option when your vario model is not explicitly listed. The “Select an Accessory” popup should come up. Switch on your vario device, and it should show up in the popup after a while. Select it, and a connection will be established.
When you have done that once, the connection should be established automatically in the future, every time both Flyskyhy and the vario device are running.
For the FlyNet varios specifically, establish a bluetooth connection with the Settings App first before you try the above procedure.
A
Vario Status instrument is available that can be added to the main flying screen. That will show the status of the connection, and the battery level of the vario (if supported by the device).
Which altitude?
When flying with an iPhone with built-in pressure sensor, or with a Bluetooth Vario, the app has access to two altitudes: the altitude from the GPS, and the one derived from the pressure information (the barometric altitude). This might lead to some confusion about which altitude is used. The following procedure is followed for that:
- Before the flight, the barometric altitude is continuously synced with the GPS altitude. This is done to establish a base-line. After all, the pressure information does not give an absolute altitude, but can detect changes in altitude easily.
- Once the flight starts, only the barometric altitude is used everywhere, and is no longer synced with GPS. That is, the instruments all show the barometric altitude, and functions like airspace warnings also use the barometric altitude. This is mandatory for many competitions, and also for general aviation rules.
- Both GPS and barometric altitudes are logged in the IGC file. But the Flyskyhy log analysis only uses the barometric altitude (if available). Note that independent flight analysis tools may use the GPS altitude instead, leading to other results.
The QNH, required for FL airspaces, is determined automatically during syncing with the GPS altitude, and does not need to be set manually anymore.
Supported protocols
For those building a new vario device, or wondering whether a specific protocol is supported by Flyskyhy, it supports various ways of sending pressure, location and other data to the app. Flyskyhy uses the following BLE services:
- The Environmental Sensing Service (181A) with the Pressure Characteristic (2A6D). The Characteristic has to be enabled for notifications, and has to be updated at least 10 times per second.
- The Battery Service (180F) with the Battery Level Characteristic (2A19). This is for battery status information.
- The SPP Service (FFE0) with SSP Characteristic (FFE1). This can be used for all kinds of data that is sent as a string. The supported string formats are listed below.
- Various proprietary services and characteristics. The app can use any string characteristic that is enabled for change notifications. For the predefined varios, the app knows which services it defines. For those, it may also use other services, for example for setting the sound volume of the vario device.
When a characteristic with string data type is used, the Characteristic is assigned subsequent text lines in sequence, each terminated by a new line character. If a line to be sent is larger than the BLE maximum string length, it needs to be sent in multiple chunks, with only the last chunk ending in a new line.
The following commonly used string formats are supported Flyskyhy. All need to the UTF-8 encoded.
Lift / pressure lines need to be sent at least 5 times per second.
- $D, Digifly format
- $LK8EX1, see LK8EX1 definition
- PRS
- $BFV, Bluefly format
- $XCTRC, XCTracer format
- $LXWP0, see LXWP0 definition
- $PDGFTL1, Digifly Air format
- BAT, battery status for BlueFly
Both GPS lines need to be sent once per second,
FLARM support. The $PFLAU line needs to be sent once per second, the $PFLAA line when data is available.