GreatLight CNC Machining Factory logo
CNC Machining
Rapid Prototyping
Materials
Industries
News
About GL

Get Instant Quote

Process explainer

3D Printing Language Code T: How Two-Track Control Changes Toolpath Planning

3D printing language Code T splits one G-code stream into two coordinated tracks: motion and function. This page explains the mechanism, the boundary conditions, and when a machined or cast part still beats an additive one.

Two-track architectureGradient controlEquipment-agnostic
Introducing Code T, the 3D printing language Code T for two-track control
Mechanism

What Code T Splits Apart, and Why That Matters

G-code carries one instruction stream. A move command tells the head where to go, and every other variable — extrusion rate, temperature, tool change, laser power — has to be inserted as a separate line between moves. The controller reads them in order. Nothing runs at the same time as anything else.

Code T divides that stream into two coordinated tracks. One track carries the printing path: position, velocity, acceleration. The second track carries function: extrusion volume, material switching, colour, cure intensity, nozzle state. The two tracks run in parallel and meet at synchronisation points that the programmer sets.

That split is the whole idea. Once function is its own track, a printer can change material composition while the head is still moving along the same path. The controller no longer has to stop, purge, and restart for every transition.

The practical result is a shorter toolpath for the same geometry. Fewer stops also mean fewer seams, less stringing, and more repeatable layer bonding. Those are the three defects most people fight when they print with two materials.

  • 1
    Track onePosition, velocity, acceleration — the kinematic plan
  • 2
    Track twoExtrusion, material, colour, cure — the functional plan
  • 3
    Sync pointsWhere the two tracks must agree before the next move
Comparison

How the 3D Printing Language Code T Differs from G-Code

G-code was written for a single-tool, single-material machine. It assumes one nozzle, one filament, one thermal profile per print. Multi-material work gets bolted on with tool-change commands, and each change costs time and creates a weak spot.

Code T assumes the machine has several controllable axes of function. That could be two extruders, a mixing nozzle, a laser with variable power, or a spray head. The language does not care what the function is; it only cares that the function can be scheduled against the motion.

The consequence is that machine builders can add capability without rewriting the whole toolpath. A printer with a new nozzle design needs a new function definition, not a new slicing strategy. That is why the same code can drive a desktop machine and an industrial system.

There is a cost. Two tracks need a controller that can schedule them, and the firmware has to resolve conflicts when the function track falls behind the motion track. On older 8-bit boards this is not possible. On modern 32-bit boards it is a scheduling problem, not a hardware problem.

For a designer, the difference shows up in the slicer settings. Instead of choosing a material for the whole part, you assign material and properties per path segment. The toolpath becomes a design file, not just a motion file.

  • 1
    G-codeSequential commands, one active state at a time
  • 2
    Code TParallel tracks resolved at sync points
  • 3
    Firmware floorNeeds a scheduler; 8-bit boards cannot keep up
Capability

Functional Gradients and What They Enable

A functional gradient means a property changes along the path. Wire diameter, material ratio, cure level, or colour can shift gradually instead of switching at a hard boundary. G-code cannot express this because it has no variable that changes continuously with position.

Code T can, because the function track is a curve, not a list of discrete commands. You define the gradient once, and the controller interpolates it across the segment. The printer does the rest.

The engineering value is in parts where stiffness, damping, or thermal response has to vary across the same geometry. A bracket that is stiff at the mounting boss and compliant at the tip is one print, not two parts glued together.

Gradients also remove a common failure mode. A hard material boundary is a stress riser. A graded boundary spreads the load. For cyclic loading, that difference shows up in fatigue life, not in the first pull test.

The limits are real. Gradient control is only as good as the extruder response. A nozzle that takes 200 ms to change mix ratio cannot print a sharp gradient at high speed. Slow the print down, or accept a softer transition.

  • 1
    Continuous variableProperty changes along the path, not at a boundary
  • 2
    Stress risersGraded transitions spread load better than hard joints
  • 3
    Rate limitGradient sharpness is capped by extruder response time
Boundaries

Where the Approach Still Falls Short

Code T does not fix the fundamentals of additive manufacturing. Layer adhesion is still a thermal process. Anisotropy is still there: a printed part is weaker across layers than along them. No language changes that.

Surface finish is another boundary. As-printed surfaces sit around Ra 10–15 μm on a good FDM machine. If a drawing calls for Ra 0.8–1.6 μm or Ra 0.2–0.8 μm, printing gets you close to net shape, not to final spec.

Dimensional tolerance is the third. A well-tuned printer holds roughly ±0.1 mm on small features. When the drawing says ±0.005 mm, the print is a blank, not a finished part. That is where we come in.

