I have a basic question regarding gazebo plugins. The gazebo tutorial 'Moving the Robot' available at Link refers to the differential drive plugin coded as shown in the picture.

enter image description here

Where can I find more information about these plugins, more specifically:

a) Where can I find the list of all plugins?

b) For a given plugin, where can I find the details of the plugin such as filename to use (e.g: filename="gz-sim-diff-drive-system"), name of the plugin (e.g: name="gz::sim::systems::DiffDrive">) and the other parameters of the plugin (left_joint, right_joint,wheel_separation etc.)


  • $\begingroup$ If you want to show code, you should not paste a screenshot, but rathert copy paste the actual text, select it, and format it as code (i.e. press Ctrl+K or click the icon). $\endgroup$
    – JRTG
    Commented Sep 3, 2023 at 9:22

1 Answer 1


They are in the Gazebo Sim github repository:

  • System plugins can be found here,
  • Gui plugins are here,
  • Example worlds using these plugins are here.

Documentation of each plugin is written in the header files, e.g. here.

The 'name' of a plugin is in the code, typically at the end. E.g. here.

The 'file name' is the name of the compiled shared library. E.g. gz-sim-diff-drive-system for libgz-sim-diff-drive-system.so.

I was expecting to find the name for each system in the respective CMakeLists.txt file, e.g. here but it does not fully correspond. Based on this comment I conclude that the CMakeLists.txt name always gets a prefix gz-sim- and a postfix -system.

Gui plugins on the other hand do seem to get the name from the CMakeLists.txt file, without suffix or postfix.

There is an open issue about a default repository for community-written plugins, but no concrete suggestions yet. So I currently just put my plugins in a github repository (for now only a 'waste bin' plugin).

  • $\begingroup$ Thanks @JRTG. This is very useful. $\endgroup$ Commented Sep 3, 2023 at 10:18
  • $\begingroup$ +1 for JRTG's answer. I cannot post a comment because I'm new to the platform but really appreciate the answer, which should be included in the official Gazebo documentation in my opinion. $\endgroup$ Commented Oct 28, 2023 at 3:19
  • $\begingroup$ Please use the upvote button to support answers. It's more visible and will reward the poster with reputation. $\endgroup$
    – Tully
    Commented Oct 28, 2023 at 6:54
  • $\begingroup$ Please open a pull request to suggest adding it to the documentation where you think it would be most helpful. $\endgroup$
    – Tully
    Commented Oct 28, 2023 at 6:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.