paparazzi / pprzlink

Message and communication library for the Paparazzi UAV system
Other
24 stars 55 forks source link

Export pprz messages into OpenDDS format #69

Open podhrmic opened 6 years ago

podhrmic commented 6 years ago

OpenDDS is an open source implementation of Publisher-Subscriber communication service (more info here http://opendds.org/).

This PR adds an option to generate OpenDDS compatible IDL format from messages.xml.

More information and an example of OpenDDS<-->Pprzlink communication will follow, but I am seeking some early feedback on the Python implementation. Plus this works as is.

gautierhattenberger commented 6 years ago

as a side note, where and how are you using this OpenDDS ?

podhrmic commented 6 years ago

I have to interface paparazzi with a system that uses OpenDDS - imagine a mission computer . The details are still in the working, but I wanted to share what I have so far.

flixr commented 6 years ago

Without looking at the details, this is not really OpenDDS specific, right? It should work for any DDS compliant implementation... so this should probably be reflected in the naming i.e. PROTOCOL_DDS vs PROTOCOL_OPENDDS.

Also is it a spec on the DDS or RTPS (RealTimePublishSubscribe) level?

podhrmic commented 6 years ago

Good point - any system that understands IDL format can in theory use it.

From FAQ:

Starting with version 3.1, OpenDDS contains an implementation of the RTPS (Real Time Publish-Subscribe) specification required for interoperability.

Does that answer your question?

podhrmic commented 6 years ago

For bookkeeping purposes, I am describing here what needs to happen to make this actually useful.

Generated code

Topics

The suggested topics follow the message class names:

Application code

In order to make a useful application (such as OpenDDs - Pprzlink translator), the following is needed (for a simple "link" application):

OpenUAS commented 3 years ago

Integrating DDS would be welcomed, maybe I shoud add it to the "list" ;)