Hi, I’m Andrea Mancini — designer, technologist, and maker from Italy.
You can find more about my work at biso.it.
I designed and built Firminia completely on my own, from the first idea to the final prototype:
hardware architecture, firmware development, 3D modeling, assembly, testing, and the LVGL-based graphical interface.
It’s one of those projects where design, engineering, and curiosity all meet, and where every piece, from electronics to enclosure, has been crafted by hand.
Every great project starts with a small annoyance.
In my case, it was having to log in every day to check if there were documents waiting to be signed on AskMe.it, a digital signature platform I helped design.I wanted something simpler — a quiet, physical reminder that would just tell me, “Hey, you’ve got documents to sign.”
That’s how Firminia was born:a small Wi-Fi + BLE device that connects to your AskMeSign account and shows, through simple animations, whether there are documents waiting for you or not.
Firminia is an always-on signature companion. It connects over Wi-Fi, talks to the AskMe.it API, and displays your current status on a small round LCD screen using LVGL animations.When you have pending signatures, it lights up and shows the number of documents waiting. When everything’s done, it quietly fades to idle.
There are two operating modes:
- 🖊️ Signer Mode – for people who receive and sign documents.
- 🧾 Editor Mode – for users who create and send documents, to check whether others have signed.
Both modes make Firminia useful not just for executives, but also for HR, legal, or operations teams who handle document workflows every day.
Features- 📱 Bluetooth Configuration: Easy setup via BLE with dedicated React app
- 📡 Wi-Fi Integration: Automatic connection to AskMeSign API
- 📊 Real-time Display: Shows pending document count on round LCD
- ⚡ Low Power: Efficient ESP32-S3 implementation
- 🔧 JSON Configuration: Flexible setup via JSON payload
- 🔄 Auto-reconnection: Robust Wi-Fi and API connection handling
- 📱 Mobile App: Dedicated React TypeScript configuration interface
- 🌍 Multi-language Support: Interface available in English, Italian, French, and Spanish
- 🔒 Secure Configuration: No sensitive data stored in firmware
- 🔵 Auto BLE Mode: Automatically enters configuration mode when default settings detected
- 🔄 Configuration Reset: Hold button for 5 seconds to reset configuration to defaults
- 📱 Enhanced QR Code: 25% larger QR code with perfect centering for improved scanning
- 🛡️ Automatic Rollback: Protects against corrupted firmware with automatic recovery
- ⏰ Boot Watchdog: Monitors boot process and triggers rollback on timeout
- 🔍 Firmware Validation: Comprehensive health checks and integrity verification
No USB cables, no flashing firmware.
Configuration happens over Bluetooth Low Energy (BLE) using a companion React web app:👉 github.com/bisontebiscottato/firminia3-react-app
Through the app, users can:
- Pair with Firminia via BLE
- Set Wi-Fi credentials
- Choose between Signer or Editor mode
- Enter their AskMeSign API key
All data is securely stored in NVS, and the device takes care of reconnecting automatically.
Hardware & Design- MCU: ESP32-S3 (also compatible with ESP32-C6)
- Display: Waveshare 1.28" or 1.47" round LCD (GC9A01)
- UI: LVGL (custom animations for connection, Wi-Fi, and activity states)
- Connectivity: Wi-Fi + BLE (GATT for configuration)
- Storage: NVS for config and tokens
- Power: USB-C or 5V input
The enclosure was modeled in Fusion 360 and 3D-printed with a Bambu Lab printer.The front sign panel is modular and mobile, so it can be personalized — for example, with a logo or a message like “Documents to Sign” or “Waiting for Approvals.”
Reliability FirstEmbedded devices live in the real world — so Firminia was built to survive it.
It includes:
- A boot watchdog
- Automatic rollback if a firmware update fails
- Health checks for network and API
- Safe reconnection logic and periodic task scheduling
Once configured, it just works.No manual resets, no daily maintenance.
Why I Built ItFirminia started as a personal experiment — a way to blend my UX background with embedded engineering.It’s a small device that sits quietly on your desk, visualizing your digital workflow in a tangible way.
It’s about calm technology — tools that inform, not interrupt.And it’s a reminder that even in a cloud-connected world, sometimes a tiny physical interface can make the biggest difference.
Comments