The sensible workflow is additive first, subtractive second. Print the near-net geometry with the internal channels and gradients, then machine the critical faces, bores, and sealing surfaces. You keep the complexity and recover the tolerance.

Not every part suits this. A simple bracket with three holes and one flat face is cheaper to machine from bar stock. Printing it, then machining it, adds a setup and a fixture for no gain.

  • 1
    Keep printingInternal channels, lattices, graded sections
  • 2
    Switch to machiningSeals, bores, bearing seats, flatness-critical faces
  • 3
    Skip printingSimple prismatic parts with few features
Shop practice

From Printed Blank to Finished Part on the Shop Floor

When a printed blank arrives at our floor, the first job is datum strategy. Printed surfaces are not reliable datums. We pick a machined face or a cast boss and build the coordinate system from there.

The second job is stock allowance. We ask for 0.5–1.0 mm on faces that will be cut, and more on bores that need to be true. Thin printed walls deflect under cutting force, so we support them or leave them alone.

Fixtures matter more than the toolpath here. A printed part is often light and irregular. Vacuum plates, soft jaws, and 5-axis access reduce the number of setups and the chance of a scrapped blank.

We run 16 simultaneous 5-axis machining centers and 127 CNC machines in total, so a one-off prototype and a 10,000-part run use the same process window. No minimum order quantity applies.

Inspection closes the loop. We check raw material, monitor in process, and inspect 100% before shipment. Reports are available on request, including the dimensions that the print could not hold.

  • 1
    DatumsNever trust a printed surface as a primary datum
  • 2
    Allowance0.5–1.0 mm on faces, more on bores
  • 3
    SupportThin printed walls deflect; back them up or leave them
Decision table

Printed, Machined, or Both: Choosing by Requirement

Match the requirement to the process before you commit a design.

RequirementAdditive with Code TSubtractive CNCPractical choice
Internal channels and latticesEasy, no extra costHard or impossiblePrint
Tolerance ±0.005 mmNot achievableStandard capabilityMachine
Surface Ra 0.2–0.8 μmNeeds post-processingDirect from the toolMachine
Graded stiffness in one partNative capabilityNot possible in one piecePrint
Simple prismatic geometrySlow and costlyFast from bar stockMachine
Near-net blank for finishingCheap complexityAdds setupsBoth
Material choiceLimited filament rangeAluminium, steel, titanium, plasticsMachine for metals

The Verdict

Use 3D printing language Code T when the part needs internal geometry, graded properties, or features a cutter cannot reach. Switch to CNC when the drawing carries ±0.005 mm, a sealing surface, or a bearing seat. For most production parts, print the blank and machine the critical features.

FAQs

Questions Engineers Ask Next

Does Code T replace G-code entirely?

No. The motion track still describes position and velocity in terms a controller understands. Code T adds a second, parallel track and a set of synchronisation rules.

Existing machines keep running G-code. A machine needs a firmware scheduler before it can execute the two-track form.

Which printers can run it?

The design is equipment-agnostic: a desktop FDM machine and an industrial system can both use it, provided the controller can schedule two tracks.

The practical floor is a 32-bit board with enough buffer to hold the function curve. Older 8-bit boards cannot resolve sync points fast enough.

Can a printed part hold a tight tolerance?

A tuned printer holds roughly ±0.1 mm on small features. Our machining tolerance is ±0.005 mm.

If a drawing calls for ±0.005 mm, treat the print as a blank and machine the critical faces, bores, and seats.

What should I leave as-printed?

Internal channels, lattice structures, and graded sections are expensive or impossible to cut, so leave them as printed.

Faces that seal, mate, or carry a bearing need machining, and that is where the allowance goes.

How much stock should I add on a printed blank?

0.5–1.0 mm on faces that will be cut is a workable starting point. Bores that need to run true take more.

Thin walls deflect under cutting force, so either support them or leave them unmachined.

Can you handle both steps in one order?

Yes. We run custom 3D printing alongside 127 CNC machines, including 16 simultaneous 5-axis centers, so the blank and the finished part stay in one process window.

No minimum order quantity applies, from one prototype to 10,000+ parts. Quote and DFM analysis come back within 12 hours.

Send the Drawing, Get a Process Recommendation

Upload your CAD and we will tell you which features to print, which to machine, and what allowance to leave. Quote and free DFM analysis within 12 hours.

12-hour quote±0.005 mm tolerance100% inspection

Follow

More Process Notes from the Shop Floor

We publish setup notes, tooling trials and inspection data from the factory floor.

FacebookTikTokYouTubeLinkedInInstagramThreadsPinterest

Trusted by engineers and manufacturers worldwide

Tesla Ford Motor Company BYD Auto Denso Magna International Boeing Airbus Medtronic KUKA FANUC