firmware/unix
2019-04-24 12:58:53 -04:00
..
frozen-modules Handle new stream-based stories 2019-04-23 09:38:11 -04:00
work/MicroSD Ignore noise 2018-09-11 10:13:32 -04:00
.gitignore Making whole firmware public with single, signed commit. 2018-07-24 14:07:33 -04:00
background.png bkg 2019-04-24 09:54:37 -04:00
headless.py Making whole firmware public with single, signed commit. 2018-07-24 14:07:33 -04:00
led-green.png Better background and add MicroSD LED 2019-04-12 12:09:18 -04:00
led-red.png Better background and add MicroSD LED 2019-04-12 12:09:18 -04:00
led-sd.png Better background and add MicroSD LED 2019-04-12 12:09:18 -04:00
Makefile Making whole firmware public with single, signed commit. 2018-07-24 14:07:33 -04:00
mpconfigport_coldcard.h Making whole firmware public with single, signed commit. 2018-07-24 14:07:33 -04:00
mpconfigport.mk Making whole firmware public with single, signed commit. 2018-07-24 14:07:33 -04:00
program-icon.png sim icon 2019-04-15 10:21:58 -04:00
README.md Making whole firmware public with single, signed commit. 2018-07-24 14:07:33 -04:00
requirements.txt Making whole firmware public with single, signed commit. 2018-07-24 14:07:33 -04:00
sim_boot.py Making whole firmware public with single, signed commit. 2018-07-24 14:07:33 -04:00
simulator.py Better render of simulated LED 2019-04-23 09:37:54 -04:00
unix_random.c Making whole firmware public with single, signed commit. 2018-07-24 14:07:33 -04:00

Coldcard Desktop Simulator

Usage

make && ./simulator.py

Other Startup Flags

The default is to boot up, skip the tedious PIN entry step, and start as a functional wallet (on testnet, always with the same seed). But there are other options:

  • -w => like a factory-fresh unit; no PIN no secrets
  • -l => PIN is set (12-12) but no secret yet
  • -2 => enable a secondary wallet, with pin 33-33 and no secret
  • -q => boot and drop into REPL; does nothing else, no setup
  • -f -w => boot like a unit that hasn't left factory yet

See frozen-modules/sim-settings.py for the details.

Requirements

  • uses good olde xterm for console input and output
  • this directory has additional requirements.txt (a superset of other requirements of the project)
  • run "brew install sdl2" before/after doing python requirements
  • run "make setup" then "make"
  • then "./simulator.py"

MacOS building

  • Follow instructions on https://github.com/micropython/micropython

  • probably: brew install libffi if not already present

  • to get pkg-config libffi to output useful things, need this:

    setenv PKG_CONFIG_PATH /usr/local/opt/libffi/lib/pkgconfig

  • but that's in the Makefile now

Other OS

  • sorry we haven't gotten around to that yet, but certainly would be possible to build this on Linux or FreeBSD... but not Windows.