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
tychovrahe
4de403bbe1
feat(core): enable LSE on T3W1
...
[no changelog]
2025-03-04 11:23:55 +01:00
tychovrahe
d1c1503fa4
feat(core/prodtest): add tamper testing function
...
[no changelog]
2025-03-04 11:23:55 +01:00
tychovrahe
d535e725c0
fix(core): fix tamper setting
...
[no changelog]
2025-03-04 11:23:55 +01:00
cepetr
bf119fbee4
feat(core): improve display/dma2d syscall verifiers
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
8574289493
chore(core): remove unused display function
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
45417bf3bd
feat(core): reduce overhead of syscall invocation
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
19ba854c69
feat(code): introduce dma2d syscalls
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
39245206f4
fix(core): fix coreapp applet memory definition
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
2961f6caf9
refactor(core): improve frame buffer interface
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
8b525de3c9
fix(core): fix jpeg decoder syscalls verifiers
...
[no changelog]
2025-03-04 08:08:10 +01:00
cepetr
80ce57c5c4
fix(rust): fix drawing of 1px bar shape
...
[no changelog]
2025-03-04 08:07:56 +01:00
cepetr
c0134518da
fix(core): fix t3w1 revA prodtest build
...
[no changelog]
2025-03-04 08:07:56 +01:00
obrusvit
fad9682201
fix(core): fix delizia set brightness setting
...
[no changelog]
(cherry picked from commit 55101b8013
)
2025-03-03 16:00:31 +01:00
obrusvit
55101b8013
fix(core): fix delizia set brightness setting
...
[no changelog]
2025-03-03 15:59:59 +01:00
matejcik
5f94715ca7
fix(core/rust): correctly extend SwipeAttach animation duration
...
so that it covers the interval from the Attach event until timer running
out.
Without this change, it is possible to slip in a TouchStart event before
the animation timer has had a chance to start, and lose the matching
TouchEnd.
(cherry picked from commit f59deebfba
)
2025-03-03 15:55:15 +01:00
matejcik
f59deebfba
fix(core/rust): correctly extend SwipeAttach animation duration
...
so that it covers the interval from the Attach event until timer running
out.
Without this change, it is possible to slip in a TouchStart event before
the animation timer has had a chance to start, and lose the matching
TouchEnd.
2025-03-03 15:42:09 +01:00
tychovrahe
dcf9002f00
feat(core/prodtest): add hw-revision command and driver
2025-03-03 13:28:10 +01:00
tychovrahe
a22c15663c
chore(core): fix typo
...
[no changelog]
2025-03-03 13:28:10 +01:00
Roman Zeyde
9b11cc7577
feat(core): use SwipeFlow::add_page
to reduce stack usage
...
[no changelog]
2025-03-03 13:28:33 +02:00
tychovrahe
587b5e8eb8
fix(core): fix jump to old bootloader
...
Initialize systick before jump, as the old bootloaders may not initialize systick on start and rely on systick running from boardloader or firmware. Only relevant for F4, otherwise we are jumping through reset.
[no changelog]
2025-02-28 16:17:06 +01:00
tychovrahe
511a4f3b93
fix(core/prodtest): fix touch draw test
...
[no changelog]
2025-02-28 15:32:49 +01:00
tychovrahe
a77f1f1a99
fix(core): fix jump to old bootloader
...
Initialize systick before jump, as the old bootloaders may not initialize systick on start and rely on systick running from boardloader or firmware. Only relevant for F4, otherwise we are jumping through reset.
[no changelog]
(cherry picked from commit 0536ed6f50
)
2025-02-28 15:22:32 +01:00
Ioan Bizău
dcf65b1d8f
chore(core): remove unnecessary check
...
[no changelog]
2025-02-28 14:15:45 +01:00
Ioan Bizău
d0681212b0
fix(core): use BIP-340 to sign Nostr events
...
[no changelog]
2025-02-28 14:15:45 +01:00