Project Notes 01
Swirski Terminal
Built a wearable ESP32-S3 terminal with a C++ interface and a React Native companion app connected over encrypted Bluetooth.
- Role
- Creator / Hardware + Software
- Type
- Wearable Device Prototype
- Focus
- Embedded / Mobile / PCB

Project Overview
The problem, the constraint and what shipped.
Context
Swirski Terminal is a self-directed wearable-computing project exploring how a small tactile device can surface useful phone information without becoming another full smartphone interface.
Challenge
Make constrained hardware, physical input, an embedded interface, Bluetooth messaging, Android permissions, and unreliable real-world connections behave like one coherent product.
Result
Built and open-sourced a working hardware-and-software prototype, completed a custom PCB design in KiCad, and shipped notification and media control, Wi-Fi management, games, automatic reconnection, tests, and rolling firmware releases.
My Contribution
A self-directed build, covering the decisions from problem definition through to a useful working system.
- 01
Taught myself practical electronics and soldering to assemble the wearable ESP32-S3 prototype with its display and physical controls, then designed a custom PCB in KiCad.
- 02
Created a shared C++20 and LVGL application that runs on the device and in an SDL desktop simulator for faster interface development and testing.
- 03
Implemented encrypted BLE pairing, bonding, chunked versioned messages, and automatic reconnection between the terminal and phone.
- 04
Built the React Native Android companion app that sends notifications, media state, time, and Wi-Fi configuration to the device and receives media-control commands from the terminal.
- 05
Set up automated rolling releases for ESP32 firmware updates and Android companion-app builds.
Inside the Terminal
Selected visual evidence from the project.






NEXT PROJECT