Update: Ean 2019-02-02

Last update, I showed that I was able to create telemetry messages and mocap messages that come from the the position data of an object in Gazebo. However, I was having issues calling upon QuadcopterLogic functions, which would immediately cause a segmentation fault when starting the simulation.

I was able to correct the pointer issue with QuadcopterLogic and the plugin no longer crashes when started. When started the node graph clearly shows that the telemetry and mocap messages are being published by Gazebo, and the radio messages that are published by quad_mocap_rates_control is subscribed to by Gazebo.

Rqt graph when running the RotorS plugin

Unfortunately, once I hit start on the keyboard controller, an error occurred and caused a segmentation fault. Using the gdb debugger, I was able to find the function where the fault was occurring. I stepped into the and found that the shared pointer I am using for radio messages causes the error.

Shared pointer for listening to radio commands

I copied the style of the shared pointer from our ROS simulation file, so I am trying to recreate the error in our ROS simulator to give me an idea of how to fix the issue. Once this error is resolved, the simulator should work and I can begin to work on creating sensor models in Gazebo.