Skip to content

5. E-textiles

This week I worked on:

  • Producing one digital and one analog soft sensor experimenting with the materials available.
  • Using Arduino to read and understand my soft sensor.
  • Reproducing the same sensor with different materials/techniques (hard/hard hard/soft soft/soft):
  • Creating my one digital and one analogue soft sensor
  • Programming a LED interaction with my soft sensor
  • Integrating it in a swatch using hard-soft connections





Arduino + Gemma M0

Adafruit Gemma M0 Pinout to get familiar with and here is the Datasheet to get started Adafruit Gemma M0 DataSheet


Arduino IDE Setup

  • Downloaded and installed the latest version of Arduino IDE
  • Afrer opening IDE and navigate to the Preferences menu. Accessed it from the File menu in Windows
  • A dialog will pop up, Pasted URL to the new Additional Boards Manager URLs option.

Using with Arduino IDE

  • Opened the Boards Manager from Tools->Board menu.
  • Installed the latest Arduino SAMD Boards (version 1.6.11 or later). Just typed Arduino SAMD in the top search bar, then saw the entry, clicked Install


  • Installed the Adafruit SAMD package to add the board file definitions (Make sure you have Type All selected to the left of the Filter your search... box), typed Adafruit SAMD in the top search bar, clicked Install



quick & dirty prototype


Digital-Islamic Pattern Bracelet

islamic pattern islamic pattern islamic pattern islamic pattern

islamic pattern





so i have designed one


Cultural Knit Stretch Sensor

What i have created inspired from Jordanian culture and heritage







Cultural Knit Stretch Sensor: an analog textile sensor that changes its resistivity when it is pulled and stretched. It is useful for creating variable voltage divider that can be easily read by an Arduino.

The value read will change the blinking frequency of the LED.

  1. Connect one end of the sensor to the 3V pin of the Adafruit Gemma M0. Then you need to connect the other end to ground through a 1 kOhm resistor like shown. sensor

  2. Now connect the analog input pin A5 of the Arduino to the end of the sensor connected to the resistor. sensor

stretch stretch stretch stretch


usually there's a cultural head peace women in Jordan have so i wanted to modify it merging heritage, culture and technology


stretch stretch


I used this code

int sensorPin = A0;    // select the input pin for the sensor
int ledPin = A1;      // select the pin for the LED
int sensorValue = 0;  // variable to store the value coming from the sensor

void setup() {
 // declare the ledPin as an OUTPUT:
 pinMode(ledPin, OUTPUT);

void loop() {
 // read the value from the sensor:
 sensorValue = analogRead(sensorPin);
 // turn the ledPin on
 digitalWrite(ledPin, HIGH);
 // stop the program for <sensorValue> milliseconds:
 // turn the ledPin off:
 digitalWrite(ledPin, LOW);
 // stop the program for for <sensorValue> milliseconds:



Step 1 : ( I used stretch sensor after following this schematic Stretchsensor

Step 2: where I got physical then connected Arduino and verified and uploaded the code

Don't freak out Neil! this is the piece i wanted to use for final project making glove so i didnt want to cut any part from it just in case due to COVID-19 if wouldn't be able to buy online again ...


stretch tried sewing the stretch conductive fabric to the glove as we are in a lockdown due to COVID-19 and added copper to the ends to make it easier connecting it with wires available stretch then I connected the circuit/wires to the copper attached to the conductive stretch fabric and connected arduino with ReadAnalogVoltage Code after modifying it to delay so I can be able to see the change in voltage stretch

Code Example

Use the three backticks to separate code.


  Reads an analog input on pin 0, converts it to voltage, and prints the result to the Serial Monitor.
  Graphical representation is available using Serial Plotter (Tools > Serial Plotter menu).
  Attach the center pin of a potentiometer to pin A0, and the outside pins to +5V and ground.

  This example code is in the public domain.

// the setup routine runs once when you press reset:
void setup() {
  // initialize serial communication at 9600 bits per second:

// the loop routine runs over and over again forever:
void loop() {
  // read the input on analog pin 0:
  int sensorValue = analogRead(A0);
  // Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
  float voltage = sensorValue * (5.0 / 1023.0);
  // print out the value you read:

making my own DIY flex sensor from available materials at the lab due to the pandemic sensor










Names of 1. Conductive Fabric 2. Velostat 3. Felt Fabric 4. Lycra Fabric 5. Felt Fabric


sensor here are sample tests I have done before actually cutting my design just to try the setting and optimize the setting to get prefect results after several iterations

sensor here the setting to laser cut the fabrics needed to make the flexi/stretch sensor ... explained more in tables below

Conductive Fabric laser settings

Output Power Speed Frequency Passes Color
Cut 60 5 1000 Hz 1 Red

Lycra Fabric laser settings

Output Power Speed Frequency Passes Color
Cut 40 2 1000 Hz 1 Red

Felt Fabric laser settings

Output Power Speed Frequency Passes Color
Cut 50 5 1000 Hz 1 Red

Velostat laser settings

Output Power Speed Frequency Passes Color
Cut 50 10 1000 Hz 1 Red

laser cut glove from Batoul Al-Rashdan on Vimeo.


sensor at first i tired so hard making the connections through conductive fabric and then pins and wires but it was unstable due to tension tearing the conductive fabric after several movements cuz has no protective layer on top

as a result i modified the design to be connected internally with real thin wire to maintain a stable connection


remmeber the 3D scan i have done on my hand week06 i used my hand scan to grow voronoi bracelet to extend the glove design and have a 3D printed addition to the packaging of the overall glove by using grasshopper definition

Last update: 2021-10-26