Johns Hopkins Researchers Introduce TCODE tthat Could Replace Legacy GCODE in 3D Printing

By on March 28th, 2025 in news, research

Tags: , , ,

Slicing 3D models with TCODE [Source: Nature]

Researchers at Johns Hopkins have developed a new protocol that could significantly change how 3D printers work in the future.

The problem they investigated was the nature of GCODE, the low-level machine language used to instruct 3D printers (and other machines) on how to sequence operations.

GCODE was developed 70 years ago with the first CNC machines. Since then, the basic concept of GCODE has been adapted for a wide range of equipment, including 3D printers. Typically, manufacturers will add new GCODE instructions for new features.

But there’s a fundamental problem with GCODE that hasn’t been apparent until recently: it is a sequentially executed series of independent machine operations. This means that each step must be completed before the next, and only simple operational sequences can be attempted. The general rule of thumb is that each step must be completed before the next can be initiated.

This means there are constraints to fully using the hardware of today, where there are multiple toolheads doing different operations at the same time, or changing print parameters while the toolhead is in motion.

The researchers developed a new protocol they call TCODE (standing for “time code” instead of “geometry code”). This protocol works on time-based synchronization, and the implementation is quite interesting.

TCODE process [Source: Nature]

They post-process a normal GCODE script and separate out the basic motion commands from other activities. Then the magic happens. They explain:

“Once decoupled, the script consolidates the interrupted G-Code movements into a continuous, uninterrupted print path. For example, if a print path includes an auxiliary command every 2 mm over a 10 mm distance in the x-direction, the script consolidates the five separate “G1 X2” commands into one continuous “G1 X10” path. The uninterrupted G-Code is then formatted and transferred for execution by the 3D printer.”

This is all done by computing the time milestones and mapping them onto a “velocity profile”. This is extremely complex, but through experimentation, the researchers were able to overcome many of the issues that developed along the way.

When done, they were able to demonstrate the versatility of the approach through some unusual 3D prints. One experiment involved a “filament gradient”. The concept was to vary the extrusion width while moving the toolhead. This is not possible with conventional GCODE, but easy when the instructions are decoupled.

This allowed the researchers to produce a printed object with continuously varying density. This mimics many natural objects, such as bone or wood, suggesting there are some very intriguing potential applications for TCODE.

Mixed extrusion example with TCODE [Source: Nature]

Another example is illustrated here, where we have an extruder with two materials. TCODE would allow the extruder to vary the proportions of the two materials dynamically, all while the toolhead moves along continuously.

TCODE is merely a research project at this time, but the benefits seem obvious. Therefore, we are likely to see future 3D print slicing software and hardware adopt the protocol.

However, it will certainly be quite some time before that happens, as many things must align to open the door to full implementation. At this point, it’s possible that some forward-thinking 3D printer manufacturers might begin experimenting with TCODE to see how it could be adapted for use with their products.

Via Johns Hopkins and Nature (Hat tip to Tuan)

By Kerry Stevenson

Kerry Stevenson, aka "General Fabb" has written over 8,000 stories on 3D printing at Fabbaloo since he launched the venture in 2007, with an intention to promote and grow the incredible technology of 3D printing across the world. So far, it seems to be working!