MATLAB: How to change the ROS custom message after it’s generated.

Robotics System Toolboxrosros custom messageros message

Hi, mathworks team.
I'm using ROS Toolbox and I have a question.
I created some custom messages refer to the below document.
I successfully made the custom messages and was able to use them with ROS Toolbox.
But, here's the problems.
When I want to modify my created custom message package (e.g. Want to add some variables in that message), I'm not sure what I need to do.
Do I have to just follow the same steps that I created the custom msg pkg? ( rosgenmsg() -> addpath & savepath -> restart MATLAB / this doesn't work well for me… )
And also I wonder how can I delete the generated files clearly to get back as before I create them.
Thank you !

Best Answer

Hello Jaehyeon,
The ROS custom messages supported by MATLAB are designed to be overwritten. So if you have gone through all of the usual steps to generate the messages (rosgenmsg, update Java class path, update MATLAB path), you can simply change your message definition files and run rosgenmsg and restart again. Since you are updating everything in the same location, the Java class path and MATLAB path should still point to the correct folders. The restart is necessary to get the new Java files (and it also kicks off a rehash for the MATLAB files).
If you want to remove all custom messages, you should be able to effectively make them unusable to MATLAB by removing the Java class path and MATLAB path that you added previously. You can also delete the generated folder if you want.
-Cam
Related Question