akdeb/ElatoAI

Realtime Voice AI with 100+ Models on Arduino ESP32 with Secure Websockets and Edge Functions for AI Companions, and Devices

What it solves

ElatoAI enables the creation of real-time voice AI devices using affordable ESP32 hardware. It bridges the gap between high-level AI speech models (like OpenAI's Realtime API or Gemini Live) and low-power IoT devices, allowing users to build physical AI toys or assistants that can engage in long, uninterrupted voice conversations without needing expensive onboard processing.

How it works

The system uses a three-tier architecture:

  1. ESP32 IoT Client: A hardware device that captures audio, compresses it using the Opus codec, and sends it via Secure WebSockets to an edge server.
  2. Edge Server Functions: Hosted on Deno Edge or Cloudflare Workers, these servers act as a proxy that manages WebSocket connections and communicates with various AI providers (OpenAI, Gemini, xAI, Eleven Labs, etc.).
  3. Frontend Client: A Next.js web application used to configure AI agents, manage device authentication, and control hardware settings like volume and voice pitch.

Who it’s for

  • IoT developers and hobbyists wanting to integrate frontier voice AI into physical hardware.
  • Makers building AI-powered toys or interactive gadgets.
  • Developers experimenting with low-latency speech-to-speech pipelines on edge infrastructure.

Highlights

  • Broad Model Support: Integrates with OpenAI Realtime, Gemini Live, xAI Grok, Eleven Labs, Hume AI, and Boson Higgs.
  • Optimized Audio: Uses Opus compression for high-quality audio streaming at low bandwidth (12kbps).
  • Edge Performance: Leverages Deno and Cloudflare Workers to maintain low round-trip latency globally.
  • Hardware Friendly: Designed for ESP32-S3 and does not require PSRAM to function.
  • Advanced Device Features: Supports OTA (Over-the-Air) updates, captive portal for WiFi management, and tool calling for agentic capabilities.

Related

  • Project
  • Project
  • Project
  • Project
  • Project