Requires Nix >=2.7 with flakes enabled and direnv.
cd f469-disco
direnv allow
Environment activates automatically on entering the directory.
nix develop
# or for legacy nix:
nix-shell
Linux (Debian/Ubuntu):
sudo apt-get install gcc-arm-none-eabi binutils-arm-none-eabi python3 libsdl2-dev
macOS:
brew tap ArmMbed/homebrew-formulae
brew install arm-none-eabi-gcc python3 sdl2
Initialize submodules (done automatically by make):
git submodule update --init --recursive
make mpy-cross # build cross-compiler (required first)
make disco # firmware with frozen bitcoin lib → bin/upy-f469disco.bin
make empty # minimal firmware → bin/upy-f469disco-empty.bin
make unix # simulator → bin/micropython_unix
make test # run tests
make simulate # run simulator
make clean # clean build artifacts
make all # build everything
All binaries output to bin/:
upy-f469disco.bin - full firmwareupy-f469disco-empty.bin - minimal firmwaremicropython_unix - simulator binary