Scad, the Customizer and customization of files

The Customizer is a very popular tool, with hundreds of customized models generated every day. At the same time, the Customizer hasn’t seen updates in a while, and the team has ideas for upgrading the tool to perform better. We would like to hear more from the community in order to get it right.

Given the content that exists today, we can see popular use cases include engraving tools and adding your name on objects.

I see the whole customization topic as having 3 pillars:

  1. Upgrade the existing scad Customizer: offer a best-in-class experience to designers and downloaders using customizable scad models.

How do you use the Thingiverse Customizer? What’s missing or frustrating from using the current version of the Customizer? what could we do better?

  1. Allow other customizable file types and apps.

The Customizer uses scad files, which are linked to a very specific way of creating objects with code. Are there other file customizable file types that you would like to host on Thingiverse and display in its own customizable tool? Maybe you are a developer with your own customizer that you would like to host (whether a “custom made” scad customizer, or some completely different file type, opensource or proprietary)?

  1. Enlarging the concept of customization to more objects on Thingiverse.

Since engraving your name on an scad Customizer object is a popular use case today, it would make sense to bring this concept to more Things, even if they are not scad files in the first place. for example, are there ways you wish you could customize stl files on Thingiverse today? If so, what are the use cases?

1 Like

I actually don’t use the customizer, I find that it’s easier to just upload the project to Tinkercad or whatever and change what I want there. Also it’s a bit hard to understand how to use it and I haven’t been able to find a good guide.

If you could allow stl files to be changed in the customizer I think that would be lovely.

1 Like

I’m still new to this so… I’m trying somethings right now if you have any advice let me know.

Can you share some examples of files you’ve edited in Tinkercad?

@thingiro Like I said (I mean no disrespect), Iḿ new would like some help

I’ve done some designs with OpenSCAD and i made an Instructables tutorial to explain the big lines of how to make modifications (i had the question in comments a few times).

However OpenSCAD is great in the sense that it is light and open source but its definitely not user-friendly for designers. For simple models its ok but for complex designs its terrible compared to classic parametric CAD software. Its like an app without GUI…

If Thingiverse were to rethink the concept of customizable it would be much better to make it based on classic CAD software with the capability to use explicit variables: Most CAD software offer the possibility to define a variable and use it in the quotations of your design. This option has always been around and it used all the time in professional contexts. It allows to define a small number of key parameters you can adjust to adapt your design. Prety much the definition of a customizer. However you need the same software to update the design. In a context of the CAD software are heavy and need fairly expensive licenses, OpenSCAD made sense.

However now there is a capable alternative: FreeCAD. It offers all the options of a conventional CAD environment including the definition of explicit parameters and its open source. If you manage to integrate it on an app on thingiverse it should be possible to use it to modify and personalize FreeCAD designs for everyone. Its more resource intensive than OpenSCAD but there should be no license issue. From the perspective of a designer it would make it much easier to make complex customizers.

3 Likes

thank you @remi_rafael, can you give some extra help if I asked

From a technical standpoint this is very achievable: in some ways the complication is choosing which of the many ways a FreeCAD model can be parameterized is the best fit for something like this. For example, Thingiverse could say something like “Customizer will expose any variable in a VarSet named ‘Customizer’”, then use a FreeCAD macro (Python) to load the FCStd file, update its VarSet to match whatever is set in the UI, and regenerate the STL/OBJ/whatever. There will probably need to be some limits, because a VarSet can include a huge variety of data types (see e.g. the “Commonly-used property types” table here FreeCAD Addon Academy ).

2 Likes

Nice to hear @chennes (i’m not an advanced user of FreeCAD myself). I believe as long as the method choice is done with the designer convenience in mind and and clear instructions (a tuto?) is provided, it should be a big progress over OpenSCAD.

@chennes Do you have an example of such a parametrized model that I could play around with in FreeCAD to get a taste of the functionality in the desktop software?

1 Like

Sure, here’s a trivial example with a plate whose length and width, and the number of holes in it, are set by a VarSet called “Customizer”. I’ve probably left a division-by-zero error lurking in there, but you will get the idea I think.

2 Likes