Open source for 3D models  

Page 1 / 2
  RSS
erik.martino
(@erik-martino)
New Member

Prusa printable parts are published as STL and GCODE. See https://www.prusa3d.com/prusa-i3-printable-parts/

But STL and 3MF files are not really source files, it is generated on the basis of CAD models or similar. Could you provide insight into how they are made? You could argue that the proper thing to do is to release the original models.

Best Answer by Karl Herbert:

@erik-martino

Due to the large number of CAD systems, it is common to export step files because this interface is available in most CAD systems and can also be read and edited. If you want the CAD source file you have to ask the author.

This topic was modified 4 months ago 2 times by erik.martino
Posted : 10/06/2020 9:41 am
Bodo liked
bobstro
(@bobstro)
Illustrious Member

Prusa also releases source files in the form of .scad files which are produced using the OpenSCAD open source software. In recent years, part complexity has required a move to more flexible software, but they're still releasing designs in a common format that can be used by many design programs. STEP I think. 

My notes and disclaimers on 3D printing and miscellaneous other tech projects
He is intelligent, but not experienced. His pattern indicates two dimensional thinking. -- Spock in Star Trek: The Wrath of Khan...
Posted : 10/06/2020 1:33 pm
erik.martino
(@erik-martino)
New Member

On the download page https://www.prusa3d.com/prusa-i3-printable-parts/ , it is stated that the STL and GCODE files are GPLv3.

According to the section https://www.gnu.org/licenses/gpl-faq.html#GPLOtherThanSoftware it should clearly define what constitute as source. It defines source as "preferred form of the work for making changes in it.". I cannot see that STL or GCODE can be that, and there is no referral to STEP files.

This is why I asked about how these files were actually made.

This post was modified 4 months ago by erik.martino
Posted : 12/06/2020 12:03 pm
bobstro
(@bobstro)
Illustrious Member

I'm not sure what your intent is. The source files for Prusa i3 printer parts can be found on their GitHub site in STEP, SCAD and STL format. Mini parts can be found here in STEP and STL format. Are you after something else?

My notes and disclaimers on 3D printing and miscellaneous other tech projects
He is intelligent, but not experienced. His pattern indicates two dimensional thinking. -- Spock in Star Trek: The Wrath of Khan...
Posted : 12/06/2020 4:40 pm
nikolai.r liked
Karl Herbert
(@karl-herbert)
Famed Member

@erik-martino

Due to the large number of CAD systems, it is common to export step files because this interface is available in most CAD systems and can also be read and edited. If you want the CAD source file you have to ask the author.

Statt zu klagen, dass wir nicht alles haben, was wir wollen, sollten wir lieber dankbar sein, dass wir nicht alles bekommen, was wir verdienen....
Posted : 12/06/2020 5:09 pm
Bodo
 bodo
(@bodo)
Estimable Member
Posted by: @erik-martino

Prusa printable parts are published as STL and GCODE. See https://www.prusa3d.com/prusa-i3-printable-parts/

But STL and 3MF files are not really source files, it is generated on the basis of CAD models or similar. Could you provide insight into how they are made? You could argue that the proper thing to do is to release the original models.

The mechanical design of Prusa printers are not open source in the sense that the source is published. Not having the native CAD files is one aspect of that, but most of the engineering data is not published, and never has been as far as I know. 

To me, open source means that you have everything available to (modify and) build -based on the latest version- on your own.

Posted : 04/08/2020 10:33 am
Karl Herbert
(@karl-herbert)
Famed Member

@bodo

As far as I know, the Prusa printers were designed with SCAD at the beginning. SCAD cannot export STEP files, for example. For this reason STL data is provided. STL data can be converted to STEP in FreeCAD and other systems and thus be processed in many systems. As far as I know SCAD is not so common here in the forum.
On grabcad.com for example you can find some replicas of various Prusa printers:

https://grabcad.com/library/prusa-i3-mk3-mmu-2-0-solidworks-1

https://grabcad.com/library/prusa-i3-mk3s-mmu2s-solidworks-assembly-1

https://grabcad.com/library/prusa-i3-mk3-r3-1

https://grabcad.com/library/oryginal-prusa-mini-assembly-1

https://grabcad.com/library/prusa-i3-mk2-2

https://grabcad.com/library/original-prusa-i3-mk2-printer-1

 

