Robotic-Decision-Making-Lab / blue

ROS 2 platform for underwater robotics research and development.
https://robotic-decision-making-lab.github.io/blue/
MIT License
44 stars 10 forks source link

[FEATURE]: Add support to load the system as a BlueOS extension #30

Closed evan-palmer closed 1 year ago

evan-palmer commented 1 year ago

Feature Type

Adding new functionality to the BlueROV2 driver

Problem Description

Blue Robotics, the company that builds the BlueROV2, has recently started to integrate support for custom extensions which are an entrypoint for custom software. This entrypoint would be an excellent location to integrate support for the Blue project so that future users can easily integrate this into their own work.

Feature Description

Update the Dockerfile to include an "extension" stage which includes all required labels described in the Blue Robotics Extensions documentation. To support launching the interface, it may also be useful to incorporate a web-based user interface to support launching the driver with custom configurations.

Alternative Solutions

Another alternative could be to modify the stage to include a hard-coded entrypoint which launches the driver. This may be fine for initial testing of the driver; however, for a full public release, a user interface should be defined.

Additional Context

Here is an example extension which can be used as a reference.

evan-palmer commented 1 year ago

After working with the BlueOS interface for a while now, I am not fully convinced that making the user interface to Blue accessible only through a BlueOS extension is the right way to go about things. Exposing the interface only through BlueOS limits the features that can be implemented and also forces users into a dependency that they may not want