Evan Feenstra f412d2c7dd release build
2022-10-12 15:15:37 -04:00
2022-10-12 14:10:45 -04:00
2022-10-11 15:07:56 -07:00
2022-08-23 15:08:30 -06:00
doc
2022-10-11 18:06:02 -07:00
2022-10-11 15:07:56 -07:00
2022-07-18 16:00:55 -07:00
2022-06-09 08:45:11 -06:00
2022-07-06 12:27:19 -07:00
2022-10-12 15:15:37 -04:00

sphinx-key

A Lightning Hardware Wallet based on Validating Lightning Signer

build factory

cd factory

cargo build --release

build

cd ../sphinx-key

The wifi SSID and password needs to be in env to build the firmware. SSID must be at least 6 characters, and PASS must be at least 8 characters.

SSID=sphinx-1 PASS=sphinx-1234 cargo build --release

install esptool

pip install esptool

flash release

esptool.py --chip esp32c3 elf2image target/riscv32imc-esp-espidf/release/sphinx-key

Find your port (ls /dev/tty.*)

PORT=/dev/tty.usbserial-1420

esptool.py --chip esp32c3 -p $PORT -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 40m --flash_size 4MB 0x10000 target/riscv32imc-esp-espidf/release/sphinx-key.bin

monitor

espmonitor $PORT

configure the hardware

make a seed: ./newseed.sh

make a .env file like:

SSID={my_ssid}
PASS={my_wifi_password}
BROKER={broker_ip_and_port}
SEED={my_seed_hex}
NETWORK=regtest

connect to the sphinxkey network on your computer

cargo run --bin config

This will encrypt your seed and send to the hardware, along with your home wifi information and broker address

clear NVS storage

espflash target/riscv32imc-esp-espidf/debug/clear

espmonitor $PORT

pingpong test

cargo build --features pingpong

espflash target/riscv32imc-esp-espidf/debug/sphinx-key --monitor

dependencies

cargo nightly:

rustup install nightly

rustup component add rust-src --toolchain nightly

rustup default nightly

python 3.7 or higher is required
cargo sub-commands:

cargo install cargo-generate

cargo install ldproxy

cargo install espflash

cargo install espmonitor

cargo generate esp-rs

cargo generate --git https://github.com/esp-rs/esp-idf-template cargo

std support: true
v4.4
esp32c3
nightly

cargo build

espflash notes

espflash save-image esp32-c3 target/riscv32imc-esp-espidf/release/sphinx-key ./test-flash

espflash board-info

esptool.py --chip esp32c3 elf2image target/riscv32imc-esp-espidf/release/sphinx-key

esptool.py --chip esp32c3 -p /dev/tty.usbserial-1420 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 40m --flash_size 4MB 0x10000 target/riscv32imc-esp-espidf/release/sphinx-key.bin

espmonitor /dev/tty.usbserial-1420

for ESP-IDF#4.3.2: export CC=$PWD/.embuild/espressif/tools/riscv32-esp-elf/esp-2021r2-8.4.0/riscv32-esp-elf/bin/riscv32-esp-elf-gcc

Description
No description provided
Readme 1.8 MiB
Languages
Rust 95.6%
Shell 3.1%
Dockerfile 1.1%
Makefile 0.2%