Machine Hacking: Alginate Bioyarn Extruder#

Thoughts and Observations#

Synthetic, petroleum based, non-degradable fibres, break down continuously during their life cycle being converted into microplastics that can be found in oceans, soil, food and our own bodies. Microplastics can range from small visible plastics to particles the size of a cell, with the ability to get into our bloodstream. The implications of the infiltration of microplastics into the body is unknown. A study at the University of Victoria on microplastic concentration, based on the testing of 26 individual food items, found that on average a person consumes approximately 70,000-121,000 microplastic particles per year.

Natural fibres are a solution to this pollution, however the costs of land-use and water for crops perpetuates the use of synthetic fibres.

Organic biosynthetic fibres are a solution to microplastic pollution. Mixing with natural fibres, such as the ones found now with natural and synthetic fibre blends, would provide a recyclable, biodegradable and durable alternative to these composites.

Creating a bioyarn to substitute the use of nylon, silicon and synthetic polymer based threads is currently at the beginning stages of exploration. Companies like AlgiKnit are exploring the ways in which biomaterial fabrication is the next step in the evolution of the fashion industy.

After many alginate based recipes for exploring manual extrusion into yarn samples from various syringes and piping bags, the consistency and continuous extrusion of the yarn was not smooth and automating this output for better control became the solution.

Tiny fibers create unseen plastic pollution
Study sheds light on human consumption of microplastics


After many manual syringe extrusion tests to create various organic forms and a long algae thread to be used for weaving and knitting, the conclusion was to create a machine to automate this process, as it would allow for even consistency of the yarn throughout its length of extrusion by applying continuous, uniform pressure.



Qty Description Price Link
1 Syringe (60ml) 2 euro local pharmacy
1 3D Printer + PLA Filament various local FabLab or 3D printing studio
2 Large tuppers (20cm x 10 x 7 cm aprox) 4 euro local market
2 Acrylic laser cut aquariums (final prototype) N/A N/A
3 Metal Rods 6 euro local hardware store
1 MDF Board 300 x 300 x 4mm (laser cut bobbin) various local FabLab or repurposed
6 Cap nuts 3 euro local hardware store
2 Aluminum tube (240mm x 15 O.D x 13 I.D) 5 euro
1 Aluminum Tube (240mm x 12 O.D x 9 I.D) 5 euro local FabLab or hardware store
2 Stepper motor of type 28BYJ-48 + driver 5 euro
1 Arduino Microcontroller 20 euro
1 Arduino CNC Shield 6,99 euro



Bioyarn Machine: 3D Printed Parts

Acrylic Box

Hilo Machine

CNC Shield#

Shield that fits over the arduino uno/mega board and can be used to drive a CNC(Computer Numerical Control) machine or a 3d printer.
The basic configuration is already made, though you need to work on the connections to motors and sensors.
The shield allows external power supply upto 36V for powering powerful motors.
The CNC shield also has pins for setting end stops, hold & resume operation.

• GRBL 0.9 compatible. (Open source firmware that runs on an Arduino UNO that turns G-code commands into stepper signals)
• PWM Spindle and direction pins
• 4-Axis support (X, Y, Z , A-Can duplicate X,Y,Z or do a full 4th axis with custom firmware using pins D12 and D13)
• 2 x End stops for each axis (6 in total)
• Coolant enabled
• Uses removable A4988 or DRV8825 compatible stepper drivers
• Jumpers to set the Micro-Stepping for the stepper drivers. (Some drivers like the DRV8825 can do up to 1/32 micro-stepping)
• Stepper Motors can be connected with 4 pin molex connectors or soldered in place.
• Runs on 12-36V DC.