Statt zu klagen, dass wir nicht alles haben, was wir wollen, sollten wir lieber dankbar sein, dass wir nicht alles bekommen, was wir verdienen....
Posted : 04/08/2020 1:07 pm
Bodo
 bodo
(@bodo)
Estimable Member

Thank you for the links, @karl-herbert. The openSCAD files on GitHub are native, and thus a good part of the source. With native 3d files, others can see how the geometry has been developed, and which intention has been followed (the scope is dependent on the capabilities of the chosen CAD system).

Looking further at PR's Github repos, some components of the MINI -as mentioned by @bobstro- have been published in STL and STEP, but not in native format (which is on P/R side allegedly Autodesk Inventor, or some application that creates Inventor supported files). To come back to the original post from @erik-martino, STL/3mf -and I include STEP to this- are not source files. While your tip to use STEP files is very valuable for somebody who wants to remove or add material from a 3d component, STEP is not enough to cover community development.

Open Source means that the community doesn't have to reverse-engineer anything that others have engineered already.

Posted : 05/08/2020 10:34 am
Karl Herbert
(@karl-herbert)
Famed Member

@bodo

I have been working with CAD systems for a very long time and release the source data in the rarest cases. In the field of manufacturing mostly drawings and step data, in the field of 3D printing STL data. If we work for a customer, he of course receives the source data. Sometimes I make the data available in a private area, if requested.
In this regard you can only contact Prusa to get the source data. However, I don't believe that these will be published.
You can already work quite well with step data. I have redesigned the complete printer and adapted it to my needs.
Open Source seems to be a very flexible term in this respect.
I make the best out of what is available, even if it is a bit more cumbersome.

 

Statt zu klagen, dass wir nicht alles haben, was wir wollen, sollten wir lieber dankbar sein, dass wir nicht alles bekommen, was wir verdienen....
Posted : 05/08/2020 2:42 pm
nikolai.r
(@nikolai-r)
Noble Member

@bodo

Have you tried to contact PR/Support to get this source files? I've a feeling that there are some license reasons why they're not publishing the other files. So far PR published everything if they used open source software like kicad or openscad for creation.

Often linked posts:
Going small with MMU2
Real Multi Material
My prints on Instagram...
Posted : 05/08/2020 7:10 pm
Bodo
 bodo
(@bodo)
Estimable Member

@karl-herbert, having open-source for mechanical designs is pretty uncommon as compared to software design.

In the short history of Josef Prusa and Prusa Research we got the i3 that originates from the Prusa Mendel from the open-source RepRap project. These printers are licenced under the GPL. In my interpretation (IANAL), this means everything that is built on existing GPL'ed source is automatically licenced under the GPL, and the source code has to be distributed* with it. Prusa Research is committed to open-source, and is actively contributing to or sponsoring open-source projects, such as Marlin (firmware) and Slic3r, where the Prusa Slicer is forked from.

*looking into an Android phone's or internet router's documentation under licences; when GPL'd software is used in the product, they provide the licence text for these parts, and should publish their reused or modified source code.

Having only Github, Prusa Research shares the aforementioned openSCAD/STEP/STL files in a couple of repos as static files. This is also the place to file an issue should data be incomplete. Over these repos, there are a couple of requests to Prusa Research for native file formats, 3mf files and other hardware/mechanic specs or even the entire product definition. Josef Prusa promised in one of the issues to start adding missing native files and documentation to the repos, but so far this is to be seen.

My concern is that community-based development with knowledge sharing is not encouraged at all for the mechanical design.

@nikolai-r, I hope not, and I think Josef has already given a positive signal.

Posted : 06/08/2020 5:59 am
bobstro
(@bobstro)
Illustrious Member

Which 3D printer manufacturers or 3D printer designers are releasing the sorts of data files you're looking for? I've seen plenty releasing SCAD and STEP, but don't recall seeing releases of source files for proprietary, closed-source design tools.

My notes and disclaimers on 3D printing and miscellaneous other tech projects
He is intelligent, but not experienced. His pattern indicates two dimensional thinking. -- Spock in Star Trek: The Wrath of Khan...
Posted : 06/08/2020 6:23 am
jsw
 jsw
(@jsw)
Prominent Member

Design documents or not, I don't see anything in my current MK3S that could not be easily duplicated using standard machine tools.  The only really unique parts are things like the main frame, the squished frog piece and a few end pieces.  These are trivial to reverse-engineer.  Things like the rods, extrusions, etc. are widely available.

