# Firmware Scaffolding This directory is the placeholder for the future microcontroller variant of `nsigner`. ## Current direction Initial MCU work should reuse platform abstractions that already exist in [`nostr_core_lib`](../nostr_core_lib/README.md), especially the ESP32 platform files under [`nostr_core_lib/platform/esp32/`](../nostr_core_lib/platform/esp32): - [`nostr_platform_esp32.c`](../nostr_core_lib/platform/esp32/nostr_platform_esp32.c) - [`nostr_http_esp32.c`](../nostr_core_lib/platform/esp32/nostr_http_esp32.c) - [`nostr_websocket_esp32.c`](../nostr_core_lib/platform/esp32/nostr_websocket_esp32.c) ## Intended purpose This firmware target is for a USB signer and constrained-device signer profile, with `nsigner` protocol compatibility and transport adaptation (USB-CDC first, then other embedded transport options as needed). ## Next milestones 1. Add MCU-specific build system (ESP-IDF/CMake or equivalent). 2. Add a minimal signer main loop with version reporting compatible with desktop `nsigner` semantics. 3. Implement transport bridge framing compatible with host-side `nsigner-bridge` plans. 4. Add hardware confirmation UX hooks (button + tiny display flow).