- 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. External 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