/* MotorCode by 
Ioannis Romanos Vogdanis 
for ceramic extruder 
February 2019

To control the motor open the serial monitor and set the BAUD rate at 115200 (bottom right) and no line ending. 
The keyboard keys “ 
v , s , f , b are used to send commands to the motor.
v = velocity range from 10 - 2000;
s = start/stop the motor
f = forward
b = backward

int ButtonStart = 7;
int ButtonDir = 6;
int enablePin = 8;
int dirPin = 5;
int stepPin = 2;
int POT = A0;
int ms1 = 8;
int ms2 = 9;
int ms3 = 10;

int stepDelay = 0;
bool start = true;
bool dir = false;
bool enableMot = 0;

int StartbuttonPushCounter = 0;   // counter for the number of button presses
int StartbuttonState = 1;         // current state of the button
int StartlastButtonState = 1;     // previous state of the button

int DirbuttonPushCounter = 0;   // counter for the number of button presses
int DirbuttonState = 1;         // current state of the button
int DirlastButtonState = 1;     // previous state of the button

int bufferSize = 20;
char buff[20];

void setup() {
  // put your setup code here, to run once:
  pinMode(ButtonStart, INPUT_PULLUP);
  pinMode(ButtonDir, INPUT);
  start = 0;
  Serial.println("---Paste Extruder---");

int index = 0;
char c;
int gotSpeed = 0;
int mspeed = 10000;

void loop() {

  if(Serial.available() > 0){
    c =;

  c = '0';



void runBuffCommand(char c){

   if(c == 's'){
        start =! start ;
        Serial.print("Start : ");Serial.println(start);
    if(c == 'f'){
        dir = 1 ;
        Serial.println("Dir forward");
     if(c == 'b'){
        dir = 0 ;
        Serial.println("Dir backward");
      if(c == 'e'){
        enableMot =! enableMot;
        Serial.print("EnableMot : "); Serial.println(enableMot);
     if(c == 'v'){
      gotSpeed = 0;
      Serial.println("Set speed 10-10000ms");
        while(gotSpeed == 0){
            mspeed = Serial.parseInt(); 
            gotSpeed = 1;
            c = ' ';
        Serial.print("Setting speed : ");Serial.println(mspeed); 

void motorConfigue(){

  if(start == 1){
    digitalWrite(dirPin, dir);
  if(start == 0){
//    digitalWrite(enablePin,HIGH); 
    //digitalWrite(dirPin, dir); 

  stepDelay = map(analogRead(POT),0,1024,500,10000);


void motorStep(){
    if(start == 1){
       // delayMicroseconds(stepDelay);
       // delayMicroseconds(stepDelay);

Tests with Bioyarn + Hilo Machine Hack#

See HILO Machine Documentation for set up.

The process consists of beginning the extrusion from the arduino command window, catching manually the algae thread from the first basin, then passing it over and under the pulley system accordingly to be rinsed in the water basin, threading it and knotting it onto the bobbin lead on the spinning machine and finally choosing the desired voltage from the alternate current addapter to control the speed.

Bioyarn from Extruder from Catherine Euale on Vimeo.


The consistency of the thread was continously kept even by the extusion and spinning of the yarn.

Once the yarn has been spun out of the curing (calcium chloride and water) basin and distilled water basin, the yarn left extended out to dry on a clothing line was flexible and depending on the alginate recipe used it ressembled a nylon thread, or a silicone / synthetic yarn.

The machine hack was not successful upon many tests, the yarn makes its full curing process from the exterior, drying and fusing onto the layers below when spun into a bobbin.

Further prototypes of a spinning machine hack should include a system for catching and threading the yarn to the spinning device.

The spinning could control the speed of the extrusion, by adding sensors for measuring the resistance of the yarn as it is spun.

The bobbin should be something that can allow for air circulation to properly finalize the curing process of the yarn and to maintain it’s shape as it cures.

Tests without Hilo Machine#

Leaving the Hilo Machine and continuing to produce bio-yarns with the syringe extruder proved successful as a prototype. The second prototype of this machine is only different from the first in that the basisn were cut in repurposed acrylic in specific dimensions, and the 3D printed parts were redesigned for fitting larger syringes.

The CNC shield needs to be perfectly calibrated to avoid overheating and burning the circuit board.

Further prototyping for this machine would be necessary in order to be able to adjust the size of the syringe that can be used by tightening and loosening the base.

The machine could have a sensor for measuring the tension and resistance of the yarn as it is extruded, thus being able to regulate the required speed of extrusion.

It may also prove beneficial to have a sliding axis for the extruder (similar to a printer) to allow the yarn to have a wider surface area to rest while curing in the first basin.

An appropriate attachment of the CNC shield, arduino and stepper motor circuit to the machine is also necessary.

The process to create a continuous thread involved many tests not only of the consistency of the mixture, but also of how to throughly remove air bubbles in the mixture for its extrusion to be uninterrupted.

The final process allowed the creation of a 2 meter yarn as the maximum length before the extrusion became interrupted, this however was also due to the speed of the extrusion and resistance of the syringe plunger.

Untitled from Catherine Euale on Vimeo.

Bioyarn Syringe Extruder test #1 from Catherine Euale on Vimeo.

Bioyarn Extruder Test # 2 from Catherine Euale on Vimeo.

Bioyarn Extruder from Catherine Euale on Vimeo.


The yarn needs to be rinsed almost immediately after being fully submerged in the calcium chloride solution, the thinner the yarn, the more immediate the rinse must be to prevent over-calcification.

When adding elements such as activated charcoal to the mixture, the amounts of plasticicer must change as these added pigments or powders can change the reaction with calcium chloride overdrying the yarn.