1.
Introduction
2.
Core
2.1.
Build
2.1.1.
Embedded
2.1.2.
Emulator
2.2.
Emulator
2.2.1.
Valgrind profiling
2.3.
Event Loop
2.4.
Apps
2.5.
Tests
2.6.
Debugging on hardware
2.7.
SystemView instrumentation
2.8.
Miscellaneous
2.8.1.
Boot stages
2.8.2.
Code style
2.8.3.
DISC1
2.8.4.
DISC2
2.8.5.
Exceptions usage
2.8.6.
Memory fragmentation management
2.8.7.
Memory layout
2.8.8.
TrustZone
2.8.9.
SLIP-39
2.8.10.
Translation data format
2.8.11.
UI Layout lifecycle
2.8.12.
Optiga configuration
3.
Legacy
3.1.
Firmware format
4.
Python
4.1.
trezorlib
5.
Common
5.1.
Communication
5.1.1.
Sessions
5.1.2.
Passphrase
5.1.2.1.
Migration
5.1.3.
Bitcoin signing
5.2.
Reproducible builds
5.3.
Message Workflows
5.4.
Ethereum definitions
6.
Storage
7.
Tests
7.1.
Device Tests
7.2.
Upgrade Tests
7.3.
UI Tests
7.4.
Click Tests
8.
Miscellaneous
8.1.
Affected third-parties
8.2.
Changelog
8.3.
Coins' BIP-44 Paths
8.4.
Contributing
8.5.
FW update and device wipe
8.6.
Generated Files
8.7.
Git Hooks
8.8.
Monorepo Notes
8.9.
Review Process
8.10.
TOIF Image Format
9.
Developers guide
9.1.
Libraries
9.2.
Hello World in Core
Light
Rust
Coal
Navy
Ayu
Trezor Firmware
Miscellaneous
Topics that do not fit elsewhere:
Code style
SLIP-39 in Core
Exceptions usage
Memory fragmentation management
Running Trezor firmware on STM32F429I-DISC1
Translation data format
Optiga configuration