TurtleStich is a programmable embroidery platform created by Andrea Mayr-Stalder (Artist, Educator, Project Lead), Michael Aschauer (Artist, Lead Developer). It is a programming microworld, that allows learning how to program by exploration.
According to Turtlestitch - Coded Embroidery (Retrieved Aug 2018), “Turtlestitch is based on a browser-based educational programming language (Snap!) to generate patterns for embroidery machines. It is easy to use, requiring no prior knowledge in programming, yet powerful in creating nowels patterns for embroidery. It is usefull for designers to experiment with generative aesthetics and precision embroidery as well as tool for innovative workshops combining an introduction to programing with haptic output. Turtlestitch uses Snap!s "pen module" which it interprets as a needle and transforms its output into widely-used embroidery file formats.”. An alternative description is provided in the official FAQ: “TurtleStitch is a platform to generate patterns for embroidery machines. Technically, it's based on Snap!, a browser-based educational programming language. It is easy to use, requires no prior knowledge in programming, and is a powerful tool to create personalized patterns for embroidery. It is useful for designers for experimenting with generative aesthetics and precision embroidery, as well as tool for innovative workshops combining an introduction to programing with haptic output.”
Turtlestitch does require programming knowledge. However, it can be acquired through the use of this platform as one its main goal is to provide a motivating means to teach computer science principles.
- Snap, the language behind Turtlestitch
- Embroidery Designer based on Pocket Code, a mobile programming environment similar to Scratch. This embroidery module was formerly known as Code’n’Stitch (launched in Apr 2019).
- BlocksCAD, a similar environment for creating 3D models.
Turtlestitch allows teaching programming by intuition or using a more "scientific approach" that includes mathematics, software principles, optimized algorithms, etc.
The following, using the now obsolete "pen" system was done during a faculty meeting without thinking about any math. Just some trial and error of angles and distances. A main program will draw call a "block" that will draw the stick, it then will call 8 times a block that draws a petal and shift/rotate in between.
It includes several programming constructs:
- output instructions (move, pen up/down, goto, thickline, reset ...)
- blocks (i.e. functions and function calls ), with and without arguments
- variables ("origin-x" and "origin-y" in the stick block.
- simple loops
- event ("when clicked")
- Turtlestitch is available as online browser-based environment.
Supported embroidery formats
- The program can export to .DST (Tajima) .EXP (Melco) low level embroidery formats and SVG. The former can be translated to other proprietary embroidery formats, using a converter. The latter could be imported to other embroidery programs, e.g. InkStitch.
As of 2019 there are additional embroidery commands in turtleStitch. Before moving the turtle, one can define a stitch type, e.g. running stitch, satin stitch, cross stitch, etc. Do not use the old "Pen" system anymore
Defining the stage size
Quote: The maximum size of your pattern is determined by the size of the embroidery frame of your machine. To make sure you are working on the right scale, you can define the “Stage size.” Go to settings ( ), choose “Stage size ...” and define sizes of your “stage” on which you design. The values are given in pixels and 50 pixels = 1cm. So, if you want to design for the pattern with a maximum size of 15cm x 15cm, choose the values for “Stage width” and “Stage height” each 750 (retrieved oct 2019 from the FAQ).
- Brother 18 x 13cm = 900 x 650
Tips & Problems
- Manual information, e.g. cards can be found at the bottom of the Turtlestitch page (as of March 2020). The menus on top are useless for learning the software.
- Before exporting, you must execute the code, i.e. the software will export the drawing that is seen on the canvas.
- Many examples on the site (as of early 2020) still use the old system. Learn how to combine embroidery plus move commands.
- Some color change information is missing in the DST file. Workaround: Either convert to another format or edit the file in a converter or embroidery design program.
Problems: - Move -X steps does not work with embroidery instructions (March 2020)
- http://turtlestitch.org/ Project site.
- https://www.turtlestitch.org/beta (Beta version. As of Jan 2019 we strongly recommend trying this version, since it supports a wider choice of embroidery stitches.
- Cards for Beginners (start from here!)
- Gallery of Turtlestitch programs
- Cards to teach TurtleStitch in workshop. Also usable as a kind of manual since no other exists (at the time of writing)
- Snap! User Manual
Blogs, wikis, etc.
- TurtleStitch Wiki. As of Aug 2018, this is empty.
- Bryant, C., Gilmour, J., Herce-Hagiwara, B., Pham, A. T., Remash, H., Remash, M., ... & Rebelsky, S. A. (2018, February). The Craft of Code: Exposing Elementary Students to Computing Through Tangible Crafts. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education (pp. 1080-1080). ACM. https://dl.acm.org/citation.cfm?id=3162321
- Pohl, M. S., & an der PH Wien, D. (2017). Sticken im internetzeitalter. BILDNERISCHE ERZIEHUNG| TECHNISCHES WERKEN| TEXTILES GESTALTEN, 156. PDF
- DeWitt, A., Fay, J., Goldman, M., Nicolson, E., Oyolu, L., Resch, L., ... & Zak, E. (2017, March). Arts Coding for Social Good: A Pilot Project for Middle-School Outreach. In Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education (pp. 159-164). ACM. https://dl.acm.org/citation.cfm?id=3017795
- Luhana, K. K., Mueller, M., Schindler, C., Slany, W., & Spieler, B. (2018). Rock bottom, the world, the sky: Catrobat, an extremely large-scale and long-term visual coding project relying purely on smartphones. arXiv preprint https://arxiv.org/abs/1808.06292
- Defines future plans for an endless story
- Wolz, U., Charles, G., Feire, L., & Nicolson, E. (2018, February). Code Crafters Curriculum: A Textile Crafts Approach To Computer Science. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education (pp. 1055-1055). ACM. https://dl.acm.org/citation.cfm?id=3162360 (abstract only)
- Wolz, U., Auschauer, M., & Mayr-Stalder, A. (2019). Code crafting with turtlestitch. In ACM SIGGRAPH 2019 Studio, SIGGRAPH 2019 (pp. 1–2). New York, NY, USA: Association for Computing Machinery, Inc. https://doi.org/10.1145/3306306.3328009
- Wolz, U., Auschauer, M., & Mayr-Stalder, A. (2019). Programming embroidery with turtlestitch. In ACM SIGGRAPH 2019 Studio, SIGGRAPH 2019 (pp. 1–2). New York, NY, USA: Association for Computing Machinery, Inc. https://doi.org/10.1145/3306306.3328002
- Wolz, U., Charles, G., Feire, L., & Nicolson, E. (2018). Code Crafters Curriculum. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education - SIGCSE ’18 (pp. 1055–1055). New York, New York, USA: ACM Press. https://doi.org/10.1145/3159450.3162360