MATLAB Answers

rosgenmsg error in line333 MATLAB2020b

17 views (last 30 days)
Holden Dwight
Holden Dwight on 29 Dec 2020
Answered: Cam Salzberger on 4 Jan 2021
I copied the packages used in ROS to Windows, and wanted to use rosgenmsg to create custom defined messages. The commands:
>> folderpath='D:\matlab2020b\S_Ch\msgs\control_msgs';
>> rosgenmsg(folderpath)
But it has errors:
error in rosgenmsg (line 333)
No packages with '.msg' files found under D:\matlab2020b\S_Ch\msgs\control_msgs. Each message package directory must
contain a directory named 'msg' that then contains '.msg' files.
Howerer, there is a folder named ‘msg’ in it which contains some ‘.msg’ files.
  1 Comment
Walter Roberson
Walter Roberson on 29 Dec 2020
Your .msg files appear to be inside a MSG directory inside of control_msgs_msg . The .msg files need to be directly in msg directory.

Sign in to comment.

Answers (1)

Cam Salzberger
Cam Salzberger on 4 Jan 2021
Hello Holden,
You are providing the "package" folder to rosgenmsg, when instead it requires the parent folder of that. This is because there are commonly multiple message packages, each with their own package folder, inside a single location. In this case, you should be providing the path to the "msgs" folder to rosgenmsg.
See here for more details on the expected folder structure.
-Cam

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!