Eidolon v0.0.1-poc — Native Bluetooth AI Call Proxy!
Whewww, it’s finally here! After wrangling with low-level OS kernel sockets and
ESP32 C firmware, I am officially shipping the first Proof-of-Concept for
Eidolon!
What is it?
Eidolon is an open-source Bluetooth call proxy. It makes your
computer (or an ESP32) pretend to be a standard Bluetooth headset (HFP). This
lets you seamlessly intercept live cellular phone calls at the native hardware
level, pipe the audio into a terminal, and eventually let an AI handle the
entire conversation for you.
What did I make for this PoC?
- Direct Linux Kernel Injection: Built a custom controller that bypasses
PulseAudio/PipeWire entirely. It binds directly to the Linux kernel via
AF_BLUETOOTH sockets to read/write raw audio packets straight into the call!
- ESP32 Hardware Delegate: Since macOS and Windows heavily restrict Bluetooth
APIs, I built a custom ESP-IDF C firmware to offload the hardware
interaction to an ESP32, streaming the audio back over a Wi-Fi TCP bridge.
- The Audio Loop: Hooked up a Curses TUI, Faster-Whisper for offline STT, and
Edge-TTS to prove the audio injection actually works.
What was challenging?
Low-level Bluetooth audio is a nightmare to standardize.
Apple completely locks down their kernel (forcing me to build an Objective-C
“acoustic bypass” for Mac). As for the ESP32, getting 16kHz audio over Wi-Fi
without awful packet latency was tough, it’s currently functional but it’s still pretty choppy! (and don’t get me started in the brownout detector ;()
What’s next?
This release was all about proving the core hardware routing works.
The immediate next step is ripping out the basic STT/TTS and plugging in true,
full-duplex conversational models (like Gemini Live or OpenAI Realtime),
followed by building a mobile companion app to control it!