dreamstack/docs/fabric-display-overview.md

79 lines
4.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Interactive Fabric Display — Overview
> Based on research from:
> - [Large-area display textiles integrated with functional systems (Nature, 2021)](https://www.nature.com/articles/s41586-021-03295-8)
> - [Lighting Fabrics - A New Approach for Flexible Light Sources (LED Professional)](https://www.led-professional.com/resources-1/articles/lighting-fabrics-a-new-approach-for-flexible-light-sources)
## What These Articles Describe
**Nature paper (Shi et al., 2021):** A breakthrough in **woven electroluminescent (EL) display textiles**. They weave conductive weft fibres and luminescent warp fibres together, creating ~500,000 EL pixel units at each weft-warp contact point, spaced ~800µm apart. The result is a 6m × 25cm flexible, breathable, machine-washable display fabric. They demonstrated an integrated system with a **textile keyboard** (capacitive touch) and **textile power supply** — essentially a full wearable communication device.
**LED Professional (Carpetlight):** A commercial approach to **LED-on-fabric lighting** — miniature PCBs on rip-stop polyamide, connected by conductive embroidered threads. Controllable via **DMX protocol**, tunable white (28005400K), and extremely lightweight (300g for a 2×1ft panel). Currently used in film/TV lighting.
---
## How to Build an Interactive Display from These Concepts
There are **three tiers**, depending on how deep you want to go:
### Tier 1: Accessible Now (LED Matrix on Fabric)
Use commercially available components to approximate the research:
| Component | Product | Est. Cost |
|---|---|---|
| **LED matrix** | WS2812B/SK6812 flexible LED strips or panels (e.g., 16×16 NeoPixel matrix) | $1560 |
| **Substrate** | Sew/bond onto rip-stop nylon or felt | $510 |
| **Controller** | ESP32 or Raspberry Pi Pico W | $515 |
| **Touch input** | Capacitive touch sensors (MPR121) or conductive thread embroidery | $515 |
| **Power** | LiPo battery + boost converter | $1020 |
**The architecture:**
1. **Addressable LED grid** sewn onto fabric → each LED is a "pixel"
2. **Capacitive touch zones** using conductive thread (like the Nature paper's keyboard)
3. **ESP32 running a DreamStack bitstream** → the display state is a signal graph, touch events mutate it, and the whole thing streams over the relay for remote interaction
### Tier 2: Electroluminescent (Closer to the Nature Paper)
Use **EL wire/panels** woven or sewn into fabric:
- **EL wire** segments as individual addressable lines
- **AC inverter** with multiplexer (e.g., custom PCB or commercial EL sequencer)
- **Woven grid pattern** — horizontal EL wires crossed with conductive warp threads
- Achievable pixel resolution: ~510mm pitch (vs. the paper's 800µm)
### Tier 3: Full Research Replication
This requires lab equipment — ZnS:Cu phosphor-coated fibres, ionic gel transparent electrodes, and an industrial loom. Not practical outside a university materials science lab.
---
## Where DreamStack Fits
This is a perfect use case for bitstream streaming:
```
┌─────────────────────────────┐
│ Fabric Display (ESP32) │
│ ┌───────────────────────┐ │
│ │ LED Matrix State │──┼──► DreamStack Bitstream
│ │ (signal per pixel) │ │ (streams over relay)
│ ├───────────────────────┤ │
│ │ Touch Sensor Input │──┼──► Mutations
│ └───────────────────────┘ │
└─────────────────────────────┘
▲ │
│ ▼
Remote Control Viewer
(phone/web) (any screen)
```
- The **fabric display's pixel state** is a DreamStack signal array
- **Touch on the fabric** generates mutations that stream upstream
- A **remote viewer/controller** (phone, web) can also push state down to the fabric
- Conflict resolution handles simultaneous fabric-touch + remote-touch
---
## Possible Next Steps
1. **A DreamStack `.ds` program** that models a fabric display grid as a streaming signal matrix
2. **An ESP32 firmware sketch** for driving a WS2812B matrix with capacitive touch, speaking the bitstream protocol
3. **A web-based simulator/controller** — a visual grid that mirrors the fabric display in real-time over the relay