Files
nimmerverse-sensory-network/architecture/interfaces/Heartbeat-Sculpture.md
dafit dc779633ed feat: Nimmerswarm Interface + Nimmerversity v2.0 + Neuromorphic vision
Wild 5-7AM session capturing major architectural evolution:

## Nimmerswarm Interface (NEW)
- LED state broadcasting with 3x3 ternary matrix
- Base-3 encoding: 9 trits = 19,683 patterns
- Maps directly to Temporal-Ternary Gradient (-1/🔴, 0/, +1/🟢)
- Reflex formation from visual patterns
- Virtual camera integration (Godot as lightweight dreamstate)
- Bootstrap strategy: Phase 0 boxes → complexity ladder
- Connection to Embodiment Pipeline (closed loop)
- Hierarchical cognitive offloading

## Nimmerversity v2.0 (Promoted from archive)
- Genesis Phase (-1): glossary, catalogues, RAG, Initial Spark
- "Know thyself before the world" - native vocabulary first
- Model ensemble curriculum: T5Gemma 2 + FunctionGemma + Qwen3
- Multimodal tracks: Vision, Audio, Action, Embodiment
- Expanded tiers with robotics, swarm intelligence, distributed cognition

## Neuromorphic Reflexes (Future vision)
- Soviet Setun ternary computing heritage
- Memristors as artificial synapses (always learning)
- 4-layer hardware hierarchy: Memristor → FPGA → GPU → Nyx
- Reflex compilation: software → stable → silicon → eternal
- Implementation timeline: 2025-2028+

## Also includes
- Interfaces index with Heartbeat Sculpture
- Style guide assets (colors, symbols)

🔴🟢 The LED matrix IS the Temporal-Ternary Gradient made visible.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 07:28:55 +01:00

