More selected projects


An installation exploring the vivid connections between weaving and digital technology through experiences of reading and making patterns.  Based on real time thermal printing, blending subtle interactive elements using computer vision with experiments in emergent systems and behaviours, the audience is invited to co-create patterns brought forth through generative weaving drafts. A process of participation by presense and influence through movement, but without total control over the outcome.

produced by: Jakob Jennerholm Hammar


Digital weavings hang from the wall, burnt onto paper with a thermal printer. The patterns are constructed through algorithmic procedures and emergent systems encountered and interacted with through bodily movements. They are the proposed results of generative weaving drafts or notations. Drafts used as navigational tools, as codified images of a process or maps visualizing the setup and operation of a weaving loom to create suggested structures and patterns. They are studies of the vivid connections between weaving and digital technology, of fate, agency, responsibility and necessity. A reflection on the tensity of living and creating while having little or no control yet participating in and constantly influencing all of one’s surroundings.

Next to the prints, an installation lets the viewer co-create patterns together with a computational system, channelled through ever changing, animated weaving drafts and printed in real time. Bodily movements, captured by a camera, are used to navigate the operations of a digital loom and to influence emergent forces, creating unfolding patterns. The work invites the audience to read as well as make patterns, to participate in a process where one is never in full control of the outcome but always interfering and influencing it as part of a collective creative process.

A companion website exploring the mechanics, aesthetics and movements of weaving drafts were also a part of the project. It can be reached at:


  • gallery-image
  • gallery-image
  • gallery-image
  • gallery-image



The project originates from an interest in textiles and digital technology paired with a fascination with ideas of fate. It poses questions about process and movement, duration and relationality, as well as the indeterminate dynamics of emergence. Questions of how to understand time, space, nature and “reality”. Of how to navigate the ceaseless, unpredictable unraveling of the future, the interconnectedness, agency and entanglement of matter, people and environment.

The answers to these questions are sought from within the weaving drafts. Weaving drafts understood as a notational system used to visualize weaving patterns and the instructions of how to achieve them. They are illustrating the setup as well as the operation of a weaving loom. A weaving draft consists of four different grids representing the weaving process. The 'threading' illustrates the warping of the loom through 'heddles' connected to a number of shafts. The Tie-Up then shows to which shafts the different treadles of foot pedals of the loom are connected. The ‘Treadling’ describes what pedals are activated at a given point while  the drawdown shows the final pattern and structure. The drafts displays in their grids the process of interlacing threads or fabrics at a right angle thrugh the passing of the 'weft' material under a certain lifted warp threads.


Concept and background research

The project tackles these topics of universal necessity and individual choice, responsibility and acceptance by making practical experiments and research into weaving as a digital art. How weaving as an ancient technology, as for example Alex McLean et. al(2017) and Ellen Harlizius-Klück(2017) have argued, can be considered to always have been digital as a binary and algorithmic art. The digitalness may also reside in the manual handling of threads as well as in the vivid aesthetic, structural and spiritual connections between digital technology and textiles as written about by Gabriel and Wagmister(1997). Connections that can be seen as having grown even stronger with the invention of Jacquard's loom and punch-card computing (Plant, 1995).

The similarities with digital pixel-based art, weaving and weaving drafts became an important point of coherence in this project. The patterns which, just like the drafts, are conditioned by the practice of weaving as they are anchoring a process, living social and cultural history, identities and traditions within their grids and matrices. For example as a certain “geometric sensibility” which Valoma(2005) identifies being developed from weaving.

As weavers, artists, writers and researchers like for example Annie Albers and anthropologist Tim Ingold(2010a, 2010b) have identified, the creative process, especially with textiles, is not one of imposing form on matter. Instead it is described as a fluid collaboration between the weaver, the loom and the materials. The threads and fabrics have wills of their own, with which the hands and mind of the weaver engage in conversation through an unpredictable relationality. It is a process where they present themselves with their specific openings and limitations, to which the other responds. The end result is always uncertain.

The drafts then as a visual, codified system or a language aids in the process of weaving. Like musical notation, from the most distinct and rigid to the utmost abstract, graphical and freeform systems, they guide and give hints to the weaver of when and where to pay attention and to act. And as cartographies they are ways of framing a world and a complex, chaotic, intense and even incomprehensible reality. Reductions but also as imaginations, speculations and fabulations. They are never perfect descriptions, they are never “true”, but still very real and important and necessary for us to expand the ways in which we can interact with the world. As notations and maps they can perhaps be considered relative images of a process stretching out in space and time.

