1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-08-01 19:38:33 +00:00
Commit Graph

4519 Commits

Author SHA1 Message Date
Lukas Bielesch
cc1cbfd373 feat(eckhart): Full-screen get count component 2025-03-24 15:08:31 +01:00
obrusvit
03d20219b8 feat(eckhart): add easing and rollback to HtC anim
- also switch corner icons to 4px width
2025-03-24 15:08:31 +01:00
obrusvit
81249ab652 feat(eckhart): add alpha to ScreenBorder 2025-03-24 15:08:31 +01:00
obrusvit
ba7856a916 chore(eckhart): fix some clippy warnings 2025-03-24 15:08:31 +01:00
Lukas Bielesch
f9c47e69a9 feat(eckhart): Add SLIP39 input component 2025-03-24 15:08:31 +01:00
Lukas Bielesch
58bfbb34d5 feat(eckhart): Add BIP39 input component 2025-03-24 15:08:31 +01:00
Lukas Bielesch
6bad0d2a5b feat(eckhart): full-screen mnemonic component 2025-03-24 15:08:31 +01:00
Lukas Bielesch
daf0b93a22 feat(eckhart): passphrase flow 2025-03-24 15:08:31 +01:00
Lukas Bielesch
e090ae2d65 feat(eckhart): full-screen passphrase component 2025-03-24 15:08:31 +01:00
Lukas Bielesch
b002214370 feat(eckhart): full-screen PIN keyboard component 2025-03-24 15:08:31 +01:00
Lukas Bielesch
7005de32ee feat(eckhart): keypad component 2025-03-24 15:08:31 +01:00
Lukas Bielesch
36475c00b7 feat(ui): Add visibility-checking function to Maybe struct 2025-03-24 15:08:31 +01:00
Lukas Bielesch
97997111d3 feat(ui): Add function for expanding Button touch area 2025-03-24 15:08:31 +01:00
Lukas Bielesch
728b1f0d3d feat(eckhart): Add common keyboard functionality 2025-03-24 15:08:31 +01:00
Lukas Bielesch
2964830664 feat(eckhart): keyboard button styles 2025-03-24 15:08:31 +01:00
Lukas Bielesch
ab96b1f6cb feat(eckhart): Add parametrized content offset to Button 2025-03-24 15:08:31 +01:00
Lukas Bielesch
8d15bdb637 chore(eckhart): Add dynamic padding option to vertical menu. Update rendering of separarators in vertical menu. 2025-03-24 15:08:31 +01:00
Lukas Bielesch
cb97f20d8f feat(eckhart): full-screen select word component 2025-03-24 15:08:31 +01:00
Lukas Bielesch
b2fda345ae chore(eckhart): Remove redundant code 2025-03-24 15:08:31 +01:00
Lukas Bielesch
d9da1eebaa chore(eckhart): Add dynamic padding option to vertical menu.
Update rendering of separarators in vertical menu.
2025-03-24 15:08:31 +01:00
Lukas Bielesch
fdb2f1542b feat(eckhart): Add new Button 'is_pressed' function 2025-03-24 15:08:31 +01:00
Lukas Bielesch
6a44af5c8c chore(eckhart): fix button text and subtext rendering 2025-03-24 15:08:31 +01:00
Lukas Bielesch
42bcc261ad feat(eckhart): button styles for select word component 2025-03-24 15:08:31 +01:00
Lukas Bielesch
64c7b8274d feat(eckhart): share words flow 2025-03-24 15:08:31 +01:00
Lukas Bielesch
eec9f96bb0 feat(eckhart): full-screen share words component 2025-03-24 15:08:31 +01:00
Lukas Bielesch
db105dda49 chore(eckhart): improve HTC animation 2025-03-24 15:08:31 +01:00
obrusvit
0f9dbaaf98 feat(eckhart): expand touch area of ActionBar 2025-03-24 15:08:31 +01:00
obrusvit
8d85ce91d2 feat(eckhart): implement hold to confirm anim
- HoldToConfirmAnim is driven by the ActionBar in case the right_button
is configured with `long_press`
- HoldToConfirmAnim optionally draws an Header overaly with custom text
- disabling animations is respected
- easing function is not yet finalized
- a few minor fixes along the way
2025-03-24 15:08:31 +01:00
obrusvit
b05487a855 feat(eckhart): implement ScreenBorder overlay
- a static "custom shape" for eckhart layout which displays screen
overlay around the borders
2025-03-24 15:08:31 +01:00
Lukas Bielesch
14ed3fe951 feat(eckhart): Update vertical menu components 2025-03-24 15:08:31 +01:00
Lukas Bielesch
3de90be8af feat(eckhart): Add new Back Header message type 2025-03-24 15:08:31 +01:00
Lukas Bielesch
423de02090 feat(eckhart): Add MenuItem button content type 2025-03-24 15:08:31 +01:00
Lukas Bielesch
3552d62a15 feat(eckhart): Add battery icons 2025-03-24 15:08:31 +01:00
Lukas Bielesch
500092fd8f feat(eckhart): Add vertical menu button styles 2025-03-24 15:08:31 +01:00
obrusvit
90d7c5efe5 feat(eckhart): full-screen vertical menu component 2025-03-24 15:08:31 +01:00
obrusvit
8ec9197b50 feat(eckhart): implement a few show_xyz functions 2025-03-24 15:08:31 +01:00
obrusvit
8ceb93e71b feat(eckhart): implement confirm_value 2025-03-24 15:08:31 +01:00
obrusvit
7d190fa15a feat(eckhart): implement confirm_action 2025-03-24 15:08:31 +01:00
obrusvit
0071f76aa2 feat(core): add color op to FormattedText
[no changelog]
2025-03-24 15:08:30 +01:00
obrusvit
c20b8f3cca feat(eckhart): full-screen textual component
- TextScreen is a full-screen component for (paginated) texts
- it's supposed to wrap FormattedText or Paragraphs
2025-03-24 15:08:30 +01:00
obrusvit
69bf0b4f58 feat(eckhart): action bar component 2025-03-24 15:08:30 +01:00
obrusvit
adc534e076 feat(eckhart): hint component 2025-03-24 15:08:30 +01:00
obrusvit
92d7c360c2 feat(eckhart): header component 2025-03-24 15:08:30 +01:00
obrusvit
276e421fa5 feat(eckhart): provisional homescreen 2025-03-24 15:08:30 +01:00
obrusvit
a9759078c2 feat(eckhart): text styles 2025-03-24 15:08:30 +01:00
obrusvit
919b66ee46 feat(eckhart): add fonts 2025-03-24 15:08:30 +01:00
obrusvit
5f3ab5973e feat(eckhart): icon set 2025-03-24 15:08:30 +01:00
obrusvit
a97bef3b80 feat(eckhart): color palette 2025-03-24 15:08:30 +01:00
obrusvit
cfcfdfe299 feat(eckhart): initial commit
- build
- directory structure
- bootloader UI and assets copied from delizia
- FirmwareUI trait functions are empty
- Python layout functions are copied from delizia except some of more
complicated ones which raise NotImplemented for now
2025-03-24 15:08:30 +01:00
tychovrahe
3bccf2d8f7 fix(core): fix emulator usb polling
[no changelog]
2025-03-24 14:31:14 +01:00
tychovrahe
4d48fbf845 fix(core): fix emulator usb deinitialization
[no changelog]
2025-03-24 14:31:14 +01:00
tychovrahe
8e0e3a1787 refactor(core): complete bootloader refactoring 2025-03-24 14:31:14 +01:00
obrusvit
9a14654ff7 perf(core): improve render in Delizia button
- allcase_text_height unnecessarily loads GlyphData in this frequent
call, text_height just reads a constant

