5. E-textiles¶
This week, a door opened for us into the world of e-textiles. It’s a whole new space where we revisited electronics we barely remembered from school and started bringing simple electronic projects to life.
How does it actually work?
E-textiles are textiles that can sense, react, or communicate thanks to tiny electronic components blended right into the fabric. They keep all the softness and flexibility of regular cloth, but gain a little “superpower” through conductive threads, soft sensors, LEDs, and small microcontrollers.
To make e-textiles, you usually work with materials like conductive fabric, conductive yarn or thread, flexible sensors, soft switches, and tiny boards that can be sewn directly into a piece of clothing or a textile sample. Everything has to bend, fold, and move just like fabric does — that’s the whole point.
In this world, input and output become very tactile and physical.
Input is anything the textile feels: touch, pressure, stretch, temperature, movement.
Output is what the textile does in response: light up, buzz, change color, make sound, send a signal, or trigger another action.
Stitch Synth — Jessica Stanley¶
Stitch Synth is a soft, fabric-based musical instrument. Instead of knobs and metal circuits, it uses stitched sensors, conductive threads, and flexible textile modules that snap together. When you touch, press, or bend the fabric pieces, they shape the sound. It feels more like playing with cloth than with electronics — a very tactile, gentle way to make music.
æ sensation map — Ieva Marija Dautartaite¶
æ sensation map is a collection of textile sensors that you can touch, explore, and learn from. Each swatch shows a different way fabric and electronics can work together — through pressure, stretch, or texture. The project is meant to make e-textiles simple and approachable, especially for students and teachers who want hands-on, low-tech experimentation.
Simple LED Circuit with Snap Button Sensor¶
This project describes a basic electronic circuit using an LED light, a 3V battery, a snap button as a sensor, and conductive thread for connections. The initial setup had unstable LED activation, which was resolved by reinforcing connections with additional conductive thread and a copper plate.
Components¶
- LED bulb
- 3V battery (e.g., coin cell battery like CR2032)
- Snap button (used as a touch sensor or switch)
- Conductive thread (for wiring the circuit)
Initial Setup and Issue¶
- Connect the positive terminal of the 3V battery to one side of the snap button using conductive thread.
- Connect the other side of the snap button to the positive leg (anode) of the LED.
- Connect the negative leg (cathode) of the LED back to the negative terminal of the battery using conductive thread.
In this configuration, pressing the snap button should complete the circuit and light up the LED. However, the LED turned on very unstably at first, likely due to loose or high-resistance connections in the conductive thread.
To stabilize the circuit:
- Strengthen the connections by wrapping additional conductive thread around the existing joints (e.g., at the battery terminals, snap button, and LED legs) to reduce resistance and improve conductivity.
- Add a foil at key connection points, such as between the snap button and the thread, to provide a more reliable conductive surface.
After these reinforcements, the LED activates consistently when the snap button is pressed.
Interactive Felt Book with LED Lighting¶
Inspired by my younger son's interactive felt book, where each page allows him to press, pull, or bend elements, I decided to create a similar toy but with integrated LED lighting. I used a family sketch. Below is the process of creating the felt book with a simple LED circuit, including steps for vectorizing the design, laser cutting, and assembling the circuit.
Photo by Mariam Baghdasaryan
sketch by Mariam Baghdasaryan
Process¶
1. Designing the Artwork¶
- I started with a hand-drawn family sketch that held personal significance.
- The sketch was broken down into layers in the simplest way possible to separate individual elements.
- Using CorelDraw, I traced the figures to create vectorized shapes for precise cutting.
- I reassembled the vectorized image to finalize the color scheme for the felt pieces.
2. Laser Cutting the Felt¶
- The vectorized design was cut using a laser cutter with the following settings for felt:
- Speed: 200 mm/s
- Min Power: 20 %
- Max Power: 30 %
- Initially, I planned to make the layers denser by preparing two copies of each piece. However, I later abandoned this idea to keep the design simpler.
- The felt pieces were cut, including a hole in the background to accommodate the LED light.
photo by Mariam Baghdasaryan
photo by Mariam Baghdasaryan
3. Assembling the Felt Design¶
- The cut felt pieces were assembled to recreate the family sketch.
photo by Mariam Baghdasaryan
4. Adding the LED Circuit¶
- A simple circuit was implemented to add lighting:
- Components:
- 3V battery (e.g., CR2032 coin cell)
- LED bulb
- Conductive thread
- Circuit Setup:
- The circuit was primarily assembled on the back of the background felt.
- The positive terminal of the 3V battery was connected to one side conductive thread acting as a touch sensor.
- The other side of the sensor was connected to the positive leg (anode) of the LED.
- The negative leg (cathode) of the LED was connected back to the negative terminal of the battery.
- One sensor was integrated along the arm of one figure in the design to activate the LED when pressed.
photo by Mariam Baghdasaryan
photo by Svetlana Khachatryan
- Testing and Reinforcement:
- Initial testing revealed unstable connections, causing the LED to flicker or fail.
- I reinforced weak points with additional stitches of conductive thread to improve conductivity and reliability.
- After confirming the circuit worked consistently, I added padding (to level out the battery's height) and covered the back with a second layer of felt to conceal and protect the circuit.
video by Mariam Baghdasaryan
Simple LED Circuit Description¶
The circuit is a basic series circuit designed to light up an LED when the sensor is activated:
- 3V Battery: Provides power to the circuit.
- LED Bulb: Lights up when the circuit is closed.
- Conductive Thread: Connects all components, replacing traditional wires. Conductive thread along the figure's arm serves as a touch sensor.
- Operation: Pressing the snap button or the conductive thread sensor completes the circuit, allowing current to flow from the battery through the LED, causing it to light up.
- Reinforcement: Additional conductive thread stitches were added to weak connection points to ensure stable operation.
Simple Circuit for Turning on a Light with an Analog Sensor Using Velostat¶
My kids inpired e-textile week. Photo by Mariam Baghdasaryan
I loved the idea for this week's project to create toys for my kids. To build an analog sensor, I decided to take my daughter's existing toy—a fabric book shaped like a house with a bed where a doll can sleep—and add some light to it. I chose to incorporate a nightlight so the doll could "read a book" before bed.
How the Circuit with an Analog Sensor Using Velostat Works¶
The circuit is designed to turn on an LED nightlight in a fabric book toy using an analog sensor made with velostat. Here's how it works:
Components¶
- A 3V battery powers the circuit.
- An LED bulb serves as the light source.
- Conductive thread connects the components, acting as wires.
- Velostat, a pressure-sensitive conductive material, functions as the analog sensor.
- Snap buttons provide an easy-to-use interface for a child.
Circuit Operation¶
- The circuit is a simple series loop: the battery connects to the LED, which is linked to the velostat sensor via conductive thread, and back to the battery.
- Velostat changes its resistance based on applied pressure. When a child presses the snap buttons, the velostat compresses, reducing its resistance and allowing current to flow.
- This completes the circuit, turning on the LED to act as a nightlight.
Analog Sensor Behavior¶
- The velostat acts as an analog sensor because its resistance varies with pressure. Light pressure results in higher resistance and a dimmer LED, while firm pressure lowers resistance, making the LED brighter.
- The snap buttons don’t need to be fully closed; partial pressure is enough to activate the circuit, making it child-friendly.
This setup creates an interactive, pressure-sensitive nightlight for the doll in the fabric book, enhancing the toy’s play value.
photo by Mariam Baghdasaryan
Analog Sensor Behavior¶
- The velostat acts as an analog sensor because its resistance varies with pressure. Light pressure results in higher resistance and a dimmer LED, while firm pressure lowers resistance, making the LED brighter.
- The snap buttons don’t need to be fully closed; partial pressure is enough to activate the circuit, making it child-friendly.
video by Mariam Baghdasaryan
Experimentals with Adafruit¶
Touch Sensor Experiment with Adafruit Flora and NeoPixel¶
Components and Setup¶
In this experiment, we connected two simple touch sensors to Adafruit Flora to create a basic digital input system that controls a NeoPixel LED.
When the two sensor contacts are connected (touched together), the LED changes color.
Connections:
- Adafruit Flora connected to the laptop via USB
- Flora GND → one side of the touch sensor
- Flora TX (pin 1) → the other side of the touch sensor
- Flora D6 → NeoPixel data input (arrow on the pixel)
- Flora 3.3V → NeoPixel +
- Flora GND → NeoPixel –
In this setup, the two sensors act like a switch.
When they touch, the circuit between TX (pin 1) and GND closes, and Flora detects a LOW signal.
When they are separated, the signal is HIGH due to the internal pull-up resistor.
How It Works¶
The LED color changes depending on whether the two conductive sensors are connected:
- Sensors connected (touched): the NeoPixel shows a soft blue-white color (Color(200, 211, 254))
- Sensors disconnected: the NeoPixel turns red (Color(250, 0, 0))
This experiment demonstrates how Adafruit Flora can detect digital input from simple conductive materials and use it to control color changes on a NeoPixel.
Code¶
#include <Adafruit_NeoPixel.h>
// Parameter 1 = number of pixels in strip
// Parameter 2 = pin number
// Parameter 3 = pixel type flags
Adafruit_NeoPixel strip = Adafruit_NeoPixel(1, 6, NEO_GRB + NEO_KHZ800);
const int sensorPin = 1; // One sensor connected to TX pin, the other to GND
int sensorState = 0; // Variable for reading the sensor connection status
void setup() {
strip.begin();
strip.show(); // Initialize all pixels to 'off'
pinMode(sensorPin, INPUT);
digitalWrite(sensorPin, HIGH); // Enable internal pull-up resistor
}
void loop() {
sensorState = digitalRead(sensorPin);
if (sensorState == LOW) {
// Sensors connected — blue-white light
strip.setPixelColor(0, strip.Color(200, 211, 254));
strip.show();
}
else {
// Sensors disconnected — red light
strip.setPixelColor(0, strip.Color(250, 0, 0));
strip.show();
}
delay(50);
}
Results¶
When the two conductive sensors touched each other, the LED emitted a soft blue-white color. When they were separated, the LED turned red. This confirmed that Adafruit Flora successfully detected the connection between the two touch sensors as a digital input signal.
Analog Touch Sensor with Adafruit Flora and NeoPixel¶
Components and Setup¶
In this experiment we used Adafruit Flora, Flora NeoPixel, and a Velostat-based analog touch sensor.
The goal was to make the LED change color depending on the pressure on the Velostat.
Connections:
- Adafruit connected to the laptop via USB
- Adafruit GND → FloraNeoPixel –
- FloraNeoPixel + → Adafruit 3.3V
- FloraNeoPixel arrow (DIN) → Adafruit D6
- Resistor → touch sensor
- Resistor → Adafruit 3.3V
- Resistor → D9
- Adafruit GND → second side of the touch sensor
You can see the connection diagram and video demonstration below.
How it Works¶
We used a Velostat pressure sensor to control the color of the NeoPixel.
The analog input from the Velostat changes depending on the pressure — the more pressure, the lower the resistance, and therefore the smaller the analog value.
The Arduino reads the sensor value and adjusts the color of the NeoPixel accordingly:
- No touch → soft gray-yellow
- Light touch → bright pinkish yellow
- Medium pressure → red
- Strong pressure → blue-green
#include <Adafruit_NeoPixel.h>
#define PIXEL_PIN 6 // Pin for NeoPixel
#define NUM_PIXELS 1 // Number of LEDs
#define SENSOR_PIN A9 // Velostat analog input pin
Adafruit_NeoPixel strip(NUM_PIXELS, PIXEL_PIN, NEO_GRB);
void setup() {
Serial.begin(9600); // For Serial Monitor readings
strip.begin();
strip.show(); // Turn off all pixels on start
}
void loop() {
int sensorValue = analogRead(SENSOR_PIN); // Read Velostat sensor
Serial.println(sensorValue); // Print values for calibration
// Adjust threshold values after testing in Serial Monitor
if (sensorValue > 950) {
// No touch — soft gray-yellow
setColor(30, 30, 30);
}
else if (sensorValue < 850 && sensorValue > 500) {
// Light touch — bright yellow-pink
setColor(0, 160, 50);
}
else if (sensorValue < 500 && sensorValue > 200) {
// Medium touch — red
Serial.println("RED LIGHT");
setColor(205, 0, 0);
}
else {
// Strong touch — blue-green
setColor(0, 180, 255);
}
delay(50); // Slight delay to smooth out readings
}
void setColor(uint8_t r, uint8_t g, uint8_t b) {
strip.setPixelColor(0, strip.Color(r, g, b));
strip.show();
}
Results¶
When tested with the Serial Monitor, the analog readings from Velostat changed according to touch pressure. These readings successfully controlled the NeoPixel LED color transitions from gray-yellow → pink → red → turquoise, depending on how much pressure was applied.
By Mariam Baghdasaryan












