You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Pavol Rusnak 723cf295a7
device label -> device name
7 years ago
bootloader add project website (trezor.io) to license header 7 years ago
demo add project website (trezor.io) to license header 7 years ago
fastflash add project website (trezor.io) to license header 7 years ago
firmware device label -> device name 7 years ago
gen add project website (trezor.io) to license header 7 years ago
gitian add gitian build (work in progress) 8 years ago
vendor vendor: update trezor-common, increase coins count 7 years ago
.gitignore build: rework docker build scripts, update readme 7 years ago
.gitmodules Generate the protobuf files at build time (#219) 7 years ago
.travis.yml travis.yml: Download protoc from GitHub 7 years ago
COPYING import v1.0.0 10 years ago
Dockerfile build: use recent protobuf in docker 7 years ago
Makefile startup: use custom reset_handler 7 years ago
Makefile.include Makefile.include: Generate dependency files before build (#225) 7 years ago
README.md build: rework docker build scripts, update readme 7 years ago
build-bootloader.sh cleanup build, update libopencm3 (#215) 7 years ago
build-firmware.sh Generate the protobuf files at build time (#219) 7 years ago
buttons.c add project website (trezor.io) to license header 7 years ago
buttons.h add project website (trezor.io) to license header 7 years ago
layout.c add project website (trezor.io) to license header 7 years ago
layout.h add project website (trezor.io) to license header 7 years ago
memory.c add project website (trezor.io) to license header 7 years ago
memory.h add project website (trezor.io) to license header 7 years ago
memory.ld startup: use custom reset_handler 7 years ago
memory_app_0.0.0.ld import v1.0.0 10 years ago
memory_app_1.0.0.ld startup: use custom reset_handler 7 years ago
memory_app_fastflash.ld startup: use custom reset_handler 7 years ago
oled.c add project website (trezor.io) to license header 7 years ago
oled.h add project website (trezor.io) to license header 7 years ago
rng.c add project website (trezor.io) to license header 7 years ago
rng.h add project website (trezor.io) to license header 7 years ago
serialno.c add project website (trezor.io) to license header 7 years ago
serialno.h add project website (trezor.io) to license header 7 years ago
setup.c add project website (trezor.io) to license header 7 years ago
setup.h add project website (trezor.io) to license header 7 years ago
startup.s startup: use custom reset_handler 7 years ago
timer.c add project website (trezor.io) to license header 7 years ago
timer.h add project website (trezor.io) to license header 7 years ago
util.c add project website (trezor.io) to license header 7 years ago
util.h add project website (trezor.io) to license header 7 years ago

README.md

TREZOR Firmware

Build Status gitter

https://trezor.io/

How to build TREZOR firmware?

  1. Install Docker
  2. git clone https://github.com/trezor/trezor-mcu.git
  3. cd trezor-mcu
  4. ./build-firmware.sh TAG (where TAG is v1.5.0 for example, if left blank the script builds latest commit in master branch)

This creates file build/trezor-TAG.bin and prints its fingerprint and size at the end of the build log.

How to build TREZOR bootloader?

  1. Install Docker
  2. git clone https://github.com/trezor/trezor-mcu.git
  3. cd trezor-mcu
  4. ./build-bootloader.sh TAG (where TAG is bl1.3.2 for example, if left blank the script builds latest commit in master branch)

This creates file build/bootloader-TAG.bin and prints its fingerprint and size at the end of the build log.

How to get fingerprint of firmware signed and distributed by SatoshiLabs?

  1. Pick version of firmware binary listed on https://wallet.trezor.io/data/firmware/releases.json
  2. Download it: wget -O trezor.signed.bin https://wallet.trezor.io/data/firmware/trezor-1.3.6.bin
  3. Compute fingerprint: tail -c +257 trezor.signed.bin | sha256sum

Step 3 should produce the same sha256 fingerprint like your local build (for the same version tag). Firmware has a special header (of length 256 bytes) holding signatures themselves, which must be avoided while calculating the fingerprint, that's why tail command has to be used.