Skip to content

5. E-Textiles — Interactive Textile with Velostat Pressure Sensor and Rhythm LEDs

Research

This project builds upon the Circular Fashion week’s laser-cut floral textile.
The aim was to transform a static textile surface into an interactive e-textile system that responds to pressure and rhythm.

In the early prototyping phase, a digital touch sensor module was tested.
In the final version, the touch sensor was fully removed and replaced with a Velostat-based pressure sensor, allowing interaction to emerge directly from the textile material itself.

The LED behavior is inspired by the 9/8 rhythmic structure commonly found in traditional Turkish music, translating musical rhythm into light through pressure-based interaction.


Tools & Components

  • ATtiny85 microcontroller
  • Arduino IDE
  • 12 × Red LEDs
  • 12 × 220Ω resistors
  • Velostat sheet
  • Copper tape
  • 1kΩ fixed resistor (voltage divider)
  • Conductive wire & jumper cables
  • 3.7V Li-ion battery
  • Textile layers (laser-cut floral surface + backing)

Process & Assembly (Velostat Version)

Velostat pressure pad

Velostat layer placed between textile layers with copper tape electrodes.

Velostat wiring detail

Connection of the Velostat sensor to the voltage divider.

LED resistor stitching

Resistors stitched directly to LEDs on the textile surface.

Cable routing and grouping

Wiring organized into LED groups following the rhythmic structure.

Final assembly under fabric

Final assembly with electronics hidden beneath the textile layer.


Wiring Notes (Final)

  • Velostat functions as a variable resistor
  • One side of Velostat → GND
  • Other side → Analog input (A1)
  • 1kΩ resistor connects A1 to VCC to form a voltage divider
  • LEDs are organized into four groups
  • Each LED uses its own current-limiting resistor
  • All grounds are shared across the system

Arduino Code — Final Velostat Version

```cpp / INTERACTIVE E-TEXTILE — VELOSTAT PRESSURE SENSOR Fabricademy | Week 05 — E-Textiles Microcontroller: ATtiny85 Input: Velostat pressure sensor Output: 9/8 rhythmic LED pattern /

const int sensorPin = A1; const int ledPins[] = {0, 1, 3, 4}; const int pressureThreshold = 400;

bool systemActive = false; bool lastPressState = false;

void setup() { for (int i = 0; i < 4; i++) { pinMode(ledPins[i], OUTPUT); digitalWrite(ledPins[i], LOW); } }

void loop() { int sensorValue = analogRead(sensorPin); bool pressed = sensorValue > pressureThreshold;

if (pressed && !lastPressState) { systemActive = !systemActive; delay(200); }

lastPressState = pressed;

if (systemActive) { playNineEightRhythm(); } else { turnAllOff(); delay(40); } }

void playNineEightRhythm() { int tempo = 140;

digitalWrite(ledPins[0], HIGH); delay(tempo * 2); digitalWrite(ledPins[0], LOW);

digitalWrite(ledPins[1], HIGH); delay(tempo * 2); digitalWrite(ledPins[1], LOW);

digitalWrite(ledPins[2], HIGH); delay(tempo * 2); digitalWrite(ledPins[2], LOW);

digitalWrite(ledPins[3], HIGH); delay(tempo * 3); digitalWrite(ledPins[3], LOW); delay(tempo); }

void turnAllOff() { for (int i = 0; i < 4; i++) { digitalWrite(ledPins[i], LOW); } } Final — Integrated Velostat-Based E-Textile System In the final version of this project, the interaction logic was fully shifted from a digital touch sensor to a material-based sensing system using Velostat.

Pressure applied to the textile surface compresses the Velostat layer placed between conductive copper tape electrodes. This change in resistance is read through a voltage divider and interpreted by the ATtiny85 microcontroller as an activation signal.

Once activated, the system performs a 9/8 rhythmic LED sequence, inspired by traditional Turkish music. The LEDs are spatially distributed across the textile surface and grouped to reflect rhythmic structure rather than linear animation.

Video — Final Working Prototype

Part II — Sound-Reactive Textile (Microphone Sensor) Process & Assembly { width=180 } { width=180 } { width=180 }

{ width=180 } { width=180 } { width=180 } { width=180 }

Video Documentation — Part II (Final)

```