Receive with a tap
Nucula asks for a payment and emits the request over NFC — the PN7160 makes the board show up like a contactless card. The payer taps with any Cashu wallet on a phone, and the tokens land on the device.
Open hardware·Cashu ecash·Lightning
Nucula is a small, open-source hardware wallet for Cashu ecash. It is designed for NFC tap-to-pay and offline ecash. The v2 board pairs an ESP32-C3 with an OLED and a detachable keypad.
Cashu is an ecash protocol built on top of Bitcoin's Lightning Network. A mint issues tokens against Lightning payments, using blind signatures — so it signs them without ever seeing them. Whoever holds the tokens can spend them. There is no account and no balance sitting on a server; the tokens themselves are the money.
Nucula keeps those tokens on a small circuit board you can carry around. Paying someone works like handing over coins: the tokens move from one device to the other, and that's the whole transaction.
Any Lightning wallet can top up a Nucula. The mint takes the payment…
…and hands back blind-signed ecash tokens. The mint can't tell who ends up holding them.
Not in an account, not on a server. If you hold the device, you hold the money.
Spending is handing tokens to someone else — over NFC, or back out through Lightning.
Nucula asks for a payment and emits the request over NFC — the PN7160 makes the board show up like a contactless card. The payer taps with any Cashu wallet on a phone, and the tokens land on the device.
Tokens received while offline are stashed on the device and redeemed automatically the next time WiFi comes back. No connection, no problem — the payment already happened.
Top the wallet up by paying a Lightning invoice — the mint issues fresh tokens for it. Spend back out by melting tokens to settle any invoice. Nucula speaks BOLT11 both directions.
The v2 board brings the ESP32-C3, NFC controller and antenna, display interface and battery charger onto one PCB. The OLED, NFC and detachable keyboard share a 100 kHz I²C bus.
Routed prototype, awaiting physical bring-up. RF tuning, power measurements and display fit checks are still ahead.
Toggle the KiCad layers. Copper fills are hidden to show the routing.
Under the hood, Nucula implements the Cashu NUTs — the shared specifications that keep mints and wallets compatible. Any wallet that talks Cashu can pay a Nucula, and a Nucula can pay it right back.
Wallet secrets are derived from a BIP-39 seed, so the ecash is recoverable from a plain twelve-word backup.
Start with the open KiCad 10 project: schematics, board layout, BOM and manufacturing files are all in the hardware repository. The v2 board is a routed prototype for manual assembly; hardware bring-up and firmware integration are still in progress.
$ git clone https://github.com/zeugmaster/nucula-board.git
$ cd nucula-board
# check the schematic with KiCad CLI installed
$ python3 tools/check_schematic.py
$ kicad nucula-v2.kicad_pro