XC Soar is free open source software and can be installed on various systems, e.g. Android devices. These usually already contain a GPS receiver which provides sufficiently accurate GPS data for the current position or the speed over ground.
For a complete glider flight computer, however, further values such as dynamic pressure, TE nozzle pressure, static pressure are missing in order to be able to run a usable vario display or information for the cruise mode for the current speed to fly. The XCVario delivers exactly this data to XC Soar either wirelessly via WiFi or Bluetooth or a serial RS232 interface.
The XCSoar software runs on many platforms, including Android devices such as modern smartphones, e-book readers such as Kobo’s, Android navigation systems with bright color displays and large screens, as well as many Linux-based systems, including Raspbery-PI and an OpenVario.
Ready-made devices are available on the market with sufficiently bright displays and touchscreens and are well suited for use in the cockpit. With the XCVario, advanced technology is available at an affordable price. There are also OpenVario hardware suppliers who are just as well suited to be combined with the XCVario. Various users prefer the XCVario to the OpenVario’s native sensor box for various reasons.
In cruise mode, XCSoar can use the data from the XCVario to provide precise target flight information, and the wind calculation also works without any problems. All in all, XCSoar together with the XCVario offers a glider computer with the latest technology, intuitive touchscreen operation (on touchscreen devices), many screens full of features for thermal cranking, cruise mode, final approach with freely configurable info boxes, display of terrain with airspace including side view. Displays with topography and landing fields. There are also assistants for competitions, a vario with an acoustic function, speed command for MC or dolphin cruise mode and much more.
XCSoar Configuration #
On the wireless device with XCSoar, e.g. tablet or smartphone, the XCVario can be integrated into the XCSoar application with just a few clicks. For this purpose, the device must have either Bluetooth or WiFi hardware on the hardware side. The XCVario will support both variants from December 2020.
Bluetooth #
In order to establish a connection with Bluetooth, the XCVario must be set to Bluetooth in Setup/Options/[Wireless iVario-123]. This is the default.
First, the XCVario must be paired with the Android as a Bluetooth device.
To do this, perform a device scan in the Android device setup under Bluetooth, and first pair the Vario, which should appear there as XCVario-5678, for example, in the pairing dialog. The number (only three digits for the 2020 series) is the serial number of the device.
If a Bluetooth password is requested for older devices, this should be entered with “1234”.
Then in XC Soar under Configuration/NMEA connection, a previously free connection A..F is to be set up (edit). If the XCVario is paired via Bluetooth, it can be found in the ‘Connection’ field with its Bluetooth ID, e.g. XCVario-5678. Select this there and in the following dialog enter the desired driver, for current XCVario versions “XCVario”. The switch K6Bt remains in the ‘off’ position. After acknowledging the dialog with “OK”, XCSoar will connect to the vario within a few seconds, which will then appear as a regular NMEA connection, e.g. with the status “connected; Baro,Vario” is displayed.
The relevant records of the Vario should now be visible under ‘Monitor’, more details on this under Device drivers below. Only one device can be paired with Bluetooth at a time. Unfortunately, this is a limitation of the Bluetooth/RFCOMM protocol, and cannot be changed.
Wireless LAN #
In order to set up a wireless LAN connection (also called wireless LAN, WLAN or WiFi), the XCVario must be set to wireless LAN in Setup/Options/[Wireless XCVario-1234]. If this is the case, you can register a wireless device, e.g. an Android device, on this WLAN. The network ID is identical to the Bluetooth ID, e.g. XCVario-5678. Pairing with WiFi is done by entering the password.
The WLAN password is: xcvario-21 all lowercase and with a hyphen (minus sign).
The XCVario is a pure data device and of course does not offer an interface to the Internet, which causes some devices to constantly search for better networks and, if successful, to switch to them.
In order to ensure a secure connection, for example if the Android device switches to WiFi when starting the clubhouse, the passwords for other WiFi networks should be deleted on the device for security reasons, or these networks should be deleted from the device or, if supported, these on the device be blocked.
While it is not possible to specify a second device driver with Bluetooth, this is possible when connecting via WiFi through different ports. The ports are permanently assigned to the interfaces in the Vario (see also the overview at the beginning of the document). It is also possible to connect up to 3 devices at the same time via WiFi. Two devices are possible without any noticeable loss of performance. The limitation in the software is 4 devices.
The XCVario offers a total of three ports for different drivers on one IP address.
The “TCP Client” option must be selected for the device connection, the IP address must be specified as 192.168.4.1 (the IP address of the server) and the ports assigned as shown in the following chapter.
XCVario TCP Ports #
8880 | XCVario sends sensor data according to the device driver set under NMEA protocol in the Vario |
8881 | FLARM if a FLARM is connected to the connector of the FLARM cable (connection S1-RS232), the data is exchanged on this port. |
8882 | From the XCVario Series 21, another device, e.g. a radio, can be controlled via this port on the second serial interface S2. |
The Vario forwards the data to the device via its internal router. Here, the routing to “Wireless” must be activated on the corresponding serial interface. Details on the setting in the Router section, in the setup for wireless routing, and the RS232 interfaces.
Device driver #
There are several device drivers on the XCVario device setup page, more details on this in the previous chapter on setup under Setup/NMEA protocol. To help you decide, here are a few explanations.
OpenVario #
So far, all devices have been delivered with the default setting OpenVario. This protocol does not support any setting from or to the device, which is sufficient for many users or even desired, e.g. a security MacCready value should be set in XCSoar in order to receive information there for a safe arrival at the destination, and ballast or settings for Bugs are not an issue and the real-time display of the XCVario is used for the speed to fly. In the future, delivery will take place with the XCVario protocol.
OpenVario data example:
$POV,P,978.1,Q,0.0,E,-0.0,T,15.0*4F
Borgelt #
In order to enable an exchange of settings, which some users want, the Borgelt B50/B800 protocol was already implemented during the 2020 season (from software version 20.0815-21). This allows MC, ballast and bugs to be synchronized in both directions, but not QNH, since this is not part of the Borgelt protocol.
But you don’t necessarily need the altitude display on the XCSoar, and you can read the easy-to-read altitude value on the XCVario, in which case synchronization is not necessary. If you also want the altitude to be displayed in XCSoar, set the QNH on both devices before takeoff.
Since the Borgelt does not support barometric altitude, an additional sentence is sent in the NMEA standard protocol “PTAS1” after each Borgelt sentence. XCSoar automatically evaluates standard NMEA sentences, which also transmits the altitude to the XCSoar flight computer.
Borgelt data example:
$PBB50,000,+0.1,3.7,0,0,1.00,0,25*65
$PTAS1,+0.1,+0.0,+3000,0*34
Cambridge #
This protocol was not developed with XCSoar in mind, but rather for end devices with a navigation program (Oudie, LX) which neither Borgelt nor XCVario supports. Basically, it doesn’t offer much of an advantage over Borgelt. A synchronization of MC, ballast and bugs from the XCVario is thus possible in the same way. The XCVario transmits the true airspeed (TAS), altitude, variometer values and the QNH setting. If the connected device supports it, these values (except for QNH) can also be synchronized in the XCVario direction. Borgelt also uses the Cambridge protocol for these settings.
XCVario #
The above variants have no way of transmitting information from the gyro sensor. Although there are some protocols that could do this (e.g. Eye-Sensorbox), any settings fall by the wayside. Something new therefore had to be developed for the 2021 series.
Today, the XCVario is delivered with the XCVario setting by default.
The new “XCVario” driver has been integrated in the last 6.8 versions and in the 7 versions of XCSoar (update via Google Playstore) since the 2021 season. In addition to the entire sensor system, including the AHRS position sensor, the XCVario protocol also supports the exchange of all settings, including QNH from the device in the direction of XCSoar. The QNH setting from XCSoar to the device is currently not possible, but is already supplied in the source code and is expected from version XCSoar 7.22.
XCVario data example:
$PXCV,-0.0,0.5,0,1.00,0,24.4,1012.0,962.0, 0.0,0.1,-3.2,-0.05,0.00,0.99*1C
XCVario commands: #
The XCVario protocol supports various NMEA commands for setting, the first three are used to set the MacCready value and ballast and bugs and correspond 1:1 to the Cambridge format line termination. The commands for QNH and the speed-to-fly mode were based on the Cambridge data format, also contain a checksum, and continue to follow the NMEA standard, i.e. they are terminated with <CR> and <LF>. These enable the remote control of the XCVario, e.g. via XCSoar controlled “sendNMEA1” events that can be defined in an .xpi file, e.g. controlled by an XCNav or Stefly remote stick.
In addition, the landing gear warning can be triggered and stopped again via a command from an external device.
The following commands are supported at the moment: