Package: openvario-compman
Gliding Competiton Manager for OpenVarioThis application is intended for glider pilots participating in gliding
competitions, published onSoaring Spot. It runs onOpenVarioflight computer and automatically downloads
current contest airspace and waypoint files when they are published on Soaring
Spot.compmanallows to select your competition class and automatically
downloads today's task, provided bysoarscore.com. It
will configureXCSoarto use the task and updated files.
You can switch between contests easily without need to download and transfer
files to the flight computer manually.It is a text-mode application, which might look primitive for modern
graphics-rich UI standards. However, it is written using contemporary software
engineering techniques, responsive, very fast and easy to use, even with very
limited input controls available for OpenVario. It also has a fairly simple
code, that makesopenvarioeasy to understand and change.UsageThis app requires Internet connection to be useful. The simplest way to get it
on your OpenVerio is to use a small USB WiFi dongle.Typically, during the gliding competition, you runcompmandaily to check if
new competition files were uploaded to Soaring Spot (or when new files are
announced during the briefing). Whencompmanis started, new files for the
current competition will be automatically downloaded to the device. As soon as
you select them, XCSoar will be reconfigured to use these files. Simply exitcompmanand run the XCSoar the usual way.When you go to the next competition, simply switch the contest usingcompmanmenu system. All competition files will be automatically downloaded and XCSoar
will be reconfigured. No more complicated downloading of files on the flash
drives and transferring them manually to the OpenVario!compmancan be operated using only 6 buttons: 4 arrow keys for navigating,Enter(usually a push on rotary encoder or joystick) for selecting
items andEsc(usually marked asX) for going back.InstallationTo installcompmanon your OpenVario you will also need to be able to ssh to
the device or connect to it through standard debugging serial port. Assuming
the network connection is up, useopkgpackage manager to download and
installcompman:$ echo src compman http://openvario.lebedev.lt/opkg/armv7vet2hf-neon >> /etc/opkg/customfeeds.conf
$ opkg update
$ opkg install openvario-compman
$ opkg install ovmenu-compmanIf you have already installedopenvario-shell, all you have to do is:$ opkg install openvario-compmanAt this point you should be able to run compman from command line:$ compmanReboot your OpenVario and you should also see the new menu item forcompman!DevelopingIt is not required to own or have access to OpenVario device in order to
developcompman. The only requirements are Python 3.7 or higher and terminal
emulator, readily available on MacOS or Linux operating systems. There are lots
of free options for Windows as well.Setting up the development environmentcompmanusespipenvfor managing dependencies and dev environment. If you
don't have it yet, install with:$pipinstallpipenvAfter checking out the sources,cdtoopenvario-compmandirectory and run:$pipenvshell
$pipenvinstallAfter that, your development environment is ready, you should be able to run
the app:$compmanIt is possible to adjust few options by providing them in.envfile, located
in project directory. You can copy the sample filesample.envto.envand
adjust values there.Development toolscompmanuses various tools to check the code quality. They are generally
available throughmakeprogram. Most useful are these:make test- runs the test suitemake mypy- checks the sources with static type checkermake black- reformats the source code to match the code styleIt is often useful to watch the log file while runningcompmanin development
environment. The log file will contain traces of actions user makes and
tracebacks from exceptions happening during the execution. Usetailto watch
the logs in a separate terminal window:$tail-F~/.compman/compman.logFilesystemcompmankeeps all its files under~/.compmandirectory. It contains the set
of directories for each configured competition. Each competition directory
contains downloaded airspace and waypoints files. This directory can be changed
by sttingCOMPMAN_DATADIRenvironment variable or using--datadircommand-line option.compmanexpects to find XCSoar profile in~/.xcsoardirectory.