23 lines
1.2 KiB
Markdown
23 lines
1.2 KiB
Markdown
# 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).
|