Skip to content

Support plot juggler master version (SDK 0.40.0) - #29

Open
amilcarlucas wants to merge 2 commits into
ArduPilot:mainfrom
amilcarlucas:support_pj4.1
Open

amilcarlucas wants to merge 2 commits into
ArduPilot:mainfrom
amilcarlucas:support_pj4.1

Conversation

@amilcarlucas

Copy link
Copy Markdown

No description provided.

Update the plugin to version 0.2.0 for PlotJuggler 4.1 and
plotjuggler_sdk 0.40.0 using the C ABI, C++20, and Qt 6.

- Publish timestamped topic records through the SDK and reset state
  between imports.
- Preserve parameter snapshots, message logs, GPS synchronization,
  optional labels, and XML descriptions as dataset metadata.
- Handle repeated parameters, snapshot-only logs, cancellation, and
  file and timestamp errors.
- Retain catkin and ament integration and document Conan, ROS, Docker,
  installation, and testing workflows.
- Prepare and cache SDK packages once per platform, share them across
  CI variants, and test both built and installed plugins.
- Expand smoke tests for timestamps, MSG layouts, imports, parameters,
  snapshots, configuration, and failures.

Validation: actionlint, four Linux label configurations, offline Conan
package restores, installed-plugin tests, and catkin/ament CMake builds.
Windows, macOS, and the full Docker image were not tested.

BREAKING CHANGE: PlotJuggler 3 and Qt 5 binaries are incompatible.
The message timeline is now /2. Message Timeline/index, and field
descriptions are available in dataset metadata instead of tooltips.

Signed-off-by: Dr.-Ing. Amilcar do Carmo Lucas <amilcar.lucas@iav.de>
Replace the XML description loader with the published Copter and Plane
JSON metadata, embedded at build time for offline use.

- Select descriptions using the log's firmware banner and fall back to
  the other vehicle's metadata when fields are missing.
- Retain older-only field descriptions and enum entries in legacy JSON.
- Validate and compact metadata during header generation, preserving
  UTF-8 and MSVC string-literal limits.
- Rebuild the generated header when metadata changes and document how
  to refresh the snapshots.
- Test vehicle selection, legacy fallbacks, malformed metadata, and
  UTF-8 chunk boundaries.

Validated all four Linux label configurations, installed plugins, and
catkin/ament builds. Native Windows and macOS builds were not run.

Signed-off-by: Dr.-Ing. Amilcar do Carmo Lucas <amilcar.lucas@iav.de>
@amilcarlucas amilcarlucas changed the title Support plot juggler 4.1+ Support plot juggler master version (SDK 0.40.0) Nov 13, 2026
@amilcarlucas amilcarlucas added documentation Improvements or additions to documentation enhancement New feature or request help wanted Extra attention is needed labels Nov 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request help wanted Extra attention is needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant