This commit is contained in:
Evan Feenstra
2022-07-19 22:21:32 -07:00
parent 853619e175
commit de24ddd361

View File

@@ -1,6 +1,6 @@
# sphinx-key # sphinx-key
These notes were tested for macOS A Lightning Hardware Wallet based on [Validating Lightning Signer](https://gitlab.com/lightning-signer/validating-lightning-signer)
### set CFLAGS ### set CFLAGS
@@ -34,11 +34,11 @@ Find the path to your `riscv32-esp-elf-gcc` binary within the `.embuild` dir:
### monitor ### monitor
```sh Find your port (`ls /dev/tty.*`)
ls /dev/tty.*
ls /dev/cu.* `PORT=/dev/tty.usbserial-1420`
espmonitor /dev/tty.usbserial-1420
``` `espmonitor $PORT`
### configure the hardware ### configure the hardware
@@ -47,10 +47,10 @@ make a seed: `./sphinx-key/newseed.sh`
make a `.env` file like: make a `.env` file like:
``` ```
SSID=my_ssid SSID={my_ssid}
PASS=my_wifi_password PASS={my_wifi_password}
BROKER=my_ip:1883 BROKER={my_ip}:1883
SEED=my_seed SEED={my_seed_hex}
NETWORK=regtest NETWORK=regtest
``` ```
@@ -60,9 +60,13 @@ connect to the `sphinxkey` network on your computer
This will encrypt your seed and send to the hardware, along with your home wifi information and broker address This will encrypt your seed and send to the hardware, along with your home wifi information and broker address
# dependencies ### clear NVS storage
`cd sphinx-key` `espflash target/riscv32imc-esp-espidf/debug/clear`
`espmonitor /dev/tty.usbserial-1420`
## dependencies
##### cargo nightly: ##### cargo nightly:
@@ -84,12 +88,7 @@ This will encrypt your seed and send to the hardware, along with your home wifi
`cargo install espmonitor` `cargo install espmonitor`
### clear NVS ##### cargo generate esp-rs
espflash target/riscv32imc-esp-espidf/debug/clear
espmonitor /dev/tty.usbserial-1420
### cargo generate esp-rs
`cargo generate --git https://github.com/esp-rs/esp-idf-template cargo` `cargo generate --git https://github.com/esp-rs/esp-idf-template cargo`
@@ -102,35 +101,16 @@ nightly
`cargo build` `cargo build`
### to tell sphinx-key where to find the MQTT broker: #### espflash notes
clear the NVS with instructions above if sphinx-key has stale Wifi creds.\ `espflash save-image esp32-c3 target/riscv32imc-esp-espidf/release/sphinx-key ./test-flash`
restart sphinx key, then from computer connect to sphinxkey AP.\
go to `http://192.168.71.1/?broker=52.91.253.115%3A1883`.\
input internet wifi SSID and password, and the IP address of the broker.\
after pressing the ok button, restart the sphinx key, and wait for a MQTT connection.
### espflash notes `espflash board-info`
espflash save-image esp32-c3 target/riscv32imc-esp-espidf/release/sphinx-key ./test-flash `esptool.py --chip esp32c3 elf2image target/riscv32imc-esp-espidf/release/sphinx-key`
espflash board-info `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`
export CC=$PWD/.embuild/espressif/tools/riscv32-esp-elf/esp-2021r2-8.4.0/riscv32-esp-elf/bin/riscv32-esp-elf-gcc `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`
cargo +nightly build --release
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
### config
./sphinx-key/rando.sh
make your .env
cargo run --bin config