Reverse engineering a Viking VOIP phone protocol with Claude Code — Boris Starkov, Eleven Labs

Boris Starkov from Eleven Labs used the AI coding assistant Claude Code to reverse engineer the communication protocol of a vintage Viking VOIP phone, overcoming challenges related to outdated software and hardware compatibility. This enabled direct programming of the phone without proprietary software, resulting in a functional AI-powered demo and an open-source skill for others to integrate similar legacy devices.

In this presentation, Boris Starkov from Eleven Labs shares the story of reverse engineering a vintage Viking VOIP phone to connect it with a conversational AI agent. The phone, a legacy piece of hardware originally designed to work with Windows XP software, posed significant challenges due to its outdated compatibility and the lack of available Windows machines at Eleven Labs, where most engineers use Macs. The phone was initially purchased a year prior but remained unused because even senior engineers and ChatGPT at the time could not figure out how to make it work.

Boris used Claude Code, an AI coding assistant, to explore and reverse engineer the phone’s communication protocol. By connecting his Mac laptop to the phone via a router, Claude Code scanned open ports and discovered the correct port for communication. It then began sending sequences of commands to the phone, identifying valid two-letter command codes by brute forcing all possible combinations. This process revealed many commands that the phone recognized, although the protocol was undocumented and not publicly available.

A major hurdle was figuring out how to save configuration settings permanently on the phone, as initial attempts only wrote to temporary memory that was lost after reboot. Claude Code attempted various approaches, including testing three-letter commands, but initially hit a dead end. The breakthrough came when Claude suggested setting up a Windows virtual machine to run the original phone software, which could communicate properly with the phone. To overcome network limitations in the VM, a TCP proxy was created on the Mac to intercept and log communication between the software and the phone, enabling detailed protocol analysis.

Through this man-in-the-middle approach, Claude Code identified a previously unknown command with a binary payload and reverse engineered the phone’s simple checksum encryption. This allowed the team to fully understand the protocol and discover the sequence of commands needed to save settings persistently. With this knowledge, Boris was able to bypass the need for the Windows VM and directly program the phone using the reverse engineered protocol. The entire process was made significantly faster and feasible thanks to Claude Code’s assistance.

The outcome of this project was not only a functional demo phone booth where users can talk to an AI agent with Michael Caine’s voice, but also an open-sourced skill that enables others to program Viking phones without proprietary software. Boris emphasizes that this approach can be extended to reverse engineering other hardware devices, highlighting how modern AI tools like Claude Code can empower software engineers to tackle complex hardware integration challenges without deep security expertise. The demo is available for attendees to try on the third floor, showcasing the practical success of the project.