In an attempt to be consistent and to continue to push the aesthetic and conceptual research of weaving and digital technology through working with binary states, on or off, the weft is passed over or under the warp, the same pattern where applied in my thinking of complexity and of emergence. Of how forces are set in motion, how life elaborates, how threads are entangled.

It is bound up with the original question of fate, of living with no direct or total control yet having an integral part of how the world unfolds. Questions of responsibility, agency, acceptance and resistance. What openings and limitations we have to work with, and what openings and limitations we bring forth by our own existence and actions. A relevant and interesting connection is how Grosz describes research into cellular automata and the like, under the umbrella of artificial life, as exploration into the idea of "direction without destination, movement without prediction" (Grosz, 1998, p. 41). It is an understanding of processes which are both constrained and undecided, of emergence as a way of thinking beyond determinism and free will where causality is an agent of fate, not fate itself (Grosz, 2017, p. 123).

The backend system consists of entities, ants or atoms which are  perhaps better understood as wills or forces, at least in this work. I think of them through Ingolds (2010b, 1015) complex but very inspiring understanding of lines. Of understanding the world through lines, lines that entangle, directs and redirects each other, building complex weaves through their movements and interactions. It is not meant to be a simulation of living organisms, immensely complex as they are, but as a study of encounters.

The encounter is here either the direct contact with something in movement, or with a current or path being laid down within and as an environment. The very moment of the encounter is transformative. It aligns and realigns, changes trajectories and modifies the environment. In the conversation, meeting or confrontation things change, grow, contract, entwine, synchronize, repel, merge and transform. The different states and memories conditions the perception and effect of the encounter. In the installation and the printing process, the encounter also takes place between the audience and the draft, where the draft is the interface between the underlying system and the interactant.

The prints became a way to think with time, duration, memory and becoming. In every update the calculated row gets printed, added to the previous rows and merged or woven together into an ever growing and unfolding weave. They are frozen, slowed down and integrated into memory and history, but a living and ever present history. The prints displayed are meant to give an experience of pattern reading. To make possible a contemplation of how they are united as one long flow but still being made up by many different parts. They are one and many, asking questions about scope and scale with their sub-patterns, flows and repetitions within repetitions. It is in a way a very direct experiment with Bergsons(1912) concept of duration and of the paradox of how consciousness can be both a unity and a multiplicity.


The installation

The patterns printed are generated through the construction of an ever changing weaving draft displayed on the small screen. Underneath the draft, an invisible computational environment operates, a system based on simple rules which still displays complex and emergent, self-organizing behaviours and patterns. The backend system is slowely influenced by the movements taking place in the room. The camera also picks up more direct motions, correlating with the treadling of the draft, which in turn lets the audience navigate the draft and have a significant (yet obscured) participation in how the patterns turn out.

The metal housing of the installation stands tall on tall legs. The almost creature-like features of the is not meant to anthropomorphize but to animate, to give a sense of liveliness and spirit. You are co-creating with a system which, perhaps like the individual, can be understood as a nexus or interface of forces and wills, currents and movements.

Previous experiments recorded with the thermal printer are displayed hanging from the wall. They are mounted like warp threads, framed in a loom like structure which they escaped, reminding us of how the frame and the loom is a temporary structure used to interact with the materials at a certain point. Beyond that point they pass on, woven together, entangled and structurally integrated into a new assembled figuration.


  • gallery-image
  • gallery-image
  • gallery-image
  • gallery-image
  • gallery-image


The website

As a response to the covid situation and general uncertainty, as well as an addition to the physical exhibition, a companion website was developed. It contains a few small meditations and abstractions around some specific details, mechanics and ideas around the themes that is presented. It is a possibility to in a more personal and interactive way let people explore weaving drafts as they are though with here together with some of the related topics. It can be found at:


  • gallery-image
  • gallery-image
  • gallery-image

The code running the installation is written in c++/openFrameworks with the help of the following addons:

  •  bakercp / ofxPS3EyeGrabber - extending ofBaseVideoGrabber with PS3 Eye
  • kylemcdonald / ofxCv - openCV wrapper for OF
  • Patricio Gonzales Vivo / ofxThermalPrinter - adding real time control over thermal printer


