Cognitum/Gesture Language v0.5.0 DTW · CSI

Gesture Language

Sign language recognition via Dynamic Time Warping template matching against WiFi CSI motion signatures.

event gesture_recognized input csi-motion hw esp32-s3
Templates
registered
Recognitions / min
rolling 60s
Mean confidence
last 100 events
ESP32-S3 devices
streaming CSI
DTW threshold
0.72
cost / sample
Aggregate CSI motion
cross-device amplitude · last 5s
streaming
Last recognition
confidence —
awaiting events…
Recognition feed
most recent gesture_recognized events
Open live →
Top templates
by recognition hits
All templates →

Device cluster

Manage devices →

Live recognition

Streaming CSI motion from paired ESP32-S3 devices through the DTW matcher. Watch the matcher resolve the lowest-cost template, then emit a gesture_recognized event with confidence and template_id.

Last recognition
confidence —
awaiting events…
Top match candidates
DTW distance · lower is better
live

Per-device CSI streams

All devices · aggregate
amplitude over time · rolling 5s
sample rate 100 Hz subcarriers 52
Event stream
all gesture_recognized events since page load
TimeGestureTemplateDeviceConfidenceLatency
no events yet

Gesture templates

DTW reference templates trained from CSI motion captures. Each template stores normalized motion signatures; the matcher compares live streams against this library and emits a recognition when the lowest-cost template beats the threshold.

New template
Templates
all categories
Mean accuracy
across filtered set
Total samples
captured signatures
Lifetime hits
recognitions emitted

Train a new template

Capture multiple CSI motion repetitions of a single gesture. The matcher averages the aligned signatures to build a robust DTW reference. Aim for 8–15 clean repetitions across slightly different positions.

Template details
labels and routing for the new gesture
Capture
press record then perform the gesture · auto-stops after 2.0 s
window 2.0s rate 100 Hz
idle
00:00 / 02:00
Capture summary
live as samples are added
samples
0 / 10
coherence
est. acc.
Record at least 8 samples before saving. Discard outliers to keep coherence high.
Tips
improve recognition quality
  • Stand 1–3 m from the ESP32-S3 with line-of-sight when possible.
  • Vary position slightly between samples — left, right, closer, further.
  • Keep the gesture window under 2 s for stable DTW alignment.
  • Avoid recording with other gestures happening nearby — CSI is whole-room.
  • If coherence drops, discard outliers rather than adding more samples.

ESP32-S3 devices

CSI sources for the gesture matcher. Each device captures WiFi Channel State Information at 100 Hz across 52 subcarriers and streams motion features to the recognizer.

Devices
paired
Streaming
CSI active
Mean RSSI
paired devices
Firmware
latest 0.5.0
Paired devices
NameIDIPStatusRSSICSIFirmware

Settings

Tune the DTW matcher, set the confidence floor for emitted events, and wire gesture_recognized events to downstream sinks.

Matcher

controls how strictly the DTW path is compared and accepted
DTW threshold Maximum normalized cost for a candidate to be considered a match. Lower = stricter.
0.72
Confidence floor Events below this confidence are suppressed.
0.75
Window size Sliding window length matched against each template.
Sakoe-Chiba band Constrains the warping path to a diagonal band. Smaller = faster but less flexible.
15

Input

CSI capture pipeline
Source Hardware capture device family.
Sample rate CSI frames per second per device.
Subcarrier selection Which OFDM subcarriers feed the motion feature.
Smoothing EMA smoothing applied before DTW.
0.35

Events

where gesture_recognized events go
Event schema Emitted on every accepted match.
event gesture_recognized field confidence field template_id
Webhook URL POSTs JSON event body. Leave blank to disable.
MQTT topic Publishes the event body to the broker.
Dedupe window Suppress repeats of the same template within this window.