Jump to content
Ultimaker Community of 3D Printing Experts
Sign in to follow this  
Nicolinux

Enhanced STL Format

Recommended Posts

Now that YouMagine sets out to be more than just a site where .stl files for printing are shared, I thought about a cool new feature that might provide some value to it.

Add metadata to .stl files with information about critical printing parameters.

Most printable objects on Thingiverse (and now YouMagine) are made by people who have already printed their creations - maybe several times. So these people know best how their objects should be printed. Wouldn't it be cool to download a .stl file, load it into Cura and have it automatically pull in values like:

 

  • layer height
  • shell thickness
  • top/bottom thickness
  • fill density
  • print speed
  • temperature
  • cooling on/off

Sure there are differences between printers, but many values apply and when someone prints an object for the first time (without knowing about its exact specifics), any clue or starting point is valuable.

Technically this could be implemented without changing the .stl format. Binary .stl files have a header of 80 characters. This place can be used to encode printing values. Sure this encoding needs to be consistent, but if this "standard" catches on, it can have a "soft" deployment without impairing other slicers.

Here is an example. Say I want to encode the following values:

 

  • layer height: 0.2
  • shell thickness: 0.8
  • top/bottom thickness: 0.6
  • fill density: 20
  • print speed: 75
  • temperature: 225
  • cooling on/off: 1

The metadata could look like:

 


<:estelle:>lh:0.2;st:0.8;tbt:0.6;fd:20;ps:75;te:225;co:1<:estelle:>

"estelle" stand for enhanced .stl and is a female name just be fancy :)

So all YouMagine and Cura had to do is to parse .stl files and interpret this values.

Another, maybe cooler way would be to encode entire profiles in these 80 chars. I know that Cura does this for .gcode files already. If there are not enough characters to encode the entire profile, maybe provide a service where Cura profiles can be shared (another YouMagine only feature) and where each profile would have a short and unique id that is written to .stl files. This way Cura could lookup the id and pull in the entire profile.

However it is done technically, the benefit of printing parameters in .stl files is pretty big. How many times did I download an object, printed it just to see that I have chosen the wrong parameters. Then I start to hunt for other "made" objects and see if someone was kind enough to write down his printing parameters.

What dou you think?

 

Share this post


Link to post
Share on other sites

Cura and YouMagine already support the AMF format. And I am planning to add features like this to the AMF saving.

However, this will violate the AMF standard, as they do not allow custom tags or meta-data.

(In theory you could also put binary data at the end of a binary STL file, but those are all ugly hacks which I would not recommend)

 

Share this post


Link to post
Share on other sites

New standards are not adopted if they are not somehow enforced.

The site could suggest to add both STL and AMF files. If only STL files are uploaded, the site could automatically generate AMF files, so that these are also available for download.

The visitors would see AMF files and start to use them too!

Regarding the lack of print settings, a text file with the design's information/instructions could be automatically added to the zip file for downlad (or even also to the documents list).

 

Share this post


Link to post
Share on other sites

We're already working towards that. Cura's new YouMagine upload does upload STL files, but if you have a dual-color model loaded it will upload an AMF file of that instead.

YouMagine also converts ascii STL files to binary STL to improve compatibility with all software and decrease download size.

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Our picks

    • Taking Advantage of DfAM
      This is a statement that’s often made about AM/3DP. I'll focus on the way DfAM can take advantage of some of the unique capabilities that AM and 3DP have to offer. I personally think that the use of AM/3DP for light-weighting is one of it’s most exciting possibilities and one that could play a key part in the sustainability of design and manufacturing in the future.
        • Like
      • 3 replies
×

Important Information

Welcome to the Ultimaker Community of 3D printing experts. Visit the following links to read more about our Terms of Use or our Privacy Policy. Thank you!