The printer used is an Adafruit Mini Thermal Printer and installations run on a Raspberry Pi 4 with a small 4” screen. For the interaction a PS3 Eye camera was used. The website relies on Javascript/P5JS for the interactive sketches.

A few technical road blocks came up during development. A major one was the difference between running the code on a high spec laptop vs the Raspberry Pi. I rewrote the whole code several times and needed to constantly optimize and figure out new ways of calculating and visualizing the patterns. Multi-threading the whole computer vision system helped release a lot of processing power. An other imporant aspect was the printing vs update speed which became not only technically but also conceptually important for the whole project.



The Drafts

To create the weaving drafts I modeled the application after a loom, trying to emulate the weaving process in the very code itself. The drawdown is calculated by correspondence between the other three parts of the draft. Every pattern row that gets printed corresponds to a specific culmination of the different parts as illustrated in the draft.

The setup has 4 different modes for how the data from the emergent system is read. It gets the current states of each of the entities in an array of zeros and ones. In the first mode, all the states are added together into a single integer and pushed into the front of the ‘Theadling’ as the last one is removed, this results in a horizontal movement in the draft. The second mode takes the whole ‘Threading’  in account, pushing the whole array of states at once and repeating it over the whole grid. The third mode is similar but mirrors every other repeat, a technique commonly used in weaving. The fourth mode is more experimental and takes on the idea of spiral repetition, where things repeat but with a twist. It is just as the second mode but at certain points a sudden shift creates irregularities in the repetitions.


  • gallery-image
  • gallery-image


Backend system

The system responsible for the setup of the weaving draft and with which the audience co-create the patterns is based and developed from so-called ‘Turmites’, of which the most famous example would be ‘Langton's Ant’. It is a universal two-dimensional Turing machine or a cellular automaton with von Neumann's neighborhood capable of displaying emergent behaviour (Gajardo et al., 2002).  In Langtons example ruleset, a virtual ant walks over a square lattice, each cell having one of two states or colours. The Ant moves forward one cell at a time over the grid, flips every trodden cell to the opposite state, but changes direction (either left or right) depending on the colour of the cells. Given enough time the ants path and behaviour goes from simple to complex to emergent order. When more ants are introduced, the patterns, paths and behaviours become ever more complex.

Much research has been done about ‘Turmites’ with more states, colours and rules. For this project I wanted to keep the simplicity and aesthetics of a 2 colour system but extended the use of rules as well as interaction with the grid. The entities present are relative, meaning that they keep an internal direction. They were given a possible inverse rule state as well as designing several different rules or possible ways of reacting. The rules, which instead of being constrained to only left/right were extended into more complex movements. The rules changes under the influence of the interactive part of the installation, increasing complexity and possible emergent behaviours.

Triggered by certain movements, or randomly within certain intervals, the underlying grid black and white cells that drive the movement and dynamics of the system will undergo drastic modifications. Either the whole board will be wiped, or states will be flipped in waves or patterns. This is not only a way of resetting the system and let new interesting movements and patterns emerge, but a deliberate provocation to perhaps think about interaction and possibilities within an environment, or more precisely as being part of a living enmeshed environment. Participating as well as undergoing changes together with not only other biological living beings but the totality of the world.


  • gallery-image
  • gallery-image
  • gallery-image
  • gallery-image
  • gallery-image



The interaction of the installation is meant to be subtle and obscured, but still give a direct response. It is this very tension of control and interaction that is the underlying focus.

Using a webcam and openCV the installation read the movements in the room. As a way of involving the audience in the creation of the patterns, the treadling is navigated by the body movements of the participants. I used 'optical flow' to calculate the direction and velocity of the movements to keep the interaction dynamic and fluid with a focus on motion. The system is based on the Farneback method where the direction and speed of a moving object is calculated or estimated by comparing two frames recorded by the camera.

Direct movements are also what triggers the printing process. Giving the audience a sense of participation and direct influence. When a certain amount of movement is detected, the ‘Threading’ freezes and the printer burns the current row onto the paper.

Over time, movements in different parts of the room are collected, when a certain amount of movement is seen a numerically corresponding entity or ant of the backend system changes its rules.

A final interaction is detecting motion in the Y-axis, as in for example raising ones arms. These movements change the different modes of the draft-setup explained above.


  • gallery-image
