ros-industrial / motoman

ROS-Industrial Motoman support (http://wiki.ros.org/motoman)
146 stars 193 forks source link

motoman_driver MotoROS copyright #352

Closed lights0123 closed 4 years ago

lights0123 commented 4 years ago

The ROS packages in this repository are licensed under the 3-BSD license, all having a proper BSD header in every source file. However, the source files for the MotoROS code for MotoPlus, well, don't. Although they say "Software License Agreement (BSD License)", the actual license text is curiously different:

https://github.com/ros-industrial/motoman/blob/7fdb8b8a0e77166c420634ee42827361201c029c/motoman_driver/MotoPlus/mpMain.c#L14-L39

Specifically, the correct 3-BSD header, compared to the one in the source files, is


- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
+ Redistribution and use in binary form, with or without modification,
+ is permitted provided that the following conditions are met:

It is pretty clear that someone intentionally removed the "source and" mention. Googling that string leads to many instances of proprietary licenses, but nothing looking like 3-BSD. Additionally, the following clause was removed:


- * Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.

What is the proper license for these files? I have some modifications planned for the MotoROS code, but am hesitant to do so if a dubious license is present. I'd like one of these to happen:

I am aware that the actual MotoPlus SDK is proprietary—I'm just wondering about the source files present in this repository.

gavanderhoorn commented 4 years ago

A nuance/clarification here: this is not about MotoPlus itself (a Yaskawa product), but about MotoROS. The latter has the former as a dependency, but they are not the same thing. Nor do they fall under the same licenses.

lights0123 commented 4 years ago

That's true—I was referring to the MotoROS code as the code used with MotoPlus, not that it is MotoPlus.

ted-miller commented 4 years ago

It took some digging, but I found where this originated. It comes from a discussion between myself and shaun-edwards back in 2012.

The MotoROS project includes some compiled libraries (ParameterExtraction.*Lib) to hide proprietary code. These libraries will not be released as open source. Thus, the "source" text was removed.

Any additional restrictions are laid out in the MotoPlus SDK license agreement. Beyond that, you're free to do whatever you want with the code that is publicly posted. This code is frequently used by other parties as a starting template for their own proprietary implementations.

lights0123 commented 4 years ago

Ok, so that license applies mainly to the final binaries, as we can't redistribute the source of the proprietary libraries.