(Something you've never seen before)

Download poster here

Machine working video

General Overview

In the beginning we had this

And it produced something like this

Then the hand tufting tool make everything easier

And it created something like this

Thanks to the improvements in the digital fabrication, we bring to you, the Amazing CNC Tufting Machine

For planning our machine building we dfecided to use two different tools. One was a Trello board in which everyone of the team members has its missing activities and the other is a google drive file in which we upload the files we design and develop.

Machine Design

For our machine we are going to use movement in three different axis. For the X and y  axis movement we are going to use belts. For the z movement we are going to use an worm gear.

The decision was made in the weight, the dificulty of assembling together and the Speedy of the movement needed in each axis. The X and y axis are Light, we need a medium Speed movement. So we chose the belts. The Z axis have more weight to hold. The machine won’t need mucho f a movement in the Z axis so we decided to use a worm screw.

Example of the power belt that we are going to use for the x and y movement

Example of the worm gear that we are going to use for the movement in the z axis.

For the up and down action that the needle has to have we are going a 3D printed Cam, this will let us control the speed and the rhythm of the needle action

Our work zone will hold this measurements:


The measurements for the mechanisms in each axis are as listed:

• The Z axis will use a worm gear measuring 150mm long.

• The X axis will use a Belt and will measure 300 mm long.

• The Y axis will use a Belt and measure 450 mm long.


The worm gear we are going to use is a single threaded. The pass is 1mm, so the advance is also 1mm because is single threaded.


The advance measurements for the X and y axis Belt will be the same.


That was the design plan. But then we found some old structure abandonned in our Fablab. The structure was made of aluminum T profiles. Which is a sturdy way to support a machine. We understand that these profiles are not good for prototyping because they are expensive but we found them without an use and we thought that was a good idea to recycle them, we reuse something and at the same time we create a much more sturdier machine.

Some of the modifications we made to the structure were the heigh in which the tool was ubicated. In the original structure was too low.. We needed at least 23 cm iso we can put the needle in the correct angle. In order to correct that detail we scavenged another larger T profile and replace the middle vertical bars. The we posioned the tool with x axis on top of the new T profiles. The scavenged T profile was cut with a metal blade.

One of the changes made to the original idea of the tufting machine, was to change the power band to move the X axis to another worm gear. We know that the worm gear provides an slower movement, but we anticipated that our tool may be too heavy and the power band wouldn't be able to move it, so we changed it to a worm gear, slower but supports more weight.

Other modification to the original structure was, obviously, the work zone. The work zone was a simple mdf square measuring 25 cm per side. We designed a frame to tense the fabric. The frame was composed by some L shape pieces that gives us the height. We stacked two pieces with a 5mm thickness to have a 10mm thicknes per side. then we put the main face of the frame which had some holes to put screws in them. We know that this is not the best way to tense and frame the fabric. The screws gives us good tension but the mounting and removal of the fabric is slow and complex. We are working in a second porotype for the frame with out screws and with a put and remove design.

The fabric must be really tense and it must have a large grid. This means that the space between every thread must be big. If the space is too small, the tufting needle will rip the fabric apart.

The unions for the aluminum T profules were 3D printed. The machine uses 3 different unions. One type of union to work as vertexes for the aluminum T profiles, as displayed in the picture. Other type to balance the tool and join it to the middle profile, this union holds together the x acis and the side bars of the structure. And the 3 type of union holds the y axis and the guide pipes of the y axis. All of these unions are 3D printed.

In the picture above we have the stepper motor and the worm that works as our y axis. In the original structure that we decided to recycle this axis was a little bit bended up. This bend cause that theis axis didn't work correctly and the movement got stucked. We traced back the problem and we found out that the union thaat holds the other extreme of the worm wasnt secure with screws, instead the original designer fixated it with double  side mountage tape. This cause that the union got a little bit hhigher than the motor. We secure the union with screws to solve that problem.

We can see the union now with the screws holding it down.

In the picture above we can see one member of our team. Securing the tool and x axis to the main structure.

Electronics Design

For the electronics design we decided to design and manufacture Gestalt nodes. The Gestalt notes were first designed by Ilan Ellison Moyer in 2008, but they weren't popular until 2013. The gestalt frame work is a flexible and accesible control that aims to augment the ability of individuals to create new automated tools. It's a virtual machine controlling a physical machine. The nodes framework is programmed in python.

We decided to use the software eagle to design our own modules following the design rules proposed in Dr. Ellison's work. We used the electronic elements proposed by the Dr. Ellison but we adapted them to ones we have in the lab. Also we design our own board to full fill our needs of size in the design. In the image below we can see how our first design looks.

This is a list of the elements we used for this design:

-Attiny 44

-Half H bridge motor driver A4953 (x2)

-Pin headers (x14)

-0 ohm resistor (x1)

-LED 1206

-100 ohm resistor

-100 k ohm resistor

-.1 micro farads capacitor (x2)

-4 screw clamps


For the gestalt nodes the implementation idea will be like this. Every stepper motor in the machine will need one node, in total, every axis in the machine uses one stepper motor, so in total we will need 3 nodes. All of the nodes will be control by a master board. This master board is as simple as an attiny, a button and a led; so we decided to use the week 9 assignment (outputs) board of our classmate Carlos.

The elements for the masterboard:


-push button


-220 ohm resistor

-voltage regulator ZlDo 17-50

-Cristal clock

-1 resistor 0 ohm

-1 resistor 220 ohm

- .1 micro farads capacitor (x3)

-pin headers

-screw clamp




This master board is designed to use I2C communication and has some free pins to plug some switches.

Then we send the nodes to be fabricated in the modela mini milling. We use the half H bridge stepper motor driver. We use the two half driver because of the number of pins in the integrated circuit. Our modela doesn't have the definition to create aboard with such a small clearance. So to be quick and manufacture the boards in the fab we decided to use the half bridge.

In the picture above we can see how the board look finished. This is one of the nodes. We manufacture three of this boards, one for each motor.

This is the master board. Is the one designed for the assignment 9, we decided to recycle it.

Then we proceed to do some tests for the modules. And we faced a very bad problem.

We programmed a simple movement program for the stepper motor to try the nodes. But the motors weren't moving. We investigate in the data sheet of the drivers we were using and we found out that we missed a connection. We fixed that with a bridge and now it produced a movement but very weird, it kinf of vibrated more than it moves and it didn't give the complete spin.

We tried some other tests and the driver still didn't work. After trying some things and didn't have results we decided to implement the plan b. The plan b was to use the complete h bridge driver but we didn't have the machine to manufacture it here in our fablab so we send them to be manufactured by a local company named Ryspee.

We received our board and we soldered them.

Then the board was beautifully finished.

Tool Design

One of the real challenge of this machine was the tool. Every CNC machine works the same, it is the tool that defines this machine. In our case it was the tufting tool. This tool must move up and down at a certain speed in order to penetrate the fabric just as fast enough to put the thread and not shred the fabric. This speed also must be coordinated with the X axis movement.

First we design a model in the software Solid Works. We used this software because it's really professional for creating ensembles, and it also has a lot of simulation modules so we can make it work to test the up and down movement before we manufacture it. It is also easier to use than other professional softwares like Catia.

The trick for the up and down movement is a cam and gears. This was design in order to solve some of the issues of the tool.

The Cam serves the purpose of transforming the rotational movement generated by the DC motor into a linear movement. The function is explained in the picture. The axis rotates, rotating the cam, every turn of the dc motor the cam will push down the follower which in this case is the needle for the tufting.

The gears were added to the design so we can slow down the spin speed of the DC motor. Our motors spins so fast that the needle and the fabric may break. We calculated our gears to slow down the motor and gives us the necessary speed to tuft the fabric.

Once our design was ready we decided to prototype it using our laser cutter. This was the fastest option and the more precise for the gears, the cam and other elements. The needle was manufactured in a diferent way using our lathe.

The elements were cut in the laser cutter. Someof the elements needed more thickness than the one provided by our material. 3mm MDF, so we cut multiple times that element and glued them together to gain the thickness that we were looking for. For the metal profiles we used some aluminum pipes that we have in our waste basket and we used the lathe to gave them the 1/8 rope.

This is how it looks assembled.


We decided to communicate the master and the nodes with the I2C protocol.

Some of the characteristics that makes the I2C protocol attractive for this application is the capabilities to communicate one master with many slaves using a single line (SDA). I2C its very versatile you can communicate many masters with only one slave or vice versa also.

I2C is a serial communication protocol, this means that the communication is transmitted biy by bit along a single wire. I2C is synchronous, the output of bits is synchronized to the sampling of bits by a clock signal shared between the master and the slave. The clock signal is always controlled by the master.

This is the routine program for the master board that we designed. This program creates some squares. It's a simple design but works well as a test.

For the nodes, we used this code.

Tests and integration

After realizing that the gestalt nodes that we design weren't working, and after we solder the new modules, we needed to try them out. One of our earlier tests was the single movement of a single motor.

Obviously the next step in our tests was to move simultaneously two stepper motors, controlled manually by the computer.

When the tool was completed we need to try the movement. The tool uses a DC motor to move up and down.

After the tool worked we wanted to integrate it in the machine right away. We adjusted the tool with some locks to stop some of the gears to fall out.

In the end, our FABuluous machine worked like this:

Then we programmed a small routine so the machine draw a figure


As a team the difficuty was to work at a distance. We are 4 members, two from Puebla and to from Mexico City, though we worked together one day in the machine and will advanced a lot, the rest of the work was done by distance and then integrated. The communication played a huge role in the success of our project.

The future of this machine is a much portable solution, we were thinking in a structure that could be mounted in any canvas and do the job.

For making improvements and advances in this machine, it's imperative to work together in the same place. It's true that the new technologies makes easy this kind of collaborations but I still prefer working in person.

File Repository

Joins for the aluminum T profiles.

Join1  Join2  Join3

Gestalt node

Board Schematic

Master board

Board Schematic

Arduino program

Master  Slave


Oscar Velazquez

Project manager

Eduardo Ramírez

Machine designer

Carlos Pérez

Electronic designer

Rolando Maroño



Enviando formulario...

El servidor ha detectado un error.

Formulario recibido.