Micro XRCE-DDS Agent

Micro XRCE-DDS Agent

eProsima Publisher

Contact us about Snaps and IoT ›

Install latest/stable of Micro XRCE-DDS Agent

Ubuntu 16.04 or later?

Make sure snap support is enabled in your Desktop store.


Install using the command line

sudo snap install micro-xrce-dds-agent

Don't have snapd? Get set up for snaps.

Channel Version Published

Bridge between Micro XRCE-DDS clients and DDS

Micro XRCE-DDS Agents receive messages containing Operations from Clients. Agents keep track of the Clients and the Micro XRCE-DDS Entities they create. The Agent uses the Entities to interact with DDS Global Data Space on behalf of the Client.

The communication between a Micro XRCE-DDS Client and a Micro XRCE-DDS Agent supports three kind transport: UDP, TCP, or SerialPort. While running Micro XRCE-DDS Agent will attend any received request from your Micro XRCE-DDS Clients. Micro XRCE-DDS Agent answers back with the result of a request each time a request is attended.

The Agent supports being run by the user like this:

 $ micro-xrce-dds-agent --help

In addition, the Agent supports running as a service that can be enabled with:

 $ snap set micro-xrce-dds-agent daemon=true

If the service is enabled, by default it uses the udp4 transport on port 8888. The following parameters can be changed (these are specific to the service, the micro-xrce-dds-agent command simply takes command-line arguments, but the capabilities are the same):

  • transport. Supported transports are udp4, udp6, tcp4, tcp6, serial, and pseudoterminal. Default is udp4. Change with:

     $ snap set micro-xrce-dds-agent transport="new transport"
    
    
  • middleware. Supported kinds of middleware are ced, rtps, and dds. Default is dds. Change with:

     $ snap set micro-xrce-dds-agent middleware="new middleware"
    
    
  • verbosity. Supported verbosity levels are 0-6, defaulting to 4. Change with:

     $ snap set micro-xrce-dds-agent verbosity="selected verbosity"
    
    
  • discovery. Enable or disable the discovery server. Defaults to "false". Change with:

     $ snap set micro-xrce-dds-agent discovery="true or false"
    
    
  • discovery-port. Port on which the discovery server (see above) listens. Defaults to 7400. Change with:

     $ snap set micro-xrce-dds-agent discovery-port="selected port"
    
    
  • p2p-port. Port to use for the P2P profile. Change with:

     $ snap set micro-xrce-dds-agent p2p-port="selected port"
    
    
  • port. Port on which the agent listens. Only applicable to one of the UDP or TCP transports (see above). Defaults to 8888. Change with:

     $ snap set micro-xrce-dds-agent port="selected port"
    
    
  • baudrate. Baud rate to use when accessing serial ports. Only applicable when using the serial or pseudoterminal transport. Defaults to 115200. Change with:

     $ snap set micro-xrce-dds-agent baudrate="baud rate"
    
    
  • device. The serial device to use. Only applicable when using the serial or pseudoterminal transport. Change with:

     $ snap set micro-xrce-dds-agent device="device path"
    
    

    When using the snap with a serial device, some steps need to be taken in order to establish a successful connection:

    • Refresh your local installation of the snap core package:

       $ sudo snap refresh core --edge
      
      
    • Enable the hotplug feature and restart the snapd daemon:

       $ sudo snap set core experimental.hotplug=true
       $ sudo systemctl restart snapd
      
      
    • After plugging the microcontroller to the serial port, execute the snap interface serial-port command. You should see something like this:

         name:    serial-port
         summary: allows accessing a specific serial port
         plugs:
           - micro-xrce-dds-agent
         slots:
         - snapd:cp2102cp2109uartbrid (allows accessing a specific serial port)
      
      
    • Connect your snap image to the desired serial port (replace accordingly):

       $ snap connect micro-xrce-dds-agent:serial-port snapd:cp2102cp2109uartbrid
      
      

    After this, you can execute your snap as usual, using micro-xrce-dds-agent serial -d <serial-dev>.

Details for Micro XRCE-DDS Agent

License
  • Apache-2.0

Last updated
  • 13 September 2021 - latest/stable
  • 10 July 2023 - latest/edge

Share this snap

Generate an embeddable card to be shared on external websites.


Install Micro XRCE-DDS Agent on your Linux distribution

Choose your Linux distribution to get detailed installation instructions. If yours is not shown, get more details on the installing snapd documentation.