FeTAp-32 is an open-source project that turns an old FeTAp 611-2 (Fernsprechtischapparat) into a voice assistant device through an ESP32-C3 and esphome.
- Fully functional rotary dial with customizable automations for each digit
- Power delivery through USB-C, network connectivity through Wifi 2.4 GHz
- Enhanced privacy as microphone is only active if handset is lifted-up
- No wake-word detection required, the assistant is started when the handset is picked up
- Modular and customizable through esphome
Clone this repository to your machine and open a terminal inside the cloned repository. Fill in the network credentials and OTA password in the secrets.yaml. Afterwards, create a virtual python environment:
python3 -m venv venv
Activate that environment:
source venv/bin/activate
Install esphome version 2020.7.1 inside the virtual environment:
pip install esphome==2026.7.1
Compile the project:
esphome compile fetap32.yaml
Ensure that the USB-C power port at the base of the phone is unplugged. Next, unscrew the microphone cover of your Fetap32 and connect it to your PC using the USB-C port directly on the microcontroller. Afterwards, you can flash the project onto the microcontroller by running:
esphome run fetap32.yaml
The manual can be found here.
Recreating this project involves handling dangerous things like soldering irons and 3D-printers. For legal reasons, handling these things should only be done by an expert. I am not responsible for any damage to you, your telephone or your surrounding. Read through the complete manual to decide if you feel comfortable building the project.
- 3D-printer
- soldering iron
- connector crimping kit (see BoM, optional but recommended)
The following items are necessary to build the FeTAp-32. Items marked with a (*) at the beginning do not need to be the exact listed item but may be replaced with something else. Sourcing links are included for people based in germany (those are the shops where I got the items from).
| Item | Amount | Description | Comment | Sourcing (DE) |
|---|---|---|---|---|
| FeTAp 611-2 | 1 | the telephone | Commonly found on kleinanzeigen for cheap. Doesn't have to be functional as the ESP will replace the PCB. | - |
| Seeed Xiao ESP32C3 | 1 | Modem and microcontroller | - | Botland Reichelt |
| Adafruit USB Type-C Breakout Board (ADA4090) | 1 | port for power over USB-C | - | Berrybase |
| Stranded Wire | ~2m | wire to connect the components with each other | I recommend stranded wires and getting multiple colors to make it easier. The wires I used were multi-stranded with 0.14mm^2 diameter (approx. 25 AWG) | Reichelt |
| INMP441 MEMS Microphone | 1 | digital microphone to capture voice commands | Optional, if you don't want voice assistant capabilities (e.g. only want to use the rotary dial) | Berrybase |
| *Adafruit I2S Amplifier (ADA5769) | 1 | amplifier for the handset speaker | Optional, if you don't need audio output. There is also a version without SD-Card slot (ADA5770) that should also work. | Botland Berrybase |
| YD27 0.5W 8 Ohm speaker | 1 | speaker for audio feedback from voice assistant | Optional, if you don't need audio output. | Botland |
| Adafruit Molex PicoBlade cable | 1 | connector and cable for speaker and I2S amplifier | Optional, if you don't need audio output. | Berrybase |
| *JST-XH 5-Pin Male and Female connectors | 1 | connector for microphone and esp | Optional, if you don't want to use a microphone or directly solder the wires together | Amazon |
| *JST-XH 4-Pin Male and Female connectors | 2 | connectors for handset, housing and esp | Optional, if you want to directly solder the wires together | see above |
| *JST-XH 2-Pin Male and Female connectors | 3 | connectors for power, rotary-dial-sensor and handset-sensor | Optional, if you don't want to use a microphone or directly solder the wires together | see above |
Apart from the items listed above, you will need common consumables like shrink tubing, solder and 3D-printer filament.


