eva case study

EVA Case Study Deep-Dive | Aman Sahu

EVA: AI Voice Showroom

Siemens Energy | 2023-2024

⚠️ CONFIDENTIAL PROJECT: Due to NDA restrictions, detailed screenshots and videos cannot be publicly displayed.

Project Overview

Built an AI-powered voice assistant controlling 6 synchronized displays across 2 networked PCs for high-stakes client demonstrations at Siemens Energy factory showroom.

Impact: Zero demo failures across 6 months of weekly client presentations, supporting 3 languages with 95% voice recognition accuracy.

The Challenge

Siemens Energy needed to transform their factory tour experience to impress global clients and demonstrate digital capabilities during high-value sales presentations.

Business Requirements
  • Every demo = potential €10M+ deal
  • Multilingual: German, English, Hindi
  • Non-technical operation for sales staff
  • Zero-failure tolerance
Technical Constraints
  • 6 independent displays simultaneously
  • 2 PCs Master-Slave Sync
  • 3D Hologram + 2 Projectors
  • 1-month solo dev deadline

The Solution

Architected a voice-controlled showroom system with master-slave architecture, dual communication channels, and physical backup controls.

Voice Command Flow Example:
User (German): "Hey EVA, zeige mir die Firmengeschichte auf Display 3"
Logic: Azure Speech (German -> English) -> Master PC Parses -> Photon Routes to Display 3 -> Azure TTS (English -> German Response).
Result: Display 3 updates instantly while EVA responds in German.

Architecture Decisions

Decision #1: Master-Slave Pattern

Problem: Coordinating 6 displays across 2 PCs without state conflicts or synchronization bugs.

Solution: Centralized all decision-making in master PC, slave PC only renders content.

  • Single source of truth eliminates state conflicts
  • 70% faster debugging (centralized logic)

Decision #2: Dual Communication Channels

Problem: Photon Network alone creates single point of failure for critical demos.

Solution: Implemented redundant communication via Photon (real-time) + REST API (polling backup).

Result: 95% auto-reconnect success rate. Average reconnect time: 3 seconds.

Decision #3: Multilingual Pipeline

Problem: Support German, English, and Hindi without 9 translation pairs.

Solution: Route all processing through English as the intermediate "Universal Language".

Result: 95% accuracy and zero language-related failures.

Technical Implementation

State Machine (Display Coordination)

public enum DisplayState { IDLE, ON, DISPLAY }

public class DisplayController {
    private DisplayState _currentState = DisplayState.IDLE;
    
    public void ProcessCommand(string command) {
        switch (command) {
            case "SHOW_CONTENT":
                _currentState = DisplayState.DISPLAY;
                ShowSpecificContent(contentId);
                break;
            // Deterministic transitions prevent conflicts
        }
    }
}

Network Failure Handling

private async void PollServerState() {
    while (true) {
        try {
            var state = await RestAPI.GetMasterState();
            ApplyState(state);
            await Task.Delay(1000); // 1s Polling
        } catch { await AttemptAutoReconnect(); }
    }
}

The Results

MetricResult
ReliabilityZero demo failures (6 months)
Accuracy95% Voice Recognition (Azure)
Training<1 hour for non-technical staff
Setup Time100% reduction (Manual vs Voice)
"The voice-controlled showroom was the highlight of our factory tour. It demonstrated Siemens' digital capabilities better than any presentation we've seen."
— CTO, Major Energy Company

Tech Stack

Unity 2020 LTS | C# .NET 4.8 | Photon Network | Azure AI | REST API | State Machine Pattern

Current Status & Lessons Learned

Successfully deployed for 6 months. Currently offline due to hardware fatigue—a key learning in budgeting for enterprise-grade hardware for mission-critical, high-load operations.

← Back to Portfolio