[no changelog]
2025-03-24 12:11:56 +01:00
obrusvit
079873ced7 feat(core): use newer version of Delizia fonts 2025-03-24 12:11:56 +01:00
cepetr
5b9caf1ac6 fix(core): enable shsi clock after resuming from suspend mode
[no changelog]
2025-03-24 10:38:53 +01:00
tychovrahe
283561c073 fix(core: fix homescreen ble checker task
[no changelog]
2025-03-23 17:04:05 +01:00
Roman Zeyde
1e3b02771b fix(core): don't use 'static lifetime for BLEEvent
[no changelog]
2025-03-21 17:13:27 +02:00
matejcik
acc584ce25 fix(core/rust): fix quotes in bindgen macros for T2B1 2025-03-21 12:16:23 +01:00
Roman Zeyde
52f5593f28 feat(core): add BLE checker task to Homescreen
[no changelog]
2025-03-20 15:22:32 +02:00
Roman Zeyde
4c2c6f13e7 fix(core): add BLE feature flag to MicroPython build sed scripts
[no changelog]
2025-03-20 15:22:32 +02:00
Roman Zeyde
9926df6ab5 fix(core): add LayoutObj.ble_event mock
[no changelog]
2025-03-20 15:22:32 +02:00
Roman Zeyde
fabb5e8c6c perf(core): don't allocate if BLE event data is empty
BLE event data is not empty only on pairing:
```
core/embed/io/ble/stm32/ble.c
176:      ble_event_t event = {.type = BLE_CONNECTED};
182:      ble_event_t event = {.type = BLE_DISCONNECTED};
227:  ble_event_t event = {.type = BLE_PAIRING_REQUEST, .data_len = 6};
244:  ble_event_t event = {.type = BLE_PAIRING_CANCELLED, .data_len = 0};
```

[no changelog]
2025-03-20 15:22:32 +02:00
tychovrahe
cf00130409 feat(core): add support T3W1 rev C board
[no changelog]
2025-03-20 11:07:49 +01:00
tychovrahe
6fb65bcfd9 refactor(core): refactor button events
[no changelog]
2025-03-20 11:07:34 +01:00
tychovrahe
36a047cd30 feat(core): stm32u5 i2c driver - support up to 5 i2c busses
[no changelog]
2025-03-20 10:33:44 +01:00
tychovrahe
8e4ed1181e feat(core): increase the number of available systimers
[no changelog]
2025-03-20 10:33:44 +01:00
Roman Zeyde
f4328acfd6 fix(core): don't invoke dump_meminfo_json on emulator
[no changelog]
2025-03-20 11:05:01 +02:00
Roman Zeyde
566b69fb24 perf(core): simplify Button struct to save RAM
[no changelog]
2025-03-20 09:29:56 +02:00
Roman Zeyde
611d74c1b3 fix(core): correct confirmation fonts in Bolt 2025-03-18 13:23:39 +02:00
Roman Zeyde
2f97b61870 fix(core): correct confirmation title on Caesar 2025-03-18 12:32:36 +02:00
Roman Zeyde
5fd168c363 feat(core): dump GC arena on OOM
Enabled for debug firmware and non-frozen emulator.

JSON dump can be extracted from debug log and analyzed using:

$ awk '/^\[$/,/^\]$/' <debug.log >dump.json
$ core/tools/analyze-memory-dump.py dump.json

[no changelog]
2025-03-17 20:17:42 +02:00
Roman Zeyde
2333a6a262 feat(core): log GC info in case of OOM
Enabled on debug firmware and non-frozen emulator.

[no changelog]
2025-03-17 20:17:42 +02:00
cepetr
0fb1693ea8 feat(code): introduce dbg_printf for kernel debugging
[no changelog]
2025-03-14 14:17:27 +01:00
Roman Zeyde
90d7713592 build(core): fix RUST_PRINT_TYPES_SIZES passing to SConscript.firmware
Use a list to collect RUSTFLAGS, to prevent overwriting them.

Also:
- fix a typo in `SConscript.unix` (it was using `firmware` build directory)
- use keyword arguments for better readability
- reformat Rust library build command string

[no changelog]
2025-03-13 18:18:48 +02:00
Ioan Bizău
c9c543443d feat(core/tests): add smoke test for libtropic
[no changelog]
2025-03-13 15:08:48 +01:00
Ioan Bizău
3efa0480c6 feat(core): add libtropic to the unix build
[no changelog]
2025-03-13 15:08:48 +01:00
Roman Zeyde
c95158751a build(core): allow increasing VCP write timeout
It should allow us exporting larger amounts of debug data.

[no changelog]
2025-03-13 16:07:09 +02:00
Roman Zeyde
21ad24fc31 style(core): add spaces around LOG_STACK_USAGE in SConscript.firmware
[no changelog]
2025-03-13 16:07:09 +02:00
Roman Zeyde
41096b5ffd
fix(core): use smaller button for upgrade cancellation 2025-03-13 12:07:07 +01:00
Roman Zeyde
6bf11ab29f chore(core): use smaller vectors for ShowInfoParams
[no changelog]
2025-03-12 08:12:54 +02:00
cepetr
b5053d9f6e
fix(core): add kernel access to assets by default (#4759)
[no changelog]
2025-03-11 07:58:57 +01:00
obrusvit
29d69db300 Merge branch 'release/25.03' into obrusvit/merge-release-25.03 2025-03-10 11:17:26 +01:00
Roman Zeyde
2400fcb95d fix(core): scope Cardano confirmation to allow GC
Otherwise, we may run out of heap due to recursion.

[no changelog]
2025-03-09 21:48:30 +02:00
tychovrahe
103568e2e5 feat(core/prodtest): show device ID in prodtest QR code 2025-03-08 12:26:41 +01:00
tychovrahe
661a30e390 feat(core/prodtest): support writing device ID into OTP memory 2025-03-08 12:26:41 +01:00
tychovrahe
ee9f42a8b2 fix(core/prodtest): add early return in case of otp batch reading error
[no changelog]
2025-03-08 12:26:41 +01:00
tychovrahe
6db5eaf850 fix(core/prodtest): fix otp device variant lock check
[no changelog]
2025-03-08 12:26:41 +01:00
kopecdav
f2054ff409 feat(core/prodtest): Introduce unit test extension into prodtest [no changelog] 2025-03-07 17:24:24 +01:00
obrusvit
acdf549fc4 chore(core): bump version to 2.8.10
[no changelog]
2025-03-07 11:44:29 +01:00
obrusvit
813620a4c5 chore(core): include signed translations for 2.8.9 2025-03-06 16:10:20 +01:00
Roman Zeyde
f67a506e9c fix(core): use correct fonts for staking confirmation on Delizia
[no changelog]
2025-03-05 12:23:03 +02:00
Roman Zeyde
0d522be842 fix(core): use TEXT_MONO_GREY_LIGHT for chunkified data on Delizia
[no changelog]
2025-03-05 10:35:41 +02:00
tychovrahe
46ec7298af chore(core): drop support for T3W1 rev A0 board
[no changelog]
2025-03-05 09:19:27 +01:00
tychovrahe
9c451bd6ea fix(core): fix BLE issue command return value
[no changelog]
2025-03-05 09:19:16 +01:00
cepetr
486bbca959 feat(core): double glyphs on t3w1 terminal
[no changelog]
2025-03-05 08:33:15 +01:00
Roman Zeyde
6f3e5a6cd7 feat(core): estimate workflow stack usage
By zeroing the stack memory before the workflow runs,
we can estimate how much of it has been used (by reading
the stack memory and looking for the first non-zero value).

[no changelog]
2025-03-04 14:18:15 +02:00
Andrew Kozlik
b2701596cc chore: Add emulator warnings.
[no changelog]
2025-03-04 12:49:30 +01:00
Roman Zeyde
e08b15ecaf feat(core): use Account info instead of Send from in Delizia staking UI
[no changelog]
2025-03-04 13:35:08 +02:00
Roman Zeyde
7be53c4172 fix(core): update Czech translations for Ethereum
* "Přednostní poplatek" -> "Poplatek za prioritu"
* "Zrušit stakování" -> "Zrušit stakování"

[no changelog]
2025-03-04 12:45:21 +02:00
tychovrahe
4394992b81 chore(core): unify comment style in startup_init.c
[no changelog]
2025-03-04 11:23:55 +01:00