Clones of the I3 are (well, were, have not checked lately) selling on Ebay for around 1/3 of the price of the real one and if you read the Reprap forum there are people making clones, 'improved' I3s, various frankenprinters, etc.

Over the last few years I've seen or seen photos/videos of all kinds of I3 type printers with frames of such things as plywood, clear plastic, stock aluminum pieces, etc.

It's really the plastic pieces that are complex, and we have the ability to easily reproduce them, or modify and 'improve' them.

Posted : 06/08/2020 7:33 am
Bodo
 bodo
(@bodo)
Estimable Member

@bobstro, interesting thought; @nikolai-r also touched this. If I understood you right, you might mean created from proprietary, closed-source design tools. I don't know of any open-source licence that has limitations on tools to submit to the source. In the comments of the GPL, I have found this:

You can apply the GPL to any kind of work, as long as it is clear what constitutes the “source code” for the work. 
The GPL defines this as the preferred form of the work for making changes in it.

In case of the MINI-3d definitions, Inventor is Prusa Research's preferred form of work for making changes to it. On tool side, I don't know of any EULA that doesn't allow publishing/sharing the user-content in their proprietary format. That said, I've seen some repos on Github where individuals share Fusion360 files of their i3 modifications - which is also a proprietary format.

Though, to me, the file formats only play a secondary role; it's more the depth of the contents in the source that enables community development.

There's so many fixes and mods made by talented designers in the Prusa community that are lost scattered over different repositories, blogs, cloud drives -or in worst case on hard drives-, etc., with no means to be merged together into a community developed design. It would be nice to have mechanical design at the same collaboration level with the software design.

This post was modified 2 months ago by Bodo
Posted : 06/08/2020 6:17 pm
nikolai.r
(@nikolai-r)
Noble Member
Posted by: @bodo

On tool side, I don't know of any EULA that doesn't allow publishing/sharing the user-content in their proprietary format. That said, I've seen some repos on Github where individuals share Fusion360 files of their i3 modifications - which is also a proprietary format.

You can also find many copyright and trademark protected stuff on thingiverse. That doesn't mean it's legal 🙂

I think maybe the issue is not about sharing/publishing. The complexity starts if you want to apply different license to your work. For example if you have a single user license for ToolX which permits personal and commercial usage. Are you allowed to share your project folder under the GPL license? I can't answer that question but I think this is where lawyers have to figure it out first before you're doing this step as a company.

This post was modified 2 months ago by nikolai.r
Often linked posts:
Going small with MMU2
Real Multi Material
My prints on Instagram...
Posted : 06/08/2020 6:31 pm
bobstro
(@bobstro)
Illustrious Member
Posted by: @bodo

@bobstro, interesting thought; @nikolai-r also touched this. If I understood you right, you might mean created from proprietary, closed-source design tools.

I think we may be interpreting the terms of open source differently. In every open source project I've encountered, the modifiable code is distributed. Anybody can download that code and use the tools of their choosing to modify, improve and contribute to the project. However, nothing says that the original or any downstream developer can't be using proprietary tools (e.g. commercial IDEs like PyCharm). I know a lot of python developers use python. They contribute python source files. Nobody takes them for task for not including project files for the IDE.

In case of the MINI-3d definitions, Inventor is Prusa Research's preferred form of work for making changes to it. On tool side, I don't know of any EULA that doesn't allow publishing/sharing the user-content in their proprietary format. That said, I've seen some repos on Github where individuals share Fusion360 files of their i3 modifications - which is also a proprietary format.

One possible distinction between 3D printer parts and typical source code is the version history, which Git & GitHub track nicely. While I'm not aware of any design tool that would allow loading of different part iterations and recreating (reverse engineering or diffing) the design path between them, Prusa is providing STEP files for each iteration of the parts. I am not seeing any difference between this either from the specific perspective of part design, or the general intent of GPL licensing. It's nice that some projects include Fusion 360 source files, but that doesn't do much for anybody using other tools unless the STEP file is also included.

Though, to me, the file formats only play a secondary role; it's more the depth of the contents in the source that enables community development.

There's so many fixes and mods made by talented designers in the Prusa community that are lost scattered over different repositories, blogs, cloud drives -or in worst case on hard drives-, etc., with no means to be merged together into a community developed design. It would be nice to have mechanical design at the same collaboration level with the software design.