Future development

There is a lot of room for continuing this project, which is something I very much intend to do. I feel as if I have set out onto a weird but very inspiring path into areas where I have bearly scratched the surface. I would like to continue engaging with the connections between weaving/textiles and computational/digital technology. My intensions is to keep exploring ways of generating and understanding patterns as well as the more material and manual weaving process. I have already started exploring different ways of handweaving and it is something I feel very strongly that I want to continuing with. Like wise, I think two major concepts I want to engage further with is notational systems and cartographies, and within that the role of imagination, emergence and non-linear understandings of patterns. As a more technical road forward, I am interested in further explore interactive technologies and distributed agency, both in installation form but also through web based media.

Self evaluation

I have been very invested in this project, not only in coding but also in its more esoteric and theoretical aspects. Even though the final piece presented is only covering a small sliver of what I have experimented with, I think it successfully brought my artistic and creative process on an interesting search into areas where I will continually be thrown into inspiring depths of creating, making and thinking. I very much see this work as part of a process with a lot of room for improvement and refinement, both technically and conceptually. A lot of work needs to be done in syncronizing and focusing my thoughts, feelings and intuition with what is actually presented to the public. I need to clarify a more precise language (artistic/technical/written/verbal) that can communicate, carry and frame these ideas and explorations. The most crucial element to adress in this particulary iteration is perhaps the control/influence/participation aspect. While volontarily positioning the work within a murky and subtle interactive technology, further workings with balance, filtration and destillation are the next step. 

What I am most happy and grateful about with this project is discovering vibrant and immensly inspiring artist and research communities working with these topics. And to just name a few: projects such as Penelope, FoAM and events like Alt_CPH/Patterns in Resistance, artists and researchers as for example Ellen Harlizius-Klück, Alex McLean, Robin Kang, Afroditi Psarra, Marinos Koutsomichalis, Audrey Briot and many many more.




Bergson, Henri. “An Introduction to Metaphysics”. T. E. Hulme translation. 2012, New York and London, G. P. Putnam’s sons

Gajardo & Moreira. "Complexity of Langton's ant". 2002. Discrete Applied Mathematics

Grosz, E. A. “CHAOS, TERRITORY, ART Deleuze and the Framing of the Earth”, 2008, New York: Columbia University Press.

Grosz, E. A.. “Thinking the New: Of Futures Yet Unthought.” Symploke 6, no. 1 1998: 38–55.

Grosz, E. A., “The Incorporeal: Ontology, Ethics, and the Limits of Materialism”, 2017, Columbia University Press, New York

Harlizius-Klück, Ellen. “Weaving as Binary Art and the Algebra of Patterns.” TEXTILE 15, no. 2, April 3, 2017: 176–97.

Ingold, Tim, “The life of lines”, Routledge, Abingdon, Oxon, 2015

Ingold, Tim. “The Textility of Making.” Cambridge Journal of Economics 34, no. 1 2010a: 91–102.

Ingold, Tim. “Transformations of the Line: Traces, Threads and Surfaces.” TEXTILE 8, no. 1 2010b: 10–35.

McLean, Alex, Ellen Harlizius-Klück, and Janis Jefferies. “Introduction: Weaving Codes, Coding Weaves.” TEXTILE 15, no. 2 (April 3, 2017): 118–23.

Plant Sadie. “The Future of Looms: Weaving Women and Cybernetics” Body & Society, no. 1 1995: 45–64

Valoma, Deborah. “The Impermanent Made Permanent: Textiles, Pattern and the Migration of a Medium.” Fiberarts Magazine, November/December 2005, 44-9


"Artificial life and cellular automata : Langton’s Ant" Wolfram Notebook, Accessed July 1, 2020.

"langton-turmite-cpp" Forsythe , Accessed July 1, 2020.

"Turmite" Wolfram Mathworld, Accessed July 1, 2020.

"Langton's Ant: Coding Challenge #89,  Accessed July 30, 2020. "

"Optical Flow Test," Adrian Sheerwood, Accessed June 30, 2020.

"Optical Flow," Theo Papatheodorou, Workshops In Creative Coding, 2020.

"ofxThermalPrinter", Patricio Gonzalez Vivo.

"ofxCV", Kyle McDonald.

"ofxPS3EyeGrabber", Christopher Baker.