Skip to content

Latest commit

 

History

History
97 lines (66 loc) · 2.59 KB

README.md

File metadata and controls

97 lines (66 loc) · 2.59 KB

RTI UMAA Python SDK

A Python framework for building UMAA-compliant unmanned maritime systems on RTI Connext DDS.

Full documentation — walkthroughs, guides, and API reference.


Quick Start

1. Get a License

If you don't have an RTI Connext license, request a free evaluation at https://www.rti.com/free-trial — RTI will auto-respond to your email with a license file. Then point Connext to it:

export RTI_LICENSE_FILE=/path/to/rti_license.dat

2. Install

cd python/
pip install -e .

Requires Python ≥ 3.8.

Verified compatibility: Connext 7.3.0 and 7.7.0 have passed the full Python test suite in the repository Docker environments. See the Docker validation guide for image definitions and the complete test matrix.

3. Run the Autopilot Example

cd examples/autopilot/
./start_autopilot.sh

4. Inspect QoS or Run Discovery Components

Inspect the repository participant QoS profile:

python tools/inspect_qos.py

The discovery-only USV reference components create their declared UMAA DDS endpoints without publishing data or processing commands:

PYTHONPATH=. python -m examples.reference_components.run_component weather

See reference_components/README.md for the available component names.

5. Publish a Report (5 lines)

import asyncio
from rtiumaapy import DDSContext, set_timestamp
from rtiumaapy.services.so import HealthReportProvider
from rtiumaapy.datamodel.HealthReportType import (
    UMAA_SO_HealthReport_HealthReportType as HealthReportType,
)

async def main():

    ctx = DDSContext(domain_id=0)              # 1. Create a DDS context
    provider = HealthReportProvider(ctx)       # 2. Create a pre-wired provider
    sample = HealthReportType(source=ctx.source_id)  # 3. Build a sample
    set_timestamp(sample)                      # 4. Stamp it
    provider.write(sample)                     # 5. Publish

    await ctx.run_until_shutdown()

asyncio.run(main())

Contact

For questions or issues, email services_community@rti.com.

Acknowledgments

Thanks to Devon at Penn State ARL for early UMAA RTI Python explorations that helped inform this project.
The JHU APL and Penn State ARL C++ implementations from the UMAA SDK were used as reference throughout development.

License

See LICENSE for details.