Update: Ean 2019-01-20

Last update, I explained that I was experiencing a segmentation fault with my previous method trying to run our logic controller and publish mocap messages. This week I wanted to create my own plugin for our logic, which will work with the other plugins used by RotorS (i.e. wind disturbance and sensors).

I used the online Gazebo plugin tutorials and the plugins in the RotorS package as references to create my plugin, however running it created a segmentation fault as I attempted to access the model data from Gazebo. I then looked to manipulate the main plugin that is ran whenever Gazebo is started with the RotorS package. I was able to create telemetry messages and mocap messages that come from the the position data of an object in Gazebo.

ROS topic list that now includes telemetry and mocap.
Values from the position topic from Gazebo (bottom) and the mocap output (Top).

I am still having issues calling the function from our QuadcopterLogic file. I have defined it as a shared ptr variable and use the pointer (->) to call upon functions, but I am facing segmentation faults.

Over the next few days, I will work to call upon the QuadcopterLogic function without errors. I will use Quadcopter_T and Gazebo plugins to give me an an idea on how to mitigate this issue. Once I fix the error, I will work on the radio commands portion, which I believe will be a similar function to  SimVehicle in our main simulator file.