Guidance for how to design embroidered patches using TurtleStitch software.
Learners can either click on the 'get started' button to work through the resource in our recommended order, or select a section to jump to from the index.
For this activity we shall be using online software called TurtleStitch. You do not need to log in, create an account, or install any software.
This is the screen as it appears when you first load TurtleStitch:
There is a menu of block instructions down the left, with different categories to select from - Motion, Sensing, Pen, Embroidery, Control, Operators, Variables, Colors, and Other.
On the right is a grid with a turtle icon in the centre. This is where we can run our program to produce an image. Above the grid are some coloured icons; the green flag which will start the program, a yellow pause symbol to pause the simulation and a red octagon for stopping it. Beneath the grid are some viewing and export options.
The large blank area in the centre of the screen is where we shall be creating our programs by dragging the instruction blocks from the left into here.
As a first step to getting familiar with this software, let us look at how to draw a square.
Your program should look something like this:
We can now run the program by clicking on the green flag icon above the simulation space.
The turtle will move, and a very small square will be drawn on the grid. If you look at the information directly below the simulation, you will see the number of stitches this square requires and how large it is (4 stitches and 0.2 x 0.2 cm).
To produce a larger square, we will need to alter the value in the 'move 10 steps' command to a larger number (1 step = 0.02 cm therefore, 50 steps = 1 cm).
As we test and check our programs in the simulator, you may have noticed that the previous drawings are not removed.
To remove earlier attempts/images, we will need to add clearance and reset instructions into our program.
Follow the below steps to create a separate program that we can activate by pressing the spacebar. Alternatively, you can put the same sequence of instructions (or use the reset block) at the very start of your 'when ⚑ clicked' program.
This new program should look something like this:
Now, we are able to clear all previous drawings from the screen by pressing the spacebar on our keyboard.
We can alter the program we created to draw a square to produce any regular polygon.
Here are some examples:
We could adopt the same program used for the regular polygons (shapes with equal length sides), to create the effect of a circle:
However, this is a slower process which will require more stitches than is really necessary to create a circle. Instead, there is a block in the Motion menu that we can use to draw a circle, making this a simpler shape to create than the polygons we've already looked at.
Here is an example of a program designed to draw a circle when the simulation is started.
You can adjust the size of the circle by changing the radius (the first value) in the arc block.
Reducing the degrees value within this instruction will result in a curved line that does not meet to form a circle.
This software provides designers with a block that allows us to include text within our designs.
You can find this in the Motion category:
We can change the word and its size within this block.
IMPORTANT: Changing the pen size will affect what you see in the simulator, but is not reflected on transfer to an embroidery machine. Please see the next topic for more information.
Up until this point, we have been using TurtleStitch to simply draw images in the simulator. This is a great way to get familiar with how to create different designs but does not translate well to an embroidery machine.
For example, we can use the text drawing block to create a word in the simulator, but with no other instructions, an embroidery machine may fail to successfully replicate the letters.
The Outcome:
Why did this happen?
When designing anything on a computer, we need to consider how it will be used. In this case we are hoping to re-produce our designs in the form of embroidery. So, we need to include relevant instructions within our program.
Inside the Embroidery selection of blocks, you will see a selection of different stitch types. By setting any of these at the start of our program, we provide the guidance needed to make this work. See the below code examples with their embroidery outcomes.
You can use one stitch type and settings for the whole design or program different parts to be stitched differently.
The reset program we recommended in a previous section will allow you the opportunity to experiment with all the different stitch types and the settings inside each.
There is a Colors category of blocks available for us to use in our designs.
Remember, these will only set the colours as displayed in our simulator. An embroidery machine is unable to tell what colour the thread is and will sew using whichever colour it's provided with.
A colour change in a program will trigger the machine to pause at that point to provide the user with the opportunity to change the thread.
We can now write a full embroidery pattern to produce a heart with the blocks covered so far.
Below is a sample program using a satin stitch to produce a basic heart design. Feel free to use and/or adapt this into your own programs.
We can take the shapes already covered and create interesting patterns using rotation.
Here are some example patterns:
Squares
Hexagons
Circles
Let us look at how to make such patterns. For this work-through, we shall be producing a rotational pattern of 6 pentagons around a centre point.
You can change this program to use other shapes or to change the number of them present.
In the programs current state, we must do the mathematics to calculate the turn angles. There is a way to have the program do this for us. Please see the next topic for more information.
IMPORTANT: The more shapes you include in this pattern the more stitches the embroidery machine will be starting from the same point. Include too many and a warning message will appear under the simulator - it is not a good idea to proceed with sewing whilst this warning applies.
Variables are used in programming to store values, allowing us to use them throughout the program, or including them in mathematical calculations. The main benefit is that the user can change them at the start of the program and not have to worry about finding all the times they are repeated or used.
We can create and name our own variables by opening the Variables menu and clicking on 'Make a variable'. This loads up a text box in which you can name your variable. This creates a new block with this name in the menu for us to click and drag to replace number values inside other blocks.
IMPORTANT: Variable names should never start with a capital letter or include spaces.
Using just one variable (named shapeSides), we can write a program where we can draw any regular polygon by changing one value:
This program also includes a new green block:
This can be found in the Operators menu along with other calculation and logic instructions.
Not only does this program reduce the need of the user to calculate angles for any given shape, but it also allows us to produce shapes more accurately, such as the heptagon (7-sided shape) which we have not covered due to the angles required not being whole numbers.
It is also possible to use this new variable with one other to create a rotational program where the user sets the number of sides a shape has and how many times, they want it produced. The program will then do the rest. Feel free to give it a go yourself or click on the below button to see/replicate the program.
If you wish to create flower designs, we will need to combine everything we have learned across the topics so far.
First, let us consider the shape of a petal. This shape can be made with two mirrored/reflected curved lines or arcs.
We can reproduce this in TurtleStitch using the below section of code inside your program.
You could replace the shape drawing code in our rotational pattern program with this. If you have included variables, as demonstrated in the previous section, you can remove the shapeSides blocks.
So far, we have been focused on designs drawn from a single start point. This section looks at how to change the start point for a shape or text.
The location of the turtle is set using its coordinates. The default start location is at (0,0) or x: 0, y: 0. The x is the position along the horizontal lines of the simulator, whilst the y value is the position on the vertical lines.
We have used the 'go to x: 0 y:0' motion block in our deletion code and for drawing a heart. However, in both these cases the turtle draws a line as it travels to this new position. In the Pen menu there are blocks labelled as 'pen up' and 'pen down'. Lifting the pen up stops it from drawing until we use the 'pen down' instruction to lower it again. This allows us to move the turtle without adding unwanted lines to our design.
Example:
The red dashed line on the simulation shows the routes of the needle when not in the material.
IMPORTANT: When the file is loaded onto the embroidery machine it will auto-centre the whole design on to your patch.
As you put together your design, your program may become very long and hard to follow. We can break it down by using functions. These are a set of instructions saved under a single name which can be used in their place within the main program.
As we are using TurtleStitch, we can replicate this programming tool by creating a new block - an option available at the bottom of the block menu.
When you select this option, it will ask for a name to give it. Then, a window opens that allows you to click and drag blocks in to create the instructions for your new block. Now, every time you use/call this new block it will run these instructions.
Let us demonstrate. Below is a program that draw three identical stars in different locations.
This is both long and repetitive. Instead, we can save the star drawing program inside a new block:
We can now use our new star block in our program:
You can also add a parameter to your new block. This could be a number box that allows the user to change the size of the shape every time they draw it. To add this number box to your block, access the Block Editor and click on the plus symbol to the right of your block title and select input value.
The result:
IMPORTANT: To use the new variable created in the title block, click and drag it from there into other locations it is used in. Do not create another variable in the menu with the same name.
Once you are happy with your design/pattern, we can look to create it using an embroidery machine.
First, we will need to produce a file of the instructions from TurtleStitch. For the machines used during our workshops, you will need to select the 'Export as Tajima/DST' button on the right-hand panel.
This will create a copy of the design in the computers downloads folder. You will need to move it to a USB drive.
This USB device can then be plugged into the embroidery machine where you can load it.
Once loaded you will see a preview window of the design and its position. There are some editing tools available here, including positioning and scaling options.
Go through confirming all the options and when happy, press the start button (the lit button on the machine) and follow the instructions given on the screen.
IMPORTANT: Keep your hands clear of the machine when it is operating.