Skip to content

Releases: stronnag/bbl2kml

Standards are for wimps, not web giants

21 Mar 11:08
Compare
Choose a tag to compare

Ardupilot OpenTX logs

This build provides some support for Ardupilot/yappu OpenTX logs (#13). There are a number of constraints and restrictions:

  • This functionality is based on one sample log; it may not be representative of other AP/OpenTX logs
  • Compared to the INAV log, there are fewer useful fields (much of the data available to the yappu widget is not logged), hence:
    • The flight mode will always be ACRO, the number of satellites 13 and a fix assumed when the craft is armed (this information is not available from the log)
    • Heading and Altitude may not be updated (they are not in the sample log).

Thanks to @skorokithakis for the idea and sample log.

Placemark / Folder visibility

@CapnBry reported that the visibility of placemarks in folders differs between the desktop and web Google Earth applications.
What a mess; the OGC KML standard mandates a particular behaviour; however Google declines to implement this in the desktop application as "changing this would break existing code" . As most the users use the desktop (vice the web) application flightlog2kml follows Google's lead on this. However, this release offers an option to override this and set the required behaviour as a command option or in the configuration file if you want to make a behaviour your personal choice.

$ flightlog2kml -help
Usage of flightlog2kml [options] file...
 ...
  -visibility int
    	0=folder value,-1=don't set,1=all on

Anything other than the default of 0 causes the desktop client to behave badly, and the web client to behave more rationally. However, it's much easier to un-check folders in the desktop than it is to un-check every placemark in the web app.

Configuration File

There is now an optional configuration file. Default settings may be set in a JSON formatted configuration file.

  • On POSIX platforms (Linux, FreeBSD, MacOS), $HOME/.config/fl2x/config.json
  • On Windows %APPDIR%\fl2x\config.json

The keys in the file are the relevant command line options, the following are recognised:

  • dms
  • extrude
  • kml
  • rssi
  • efficiency
  • split-time
  • home-alt
  • blackbox-decode
  • gradient
  • outdir
  • blt-vers
  • type
  • visibility

For example:

{
    "dms": true,
    "extrude": true,
    "gradient": "yor",
    "efficiency": true
}

Deprecation Notice

The settings of default values via the environment variable $BBL2KML_OPTS may be removed in a future release.

Not much happens -- or not

06 Mar 11:13
Compare
Choose a tag to compare

NOTE The Linux image was recreated 2021-03-14 to remove a glibc version dependency.

This build adds a LTM (Lightweight Telemetry) generator, fl2ltm. This is intended to be a replacement for mwp's replay_bbox_ltm.rb and otxlog Blackbox log and OpenTX logs replay tools.

Note that fl2ltm is not provided in the build archives and there is no separate Makefile target, rather it is necessary to invoke fl2mqtt as fl2ltm; on POSIX (Unix like) systems this is most easily done by creating a link (hard or soft) between fl2mqtt and fl2ltm .

# cd <install location>
# ln -sf fl2mqtt fl2ltm

mwp automatically recognises fl2ltm and uses it in preference to the older tools.

Other changes:

  • Improve generation of nav_mode
  • Use BBL craft name for mqtt / ltm modes
  • Improve support of ancient log versions
  • Support BBL files where the number of BBL columns varies between flight indices (BBL originally recorded to EEPROM).
  • Minor cleanups

Support all inav WP types for mqtt generation

24 Feb 14:49
Compare
Choose a tag to compare
  • Support all inav WP types (including those not fully supported by BulletGCSS)
  • Generate current WP no data when a mission file is provided
  • Fully static binaries on all platforms

Misc fixes

21 Feb 21:08
Compare
Choose a tag to compare

A few tidy ups:

  • fix validity of "not-last" BBL entries
  • enable dump again in fl2mqtt
  • work around BulletGCSS last line LF (or not) behaviour

Note: binary archives regenerated 2021-02-22 with Go 1.16 (no code changes)

fl2mqtt : Generate BulletGCSS log files

21 Feb 11:27
Compare
Choose a tag to compare

fl2mqtt now generate BulletGCSS log files with the --logfile parameter. This allows the replay of blackbox and OpenTX logs via the BulletGCSS web UI without needing a MQTT broker.

e,g for the Narita sample (online every 2 hours from 00:00 UTC via broker.emqx.io - org/mwptools/mqtt/otxplayer) as a BulletGCCS log file:

# one second updates, jtest.csv is an OpenTX log file
fl2mqtt --logfile /tmp/test.txt  --mission narita.mission jtest.csv
# ten second updates, jtest.csv is an OpenTX log file
fl2mqtt --logfile /tmp/test10.txt  --interval 10000 --mission narita.mission jtest.csv

The logs (/tmp/test.txt, /tmp/test10.txt) can be replayed from the BulletGCSS UI log replayer.

Honour interval parameter for MQTT generation

16 Feb 16:02
Compare
Choose a tag to compare
  • fl2mqtt did not honour the --interval parameter when using OpenTX logs. This is now fixed
  • fl2mqtt correct hdr (home direction) parameter.

Add bulletgcss mqtt protocol v2

10 Feb 15:42
Compare
Choose a tag to compare

This release updates fl2mqtt to support the BulletGCSS MQTT protocol v2.

  • Selection of BulletGCSS protocol version is a fl2mqtt run-time option, defaults to 2.

Improve mqtt options

04 Feb 18:07
Compare
Choose a tag to compare
  • Rationalise MQTT options / URIs
  • Don't validate hostname for provided certificates
  • Update documentation

Another day, another build

29 Jan 14:13
Compare
Choose a tag to compare
  • Revert / fix the 0.8.8 fl2mqtt attitude scaling

A complementary fix has been made to mwp, so attitude should be consistent between flt2mqtt, mwp, the BulletGCSS air unit and web application.

Unify mqtt definitions

28 Jan 18:45
Compare
Choose a tag to compare
  • Unify mqtt specification across fl2mqtt and mwp
  • Both fl2mqtt and mwp mqtt replay use a MQTT URI
  -broker string
    	Mqtt URI (mqtt://[user[:pass]@]broker[:port]/topic[?cafile=file]
  • Fix roll, pitch scaling for fl2mqtt