This is where I'm not understanding what you're after. I can load 2 different versions of a STEP file and (manually at least) compare them. I don't see what's "lost" in the process other than perhaps design notes and scratchpad scribbles. I don't have a keystroke-by-keystroke "undo" perhaps, but then I don't with contributed python code either. I can see the appeal, certainly, but I'm not aware of open source terms that require it any more than IDE project files. Prusa is certainly quite open with their software and code.

It would be awesome if they released more, but I wouldn't approach it from the perspective of accusing them of violating the terms of open source.

 

This post was modified 2 months ago 2 times by bobstro
My notes and disclaimers on 3D printing and miscellaneous other tech projects
He is intelligent, but not experienced. His pattern indicates two dimensional thinking. -- Spock in Star Trek: The Wrath of Khan...
Posted : 06/08/2020 6:51 pm
Bodo
 bodo
(@bodo)
Estimable Member
Posted by: @bobstro

It would be awesome if they released more, but I wouldn't approach it from the perspective of accusing them of violating the terms of open source.

As I mentioned, It would be nice to have mechanical design at the same collaboration level with the software design; though where I can't follow you is how they were accused of violating the terms of open source. Can you please elaborate?

This post was modified 2 months ago by Bodo
Posted : 06/08/2020 8:02 pm
Bodo
 bodo
(@bodo)
Estimable Member
Posted by: @nikolai-r
Posted by: @bodo

On tool side, I don't know of any EULA that doesn't allow publishing/sharing the user-content in their proprietary format. That said, I've seen some repos on Github where individuals share Fusion360 files of their i3 modifications - which is also a proprietary format.

You can also find many copyright and trademark protected stuff on thingiverse. That doesn't mean it's legal 🙂

I think maybe the issue is not about sharing/publishing. The complexity starts if you want to apply different license to your work. For example if you have a single user license for ToolX which permits personal and commercial usage. Are you allowed to share your project folder under the GPL license? I can't answer that question but I think this is where lawyers have to figure it out first before you're doing this step as a company.

@nikolai-r, I've given the Github reference in reply to the question of @bobstro; not to backup any thesis.

To clarify: on one hand, we have the licence for Prusa printers 3d work, which is open source; and on the other hand, we have the licence for a tool that creates or modifies this Prusa Printers 3d work; which may or may not be open-source.

Your question boils down to:
-does the project's (open source) licence restrict this?
-does the tool's licence restrict this?

I agree, the safe way is always to get a lawyer's advice. As said, I'm not a lawyer.
From a technical perspective, the open-source nature of such a project would not limit the proprietary tool owner's "pto" rights. You're also not licencing their proprietary file format, but only your content; I'm sure there's legal methods to distinguish the proprietary file format, as there are methods to distinguish parts of your project that have other licences, such as the representations of supplied parts or other integrated parts having a different licence.

I don't see why creating and publishing open content made with proprietary tools should be impossible; though modification contributions may be limited by community acceptance -but that's a different topic.

Posted : 06/08/2020 8:06 pm
bobstro
(@bobstro)
Illustrious Member
Posted by: @bodo

As I mentioned, It would be nice to have mechanical design at the same collaboration level with the software design; though where I can't follow you is how they were accused of violating the terms of open source. Can you please elaborate?

I was referring to these comments:

The mechanical design of Prusa printers are not open source in the sense that the source is published. Not having the native CAD files is one aspect of that, but most of the engineering data is not published, and never has been as far as I know. [...] 

Not sure what you mean by "engineering data" specifically, and what you consider lacking by release of STEP files versus... something else?

The mechanical design of Prusa printers are not open source in the sense that the source is published. Not having the native CAD files is one aspect of that, but most of the engineering data is not published, and never has been as far as I know. 

In my mind, the STEP file is much like a python file produced in a commercial IDE. I release the editable, viewable source (the .py file), but do not release the configuration and data files that may be produced by my IDE.

Perhaps "accusation" is a bit strong, but nonetheless, I wouldn't assert that they aren't releasing open source designs if asking for them to go above & beyond what is required to be licensed according to GPL or other open source licenses.

 

