Readme
# TRIPOD WAVEFORM
### Mobile-First XY Pad Synthesizer
> Touch the pad. X = frequency. Y = amplitude. Play anything.
Two standalone HTML files. No dependencies. No build step. Open in browser.
**Author:** David Lee Wise (ROOT0) / TriPod LLC
**License:** CC-BY-ND-4.0
---
## Files
| File | Description |
|------|-------------|
| `waveform-v2.html` | **Current** — multitouch, 4-voice polyphony, full FX chain, 3 viz modes |
| `waveform-v1.html` | Original — single-touch, clean, lighter weight |
---
## How to Use
1. Open `waveform-v2.html` in a browser (Chrome / Safari)
2. Touch and drag on the pad:
- **Left → Right** = frequency (A1 at 55 Hz → C7 at 2093 Hz)
- **Top → Bottom** = amplitude (loud at top, quiet at bottom)
3. Multiple fingers = multiple simultaneous voices (up to 4)
4. Lift fingers = notes release via ADSR envelope
Works on iPhone/iPad (tested with safe-area insets). Mouse works on desktop.
---
## v2 Features
### XY Pad
- **4 simultaneous voices** — each touch is an independent oscillator
- Touch point shown as crosshair + frequency label (`A4 440Hz`)
- Smooth glide when dragging (mode-dependent lag time)
### Wave Types
| Button | Waveform |
|--------|----------|
| Sin | Pure sine — smooth, clean |
| Tri | Triangle — slightly brighter |
| Saw | Sawtooth — harsh, buzzy, classic synth |
| Sqr | Square — hollow, reedy |
### ADSR Envelopes
| Preset | Attack | Decay | Sustain | Release | Sound like |
|--------|--------|-------|---------|---------|-----------|
| Pluck | 5 ms | 150 ms | 30% | 200 ms | Plucked string |
| Pad | 400 ms | 300 ms | 70% | 800 ms | Slow swelling chord |
| Perc | 1 ms | 80 ms | 0% | 50 ms | Percussion, drums |
| Organ | 10 ms | 10 ms | 100% | 10 ms | Organ, sustained |
### Effects (toggleable)
| FX | Effect |
|----|--------|
| Delay | 330ms delay, 40% feedback |
| Drive | Waveshaper soft/hard clip distortion |
| Verb | Convolution reverb (2.5s impulse) |
| LFO | Low-frequency oscillator vibrato (5 Hz, ±20 Hz pitch mod) |
### Play Modes
| Mode | Behavior |
|------|----------|
| Free | Continuous pitch, any frequency |
| Snap | Snaps to nearest equal-tempered note |
| Penta | Snaps to pentatonic scale |
| Octave | Locks to octaves of A (55/110/220/440/880/1760 Hz) |
### Visualization Modes
| Mode | What it shows |
|------|--------------|
| Wave | Scrolling oscilloscope waveform + frequency bars at bottom |
|