There are two steps to this process: filament creation and object printing. The actual object printing is the boring part—you just print your object like you normally would, except that when it’s done, there are different materials in all the right places, because those materials were programmed into the filament in advance, at exactly the locations and lengths they needed to be.
It might seem like using a multi-material filament to create a multi-material print doesn’t actually solve anything, since that multi-material filament has to be created by something that can print multiple materials, right? Right! And a simple 3D printer can totally do that, as long as you’re willing to change out filaments by hand. That’s really the trick here: you use a regular 3D printer to 3D print a complex multi-material filament that you then feed back into the printer to print your object.
It won’t surprise you that there’s a lot of computation involved in making this work, because the filament that you create (which the researchers describe as “programmable filament”) has to embody in its construction the location of every bit of material in the final object, and this can get very complicated, as it depends on both the geometry of the object and the path that the print head takes.
The filament for an object may involve many transitions from one material to another, even if the object itself is relatively simple. You can imagine printing a cup that’s half red and half blue, but because of the path of the print head, having the top be red and the bottom be blue involves a single transition in the filament, while having one side be red and the other side be blue could potentially involve two transitions with every single printed layer.
The filament itself is printed in a spiral, one type of material at a time. Once every section of one material has been printed, you manually load in the next material, and the printer adds those bits onto the filament spiral in the right spots. You can repeat this process for as many materials as you need (the researchers have successfully printed with up to six), and once you’re done, the printer makes a final pass to stitch all the transition points between materials together. Then just lift the printed filament off of the print bed, reset the printer, feed in the filament you just created, and start the printer on creating your new object.
There is a bit of messiness that shows up in the print when one material transitions into another. If you’ve got different colored materials, they’ll blend a little bit, and for materials with different physical properties, well, who knows. You can either look at this as a bug, in which case you can modify the infill or wall density of the print so that transitions are less visible, or as a feature, in which case you can leverage this mixing to create deliberate color transitions or the mixing of structural properties by deliberately combining two or more materials into one piece of filament.
The researchers note that their software pipeline and technique work with most (but not all) 3D printers, and that no matter what printer you’re using, careful calibration and monitoring is required. In future work, they’re hoping to optimize the process to make it as easy as possible to print custom filaments, and hopefully when they’ve got everything just right, they’ll make their software available for anyone who wants to make their simple 3D printer much, much more capable.