My notes and disclaimers on 3D printing and miscellaneous other tech projects
He is intelligent, but not experienced. His pattern indicates two dimensional thinking. -- Spock in Star Trek: The Wrath of Khan...
Posted : 06/08/2020 8:23 pm
Bodo
 bodo
(@bodo)
Estimable Member
Posted by: @bobstro
Posted by: @bodo

As I mentioned, It would be nice to have mechanical design at the same collaboration level with the software design; though where I can't follow you is how they were accused of violating the terms of open source. Can you please elaborate?

I was referring to these comments:

The mechanical design of Prusa printers are not open source in the sense that the source is published. Not having the native CAD files is one aspect of that, but most of the engineering data is not published, and never has been as far as I know. [...] 

Not sure what you mean by "engineering data" specifically, and what you consider lacking by release of STEP files versus... something else?

The mechanical design of Prusa printers are not open source in the sense that the source is published. Not having the native CAD files is one aspect of that, but most of the engineering data is not published, and never has been as far as I know. 

In my mind, the STEP file is much like a python file produced in a commercial IDE. I release the editable, viewable source (the .py file), but do not release the configuration and data files that may be produced by my IDE.

Perhaps "accusation" is a bit strong, but nonetheless, I wouldn't assert that they aren't releasing open source designs if asking for them to go above & beyond what is required to be licensed according to GPL or other open source licenses.

 

I understand, and I think we're pretty much on the same page. Let me clarify; Prusa has a marketing promise that goes as follows:

OPEN-SOURCE TECHNOLOGY AND WHY IT MATTERS

We wouldn’t exist without open-source. Prusa i3 3D printers were born from the idea of an open-source machine and we are still faithful to this ideology. Everything we do, everything we sell, is open-source. What does this mean? All source codes, printed parts, blueprints, circuit board designs… everything is freely available to anyone via GitHub. Because we strongly believe in the community and in sharing knowledge.

Published here: https://www.prusa3d.com/about-us/

This has made me aware that community development of mechanical design is almost not existing; not only in Prusa projects; but also elsewhere. If anyone can establish that, it would be Prusa with their openness for knowledge sharing and community development.

There must be many reasons that community development of mechanical design is lacking behind that of software design.

One reason is definitely the collaboration environment you mentioned already: Github is not ideal for mechanical development, and there is no public platform existing to have ideal mechanical design community collaboration. Without going into detail, all of these tools exist in the form of PIM, PDM or PLM systems in corporate environments. They do not only manage user rights, release levels and versioning, but also library parts and file associations for assemblies and 2d-drawings or even single geometric entities for inheriting or referencing.

Another reason is certainly the a) lack of a free professional CAD system that plays together with the aforementioned -but free- PIM/PLM/PDM, and b) lack of a free simple entry into CAD operation.With this in mind, and the awareness that these two points will not be solved in due time, I have asked for more engineering data. Even the i1 and the i2 are better documented in the RepRap community. Have a look at the heated bed https://reprap.org/wiki/Heated_Bed as an example.

Having changed from a more tinkerer-focused design to a more mass-manufacturable design, that sort of documentation has definitely evolved too; but I cannot find it anywhere. Assume, PR has changed a sensor on the Mini for a better one - I wouldn't know how and where they'd publish it. The list of engineering data can be as comprehensive as you like, including simulation data, test data, material definitions, surface definitions, ... everything a mechanical engineer uses to create product.

Mechanical design is a system, as much as Software is a system; though in m/d, just having single component data is insufficient for community development. You cannot possibly change two parts function w/o knowing the assembly context by -for example- the assembly tolerance calculation. Native 3d files for a professional CAD system shortens the modelling time to a fraction as compared to tinkering on STEP files. People who want to tinker may still do so with STL and STEP files.

To wrap this up:
-I don't want to STEP files replaced with native files; they should be available parallel to STEP and STL, as is already in the repos where the printer has been modeled with openSCAD.

-STEP is great to add and remove material for easy component modification; also a lot more people can open these files
-STL is great to just load a part into a slicer and print it
-Josef Prusa already promised to upload native Inventor files to the MINI repo
-I don't ask Prusa to invent a mechanical design collaboration platform, even though I think they would be capable by ability and visionariness
-I want to see sharing and collaboration for mechanical design too, and I believe that an easy first step within the boundaries of Github is to share more engineering data

Posted : 06/08/2020 9:50 pm
Page 1 / 2
Share:

Please Login or Register