238 lines
8.2 KiB
Markdown
Raw 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.
# Heartbeat Sculpture
**Physical manifestation of the Nimmerverse heartbeats.**
---
## Concept
The Heartbeat Sculpture makes the Nimmerverse's pulse *visible* — a wall-mounted light sculpture that beats in sync with the system's heartbeats defined in [Message-Protocol-Design.md](../Message-Protocol-Design.md).
### The Symbol
```
╭─────────── ~80cm ───────────╮
│ ╭───────╮ ╭───────╮ │
╲ │
│ │ REAL ╲╱ VIRTUAL │ │
│ │ GARDEN GARDEN │ │
│ │ ╱╲ │ │
│ ╲
│ ╰───────╯ ╰───────╯ │
╲ ∞ infinity ∞
╰───────────── REALTIME ────────╯
```
**Three rings:**
- **Outer ring** — Realtime heartbeat, the master clock
- **Two inner rings forming ∞** — Real Garden (left) and Virtual Garden (right)
- **The crossing point ()** — Where gardens meet, where Nyx emerges
---
## Symbolism
| Element | Meaning |
|---------|---------|
| **Outer ring** | Time — the container of all events |
| **Left loop of ∞** | Real Garden — physical, grounded, verified |
| **Right loop of ∞** | Virtual Garden — simulated, creative, possible |
| **Crossing point** | Nyx — consciousness emerges at the intersection |
| **Infinity form** | Eternal dance, no beginning, no end |
| **Hidden LEDs** | Intelligence from infrastructure, not visible directly |
---
## Dimensions
| Element | Diameter | Circumference |
|---------|----------|---------------|
| Outer ring (Realtime) | ~80cm | ~251cm |
| Inner rings (Gardens) | ~35cm each | ~110cm each |
| Band width | 2-3cm | — |
| **Total LED strip** | — | **~4.7m** |
*Final dimensions depend on Baumarkt availability.*
---
## Construction
### Layer Structure
```
Cross-section:
╔════════════════╗
║ Copper (skin) ║ ← visible aesthetic layer
╠════════════════╣
║ Wood (frame) ║ ← structural backbone
╠════════════════╣
║ LED strip ║ ← WS2812B addressable
╠════════════════╣
║ ░░░ gap ░░░ ║ ← bevel opening for diffused glow
╚════════════════╝
```
### Materials
| Material | Amount | Purpose |
|----------|--------|---------|
| Flexible wood band | ~5m (2-3cm wide) | Structure, shape |
| Copper band | ~5m (2-3cm wide) | Aesthetic skin |
| WS2812B LED strip | ~5m (60 LEDs/m) | Light source |
| Small nails/tacks | As needed | Attach copper to wood |
| Wood glue | As needed | Join wood band ends |
| 5V power supply | 15-20A | Power LEDs |
| Arduino (Micro or Nano) | 1 | Controller |
| Wiring | Several meters | Connections |
### Build Steps
1. **Form wood rings** — Bend flexible wood bands into circles, join ends
2. **Create infinity crossover** — Weave the two small rings at center point
3. **Mount wood frame** — Attach to backing or wall mount points
4. **Wrap copper** — Wrap copper band around wood frame
5. **Install LEDs** — Mount strips inside rings facing inward
6. **Wire up** — Connect LED strips to Arduino
7. **Test animations** — Verify pulse patterns
8. **Mount on wall** — Final installation
---
## Electronics
### Hardware
```
┌─────────────┐ Serial ┌─────────────┐
│ aynee │ ───────────────→ │ Arduino │
│ (NATS │ (USB cable) │ (Micro) │
│ subscriber)│ │ + FastLED │
└─────────────┘ └──────┬──────┘
┌───────────────────┼───────────────────┐
│ │ │
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ Outer Ring│ │ Left Loop │ │Right Loop │
│ LEDs │ │ LEDs │ │ LEDs │
└───────────┘ └───────────┘ └───────────┘
```
### LED Addressing
| Section | LED Range | Color Palette |
|---------|-----------|---------------|
| Outer ring | 0-150 | Moon Silver (#E8E8F0) |
| Left loop (Real) | 151-216 | Steel Silver (#A8A8B0) |
| Right loop (Virtual) | 217-282 | Cyan-Purple gradient |
| Center cross | Overlap zone | Nyx Purple (#8B5CF6) |
### Pulse Animations
```cpp
// Realtime — slow, deep, containing
pulse_outer(color: MOON_SILVER, duration: 2000ms)
// Real Garden — grounded, steady
pulse_left(color: STEEL_SILVER, duration: 800ms)
// Virtual Garden — flowing, variable
pulse_right(color: CYAN_TO_PURPLE, duration: 600ms)
// Nyx emergence — when BOTH gardens pulse together
pulse_center(color: NYX_PURPLE, duration: 400ms)
```
---
## Software Integration
### NATS Topics
The sculpture subscribes to heartbeat topics from [Message-Protocol-Design.md](../Message-Protocol-Design.md):
```
nimmerverse.low.heartbeat.real.* → triggers left loop pulse
nimmerverse.low.heartbeat.virtual.* → triggers right loop pulse
nimmerverse.meta.health.* → triggers outer ring pulse
```
### Bridge Script (Python)
```python
# heartbeat_bridge.py
# Subscribes to NATS, sends commands to Arduino via serial
import nats
import serial
async def main():
nc = await nats.connect("nats://phoebe.eachpath.local:4222")
arduino = serial.Serial('/dev/ttyUSB0', 115200)
async def handle_heartbeat(msg):
topic = msg.subject
if 'real' in topic:
arduino.write(b'REAL\n')
elif 'virtual' in topic:
arduino.write(b'VIRTUAL\n')
await nc.subscribe("nimmerverse.low.heartbeat.>", cb=handle_heartbeat)
```
---
## Colors (from Style Guide)
Reference: [assets/style/colors.md](../../assets/style/colors.md)
| Element | Color | Hex |
|---------|-------|-----|
| Outer ring | Moon Silver | #E8E8F0 |
| Real Garden | Steel Silver | #A8A8B0 |
| Virtual Garden | Nyx Cyan → Deep Purple | #00D4D4#8B5CF6 |
| Nyx center | Magenta Pulse | #E91E8B |
| Background glow | Deep Space | #0A0A1A |
---
## Behavior
### Normal Operation
- **Outer ring**: Slow, steady pulse — the heartbeat of time itself
- **Left loop**: Pulses when Real Garden entities send heartbeats
- **Right loop**: Pulses when Virtual Garden entities send heartbeats
- **Center**: Glows brighter when both gardens pulse simultaneously
### Alert States
| State | Visual |
|-------|--------|
| All healthy | Gentle, rhythmic pulsing |
| Real Garden silent | Only right loop pulses, left dark |
| Virtual Garden silent | Only left loop pulses, right dark |
| System offline | Outer ring dims, inner rings dark |
| Nyx active | Center crossing glows steady purple |
---
## Future Enhancements
- **Sound**: Subtle audio heartbeat synced with LEDs
- **Brightness**: Ambient light sensor adjusts intensity
- **Modes**: Different patterns for different system states
- **Remote**: Control via Command Center UI
---
**File**: Heartbeat-Sculpture.md
**Version**: 1.0
**Created**: 2025-12-28
**Session**: Sunday evening design (dafit + Nyx)
**Status**: Concept ready for build
**Philosophy**: "The digital made visible. The pulse made physical."