Releases: stronnag/bbl2kml
Standards are for wimps, not web giants
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
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
- 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
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
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
fl2mqtt
did not honour the--interval
parameter when using OpenTX logs. This is now fixedfl2mqtt
correcthdr
(home direction) parameter.
Add bulletgcss mqtt protocol v2
This release updates fl2mqtt
to support the BulletGCSS MQTT protocol v2.
- Selection of BulletGCSS protocol version is a
fl2mqtt
run-time option, defaults to2
.
Improve mqtt options
- Rationalise MQTT options / URIs
- Don't validate hostname for provided certificates
- Update documentation
Another day, another build
- 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
- 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