1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-20 21:38:26 +00:00
Commit Graph

3633 Commits

Author SHA1 Message Date
obrusvit
d4b854a95e refactor(core): sync layout code
Refactor mercury layout code according to recent changes in model_t
layout code.

[no changelog]
2024-06-06 14:00:13 +02:00
obrusvit
936fe1aea9 feat(core/ui): T3T1 separate wallet created screen
Commit adds separate call of success screen after wallet is created.
This is to ensure the success is shown even when skip_backup is set in
the protob msg.

[no changelog]
2024-06-06 14:00:13 +02:00
obrusvit
dd70b438d3 feat(core/ui): default button active style
[no changelog]
2024-06-06 14:00:13 +02:00
obrusvit
5bd6996ae4 feat(core/ui): show success screens between shares
This commit also adds minor improvements to reset flow.

[no changelog]
2024-06-06 14:00:13 +02:00
obrusvit
72bdea6754 chore(core): remove BIG font from lang jsons
Foreign characters are not needed at the moment as the font is used only
in ShareWords.

[no changelog]
2024-06-06 14:00:13 +02:00
obrusvit
66495f3b8e chore(core): update lang jsons
Translations delivered from diff of en.json by the translation agency.

en.json is sorted.

[no changelog]
2024-06-06 14:00:13 +02:00
Martin Milata
6911870654 fix(core/ui): T3T1: ethereum signtx hold
[no changelog]
2024-06-06 14:00:13 +02:00
tychovrahe
09fc0ebf3e fix(core): add missing tap to confirm screens to mercury
[no changelog]
2024-06-06 14:00:13 +02:00
Martin Milata
b567d15732 perf(core/ui): T3T1: reduce ParagraphSources to save flash
[no changelog]
2024-06-06 14:00:13 +02:00
Martin Milata
b64c8ef6a2 perf(core/ui): remove Child from T3T1 Frame
[no changelog]
2024-06-06 14:00:13 +02:00
Martin Milata
320fa06122 fix(core/ui): T3T1: prompt screen for confirm_action
[no changelog]
2024-06-06 14:00:13 +02:00
Martin Milata
4d6af487f4 fix(core/ui): T3T1: remove ButtonPage, Dialog, IconDialog
[no changelog]
2024-06-06 14:00:13 +02:00
Martin Milata
e268f79749 fix(core/ui): T3T1: improve passphrase prompt
[no changelog]
2024-06-06 14:00:13 +02:00
tychovrahe
9ee670a440 feat(core): change default homescreen image for mercury
the default homescreen is rendered algorithmically, when changing homescreen to default we now use text message due to lack of scaling

[no changelog]
2024-06-06 14:00:13 +02:00
tychovrahe
0cd36cd41b fix(core): fix lockscreen animation cutting from right and bottom
[no changelog]
2024-06-06 14:00:13 +02:00
tychovrahe
2f6ade5911 feat(core): word quiz enter animation
[no changelog]
2024-06-06 14:00:13 +02:00
tychovrahe
6ad41aa06e feat(core): improve hold to confirm animation
[no changelog]
2024-06-06 14:00:13 +02:00
tychovrahe
a66dd78ef7 fix(core): fix missing hold to confirm screen
[no changelog]
2024-06-06 14:00:13 +02:00
Martin Milata
9cd933b88e perf(core/ui): save flash by forbidding some inlining
[no changelog]
2024-06-06 14:00:13 +02:00
matejcik
d1cf36097a refactor(core): optimize repeated code for swipe directions 2024-06-06 14:00:13 +02:00
matejcik
fbfb000d62 refactor(core): optimize copyabilitity in swipe_detect 2024-06-06 14:00:13 +02:00
tychovrahe
a67bc19bac feat(core) screen transitions for mercury UI
[no changelog]
2024-06-06 14:00:13 +02:00
Ioan Bizău
ed58409888 chore(core): update tests 2024-06-05 12:35:09 +03:00
matejcik
cab6fd0799 refactor(core/wire): move restarting control to handle_single_message
that way it is possible to avoid restarting if we failed to find a
handler for a message (makes it faster with no ill effects because
"failed to find handler" (a) shouldn't happen and (b) doesn't cause any
significant fragmentation)
2024-06-05 12:35:09 +03:00
Ioan Bizău
8870869f93 chore(core): rename recovery type & kind and tweak feature flags 2024-06-05 12:35:09 +03:00
matejcik
49daeaa746 refactor(core): introduce wire filters 2024-06-05 12:35:09 +03:00
Ioan Bizău
8ef7dfab0d feat(core): implement repeated backup 2024-06-05 12:35:09 +03:00
tychovrahe
42e001e6d3 fix(core): fix boot flags evaluation with new rendering
[no changelog]
2024-06-03 19:43:08 +02:00
matejcik
4e1e3bc550 fix(core): revert bad renderer lifetime changes
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
f793e6d509 refactor(core): move mercury loader to cshape module
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
51c1ff728d refactor(core): remove lockscreen lifetimes
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
e03d404dca fix(core): ensure drop is called on layout objects
[no changelog]
2024-06-03 19:43:08 +02:00
matejcik
813d9b7687 feat(core/rust): add option to Gc-allocate with finaliser
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
288c855868 fix(core): prevent negative circle rendering
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
5f30194a34 fix(core): prevent unnecessary display refreshing
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
0c4b1d6213 fix(core): fix framebuffer switching, was too fast so the change was sometimes not visible
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
88078db700 feat(core): mercury ui homescreen
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
429a558d78 fix(core): mercury ui animations only ask for frame on timer event
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
e53e7cc13b refactor(core): mercury ui: downgraded homescreen module to file
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
a34c2cb9dd feat(core): animated lockscreen for mercury UI
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
b178c10e8b fix(core): prevent overloading app with touch events
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
1be6208a02 feat(core): remove mandatory startup wait for models other than T2T1 and T2B1
[no changelog]
2024-06-03 19:43:08 +02:00
tychovrahe
17072faa65 feat(core): animate status screen in mercury ui
[no changelog]
2024-06-03 14:26:25 +02:00
tychovrahe
47a2661736 feat(core): respect disable animations in hold to confirm
[no changelog]
2024-06-03 14:26:25 +02:00
tychovrahe
c8c7001301 feat(core): implement tap to confirm in mercury UI
[no changelog]
2024-06-03 14:26:25 +02:00
tychovrahe
491aeaa0f5 feat(core): add value info to brightness dialog in mercury
[no changelog]
2024-06-03 14:26:25 +02:00
tychovrahe
3a8595b43a fix(core): ensure circles with radius zero are not rendered
[no changelog]
2024-06-03 14:26:25 +02:00
tychovrahe
67fe334dc2 feat(core): add hold-to-confirm animation to mercury UI
[no changelog]
2024-06-03 14:26:25 +02:00
cepetr
1f01150e7c feat(core): introduce a stopwatch
[no changelog]
2024-06-03 14:26:25 +02:00
cepetr
212391fc37 feat(core): add pareen & easer crates
[no changelog]
2024-06-03 14:26:25 +02:00
tychovrahe
b9a55cf2a7 feat(core): add settings to turn haptic on/off
[no changelog]
2024-06-03 14:26:25 +02:00
tychovrahe
2e10d440fa fix(core): add subtitle to confirm action
[no changelog]
2024-06-03 14:26:25 +02:00
matejcik
7e2f985037 chore(core): drop unused progress impl 2024-06-03 14:26:25 +02:00
matejcik
9bed793f68 refactor(core): provide backlight values from Rust 2024-06-03 14:26:25 +02:00
tychovrahe
a65511846b feat(core): added user adjustable brightness setting 2024-06-03 14:26:25 +02:00
matejcik
5ec8b58772 style(core/rust): remove unreachable statement 2024-05-31 15:49:29 +02:00
matejcik
dd0fe3d878 test(core/ui): fix Rust paragraph splitting unit tests on T3T1 2024-05-31 15:49:29 +02:00
matejcik
9a6f6c6b75 fix(core/ui): fix build of Rust unit tests on T3T1 2024-05-31 15:49:29 +02:00
matejcik
27fe6810c0 refactor(core/ui): better structured selection of render_on_display function
We should still get rid of this completely though 🤷
2024-05-31 15:49:29 +02:00
matejcik
e62f0b507a build(core): fix build for Rust unit tests on T3T1 2024-05-31 15:49:29 +02:00
Ondřej Vejpustek
67ac4078f7 feat(core): add AES-GCM in-place encryption and decryption
[no changelog]
2024-05-31 15:41:06 +02:00
Martin Milata
662f13136f fix(core/ui): T3T1: get rid of some of the remaining button dialogs 2024-05-31 11:59:52 +00:00
Martin Milata
69e406f7cf fix(core/ui): T3T1 device tests
[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
c03781aef9 fix(core/ui): T3T1: keep only lowercase letters in font_ttsatoshi_demibold_42
To save space.

[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
cde0dce3ef fix(core/ui): T3T1: rebase on main 2024-05-31 11:59:52 +00:00
obrusvit
27d733f89d feat(core/ui): T3T1 backup checklist
Also add subtitle to ShareWords.

[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
43eeccac59 feat(core/ui): T3T1 request number flow
[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
9c14cae656 fix(core/ui): allow component to terminate flow on swipe
[skip_ci]
2024-05-31 11:59:52 +00:00
Martin Milata
cbcd9dd8bd fix(core/ui): missing swipe event when animations disabled 2024-05-31 11:59:52 +00:00
Martin Milata
bd8ce6e55d fix(core/ui): T3T1 always detect swipes on entire screen
[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
d6152c02e9 refactor(core/ui): T3T1: drop duplicate Swipe implementation
[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
d2bfe56293 fix(core/ui): make it harder to accidentally close VerticalMenu 2024-05-31 11:59:52 +00:00
Martin Milata
30ca8bdd62 feat(core/ui): T3T1 share words animation
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
e5e8e27abc feat(core/ui): T3T1 recovery keyboards
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
3f0ab537af feat(core/ui): T3T1 passphrase keyboard
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
f11c2891d8 feat(core/ui): allow rounded mercury button
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
250593125c feat(core): update translation strings
Based on latest Figma designs.

[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
198693259d fix(core/ui): set page_count through rust ButtonRequest 2024-05-31 11:59:52 +00:00
Martin Milata
53609a85fd refactor(core/ui): fix clippy issues 2024-05-31 11:59:52 +00:00
Martin Milata
b16411631b fix(core/ui): T3T1 ButtonRequests from rust
[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
a212b325fe feat(core/ui): T3T1 send flow
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
7bbfa64dbb fix(core/ui): re-export T3T1 icons
Commit re-exports T3T1 icons (mercury UI) in white color so that
applying color to them during rendering works as expected. Previously
they were grey and the desired color mixed with grey.

[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
11808a6f14 fix(core): rebase on drawlib 2024-05-31 11:59:52 +00:00
obrusvit
1ee36baea8 feat(core/ui): T3T1 confirm_action
Adds SwipeFlow for ConfirmAction or ConfirmActionSimple. Without
animation as of now.

[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
d8f20616be feat(core/ui): T3T1 set new PIN flow
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
51a78dddee feat(core/ui): T3T1 PIN keyboard
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
63945ab86f refactor(core): remove upper() calls in mercury
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
03cd4fe363 refactor(core): mercury - seed to wallet backup
Applying change of string names from cherry-picked commit.

[no changelog]
2024-05-31 11:59:52 +00:00
tychovrahe
3109001fa0 refactor(core): remove old homescreen rendering from mercury UI
[no changelog]
2024-05-31 11:59:52 +00:00
tychovrahe
0993ca0434 feat(core): lockscreen for mercury_ui
[no changelog]
2024-05-31 11:59:52 +00:00
tychovrahe
14c81f6860 feat(core): T3T1 loaders improvement
[no changelog]
2024-05-31 11:59:52 +00:00
tychovrahe
f3ced5e831 feat(core): expand menu button touch area a bit more
[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
e0fece2050 fix(core/ui): T3T1 UI tests: GetAddress
[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
6ddf1c849a fix(core/ui): respect animation_disabled() on T3T1 2024-05-31 11:59:52 +00:00
Martin Milata
687d773547 build(core/firmware): TREZOR_MODEL=T3T1 implies NEW_RENDERING=1
[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
091b51c9c4 fix(core/ui): T3T1 lints
[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
5020868c2c feat(core/ui): T3T1 receive flow
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
1028c3500f feat(core/ui): T3T1 separate reset flows
Create separate flows for wallet creating, prompt of backup and
recovery.

Put more strings to copy.

Change style of Frame subheader.
2024-05-31 11:59:52 +00:00
obrusvit
4471281adc feat(core/ui): improve T3T1 recovery 2024-05-31 11:59:52 +00:00
obrusvit
6486b03248 feat(core/ui): T3T1 mnemonic keyboard
These are initial changes to the mnemonic keyboard designs. The designs
themselves from Figma are still WIP.
2024-05-31 11:59:52 +00:00
obrusvit
0566f0b7c3 feat(core/ui): T3T1 word count choice 2024-05-31 11:59:52 +00:00
obrusvit
8f4e0cc885 feat(core/ui): add text align to T3T1 button 2024-05-31 11:59:52 +00:00
Martin Milata
dc2525196b refactor(core/ui): T3T1 flow animation
[no changelog]
2024-05-31 11:59:52 +00:00
Martin Milata
b05b54dfd8 refactor(core/ui): VerticalMenu flexibility 2024-05-31 11:59:52 +00:00
Martin Milata
cf53876292 refactor(core/ui): rust UI flow simplification 2024-05-31 11:59:52 +00:00
Martin Milata
1b6b2d2b9f chore(core/rust): fix formatting 2024-05-31 11:59:52 +00:00
Martin Milata
908f123dbf refactor(core/ui): fix bootloader build failure 2024-05-31 11:59:52 +00:00
obrusvit
23021c5152 fix(core/ui): remove border from T3T1 buttons
According to Figma designs, there will be no rounded buttons in T3T1, so
the ButtonStyle does not need these fields.

[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
0615b1bbc2 feat(core/ui): T3T1 confirm backup flow 2024-05-31 11:59:52 +00:00
obrusvit
7905770e7e feat(core/ui/): introduce SwipeUpScreen
A simple wrapper of a component which supports returning
PageMsg::Confirmed if swipe up action was detected.
2024-05-31 11:59:52 +00:00
obrusvit
6b76ec0413 feat(core/ui): add T3T1 Status/PromptScreen
StatusScreen serves to show a result of operation, typically a checkmark
with a circle around dismissed by swipe up gesture.

PromptScreen serves to confirm action, typically by holding a button.

Designs based on Figma.
So far without animation.
2024-05-31 11:59:52 +00:00
obrusvit
1882cc3a80 feat(core/ui): T3T1 Frame additions
This commit allows all combinations of Frame designs from Figma. This
includes adding icon_color to ButtonStyle and a small cleanup of
ButtonStyleSheets.
2024-05-31 11:59:52 +00:00
obrusvit
fd96ae5548 feat(core/emu): move btn swipe to middle
Swipe action initiated by arrow button press now starts in the middle of
the screen which should always be in the swipe area.
2024-05-31 11:59:52 +00:00
obrusvit
b8fd987dd8 feat(core/ui): add two more T3T1 icons
Icon named sign used in hold to confirm prompt screens.
2024-05-31 11:59:52 +00:00
obrusvit
8a56c393e2 feat(core/ui): T3T1 reset wallet screen
The first screen in wallet reset (onboarding or recovery) implemented as
a simple SwipeFlow to handle moving between Menu and back.
2024-05-31 11:59:52 +00:00
obrusvit
b87048e265 feat(core/ui): add Footer to T3T1 Frame 2024-05-31 11:59:52 +00:00
obrusvit
683ea6ed26 fix(core): rebase on drawlib
mercury theme.rs needs some cleanup after this action
2024-05-31 11:59:52 +00:00
Martin Milata
1363495165 feat(core/ui): GetAddress flow demo 2024-05-31 11:59:52 +00:00
Martin Milata
10234787a4 feat(core/ui): rust-based UI flows
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
ac39b026cf fix(core): rebase on drawlib and TStringificaton
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
8978f36096 feat(core): T3T1 ShareWords component 2024-05-31 11:59:52 +00:00
Martin Milata
8a5afbe585 style(core): fix formatting
[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
7ce980ca98 fix(core): port changes from drawlib to mercury
Again rebase on current drawlib
Move of canvas/Canvas to shape/Canvas.
Get rid of ui/shape/model.
A few other minor changes.

[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
9b98c8af11 feat(core): T3T1 corner highlight shape
Adds a new shape which serves to highlight information within a
rectangle.
2024-05-31 11:59:52 +00:00
obrusvit
befaf87f2d feat(core): T3T1 Footer component 2024-05-31 11:59:52 +00:00
obrusvit
80462282dc feat(core): T3T1 vertical menu 2024-05-31 11:59:52 +00:00
obrusvit
55067a6d40 fix(core): rebase on current drawlib
Port new render function signature to model_mercury.
Fix some rebase errors.
Also port recent changes from mp <-> rust iface.

[no changelog]
2024-05-31 11:59:52 +00:00
obrusvit
fa4de43368 feat(core): add rough TextStyles for T3T1 2024-05-31 11:59:52 +00:00
Martin Milata
940f31c3fb feat(core/ui): T3T1 frame 2024-05-31 11:59:52 +00:00
Martin Milata
d6e5800413 feat(core): add icons for T3T1 2024-05-31 11:59:52 +00:00
obrusvit
67de10e96f feat(core): add colors for T3T1 2024-05-31 11:59:52 +00:00
Martin Milata
8d4472a68e feat(core): init T3T1 UI layouts
Start with copy of components and layouts from T2T1.
2024-05-31 11:59:52 +00:00
Martin Milata
2ba42d716e feat(core): init T3T1 UI layouts: meta 2024-05-31 11:59:52 +00:00
Martin Milata
d6c502f27e feat(core): add fonts for T3T1 2024-05-31 11:59:52 +00:00
M1nd3r
8bf84c2907 chore(core): change build_mocks to include empty lines
[no changelog]
2024-05-31 13:35:11 +02:00
M1nd3r
1d747d3b7f docs(core): improve documentation of crc32 function
[no changelog]
2024-05-31 11:25:49 +02:00
M1nd3r
5c6af8332a test(core): add tests for device_secret and cred_auth_key_counter
[no changelog]
2024-05-31 10:50:16 +02:00
M1nd3r
45d06f13eb feat(core): add device_secret and cred_auth_key_counter
[no changelog]
2024-05-31 10:50:16 +02:00
matejcik
cd319fec1f chore(core): add signed T3T1 bootloader 2.1.6 2024-05-29 10:07:03 +02:00
matejcik
8a5d3c8398 docs(core/bootloader): add missing changelog entry 2024-05-29 10:07:03 +02:00
Martin Milata
3efa0f6bbd feat(core/ui): sending button requests from rust
[no changelog]
2024-05-28 21:20:38 +00:00
tychovrahe
fe829a5d59 fix(core): fix clearing st7789's internal framebuffer when changing display orientation
[no changelog]
2024-05-28 20:56:48 +02:00
Andrew Kozlik
d4953e4af3 feat(core): Do not store identifier for SLIP-39 extendable shares. 2024-05-28 18:03:26 +02:00
Andrew Kozlik
f24c48ef1e feat(core): Add extendable BackupTypes. 2024-05-28 18:03:26 +02:00
Andrew Kozlik
b14b557efc refactor(core): Clean up BackupType usage. 2024-05-28 18:03:26 +02:00
Andrew Kozlik
9d0d1b3402 feat(core): Support extendable backup flag in SLIP-39. 2024-05-28 18:03:26 +02:00
cepetr
c0b3a2c26b feat(core/rust): introduce unlock-screen animated overlay
[no changelog]
2024-05-28 17:07:52 +02:00
cepetr
321e4be819 feat(core/rust): introduce render_on_canvas functionality
[no changelog]
2024-05-28 17:07:52 +02:00
cepetr
e579254f7a feat(core/rust): introduce RawImage shape
[no changelog]
2024-05-28 17:07:52 +02:00
cepetr
89ae44ebfa feat(core/rust): introduce ImageBuffer for advanced drawing
[no changelog]
2024-05-28 17:07:52 +02:00
cepetr
001acc770c feat(core/rust): use f32 angles in ui components
[no changelog]
2024-05-28 17:07:52 +02:00
cepetr
f03e4c8d9c feat(core/rust): introduce f32 angles for sector drawing
[no changelog]
2024-05-28 17:07:52 +02:00
cepetr
e3a383526b feat(core): introduce mono8 bitmap blending
[no changelog]
2024-05-28 17:07:52 +02:00
Ioan Bizău
269adf4868 chore(core): add coin support info for T3T1 2024-05-24 13:53:05 +02:00
matejcik
44a6696f24 build(core): improve model detection
instead of MODEL_IS_T2B1, we now catch INTERNAL_MODEL == Txyz

this is still not perfect because it can't detect 'in'/'not in', which
sucks but what can we do
2024-05-24 13:53:05 +02:00
Pavol Rusnak
87619c19ee chore(core/rust): bump buildgen to 0.62.0
this fixes build on macOS

[no changelog]
2024-05-24 12:04:24 +02:00
Peter Jaško
56f963d332 chore: Changelog 2024-05-23 10:01:48 +02:00
Peter Jaško
d1311e786a chore(cardano): Update URL max length 2024-05-23 10:01:48 +02:00
Peter Jaško
7eb6fcf43c feat(cardano): Tag sets 2024-05-23 10:01:48 +02:00
Peter Jaško
10e4352aad feat(cardano): Add Conway certificates 2024-05-23 10:01:48 +02:00
tychovrahe
76e98ecc3d fix(core): fix DISC2 build
[no changelog]
2024-05-21 19:01:31 +02:00
tychovrahe
ffe1ac7d7e fix(core): use DISPLAY_RGB565 macro consistently
[no changelog]
2024-05-21 19:01:31 +02:00
tychovrahe
9166dc330e refactor(core): reorganize model-specific files in embed/models
[no changelog]
2024-05-21 19:01:31 +02:00
tychovrahe
0b5e8ed480 refactor(core): introduce emulator boards
[no changelog]
2024-05-21 19:01:31 +02:00
tychovrahe
e6f2fa711e refactor(core): reorganize model specific files in site-scons
[no changelog]
2024-05-21 19:01:31 +02:00
tychovrahe
c9027b1a1a fix(core): fix alpha component extraction
[no changelog]
2024-05-20 09:20:26 +02:00
matejcik
ad84f42b0b style(core/rust): clippy hints applied
[no changelog]
2024-05-17 14:57:37 +02:00
matejcik
754b0a92b9 refactor(core/ui): enable non-conflicting modules even if unused
[no changelog]
2024-05-17 14:57:37 +02:00
Andrew Kozlik
c2c1591f5c chore(core): Improve VTRUST bits documentation and naming.
[no changelog]
2024-05-17 14:37:38 +02:00
matejcik
cf58fdd313 build(core): move default values for bindgen macros (back) into build.rs 2024-05-17 13:43:48 +02:00
tychovrahe
751390ec08 fix(core): fix old frame flicker when backlight is risen too soon
[no changelog]
2024-05-17 10:43:14 +02:00
tychovrahe
a86f3604ca fix(core): fix TS3 bootloader crash when entering menu
[no changelog]
2024-05-17 10:42:54 +02:00
tychovrahe
4f1d03fce8 feat(core): add alpha capabilities to toif, text, circle
[no changelog]
2024-05-17 10:42:32 +02:00
tychovrahe
2a123b3c5e feat(core): add alpha capabilities to 4-bit blending
[no changelog]
2024-05-17 10:42:32 +02:00
cepetr
28aa0a7ee3 feat(core): integrate new drawing library
[no changelog]
2024-05-17 09:17:37 +02:00
cepetr
5d8a7ac5bf feat(core): introduce new drawing library
[no changelog]
2024-05-17 09:17:37 +02:00
cepetr
3336e3902f feat(core): introduce new display drivers
[no changelog]
2024-05-17 09:17:37 +02:00
cepetr
80d1ce25c6 refactor(core/rust): improve tjpgdec interface
[no changelog]
2024-05-17 09:17:37 +02:00
matejcik
12ff2e4570 refactor(core/rust): allow Copy and Clone for Gc
This is legal for garbage-collected pointers and we only avoided the
implementation due to being careful.

Now is the first time we need that functionality.

[no changelog]
2024-05-17 09:17:37 +02:00
Ioan Bizău
3d74e30fa7 chore(core): rename Shamir to Multi-share
[no changelog]
2024-05-16 16:57:55 +03:00
Ondřej Vejpustek
756d250015 chore(core): initialize automatic variables to zero
[no changelog]
2024-05-10 20:06:28 +02:00
Ondřej Vejpustek
6b81d24b5c chore(core): separate crypto sources in build scripts
[no changelog]
2024-05-10 20:06:28 +02:00
Ondřej Vejpustek
18f7820d47 style: fix style according to new clang
[no changelog]
2024-05-10 20:06:28 +02:00
Ondřej Vejpustek
ccb242ee1c chore(core): introduce THP flag
[no changelog]
2024-05-10 20:05:37 +02:00
Ondřej Vejpustek
5140cba7d2 test(core): add elligator2 unit tests
[no changelog]
2024-05-10 20:05:37 +02:00
Ondřej Vejpustek
2f699a1b6f feat(core): add elligator2 python bindings
[no changelog]
2024-05-10 20:05:37 +02:00
Jan Šetina
447c680b88 chore(core): update cs.json and fixtures
Fixes https://github.com/trezor/trezor-firmware/issues/3697

[no changelog]
2024-05-09 21:12:44 +00:00
tychovrahe
d04ecba815 fix(core): fix tt ui loader haptic feedback
[no changelog]
2024-05-09 14:51:05 +02:00
tychovrahe
c680187b0e feat(core): add disable haptic option to tt ui button
[no changelog]
2024-05-09 14:51:05 +02:00
cepetr
04d5017228 feat(core): improve loader haptic effect
[no changelog]
2024-05-09 14:51:05 +02:00
M1nd3r
2e58a4959f docs(core): fix reference to SLIP-23 in cardano node derivation
[no changelog]
2024-05-09 13:34:28 +02:00
obrusvit
069ed1eb32 refactor(core): no all-caps in other langs jsons
This commit changes translations strings of ES, FR, CS, DE langs so that
they do not use UPPERCASED titles, button labels and other texts.

[no changelog]
2024-05-08 22:46:58 +02:00
obrusvit
aaff0fe2d3 refactor(core): do not use all-caps in en.json
The change is necessary for future models where titles might not be
uppercased.

[no changelog]
2024-05-08 22:46:58 +02:00
obrusvit
fccfa43ac9 fix(core/ui): fix model R common title
The title previously disappeared after going back and forth. Used in PIN
setting and FIDO confirm.

[no changelog]
2024-05-08 22:46:58 +02:00
obrusvit
68e01a48cb fix(core/ui): fix model R altcoin summary
[no changelog]
2024-05-08 22:46:58 +02:00
obrusvit
f8fcb49ba6 refactor(core): allow changing button font on R
By default, buttons have uppercased font. The addition is necessary to
customize font on info buttons where we need normal font.

[no changelog]
2024-05-08 22:46:58 +02:00
obrusvit
f9e55a215d refactor(core): replace upper calls by upper font
[no changelog]
2024-05-08 22:46:58 +02:00
obrusvit
43e759ea0b refactor(core): apply uppercased fonts in build
[no changelog]
2024-05-08 22:46:58 +02:00
obrusvit
c448a7bcfc refactor(tools): add gen_upper arg to gen_font
The new option allows generation of font glyph definition where both
lowercase and uppercase letters are mapped to uppercase glyphs.

[no changelog]
2024-05-08 22:46:58 +02:00
matejcik
8640b50d81 style(core): upgrade pyright to 1.1.361
[no changelog]
2024-05-07 11:57:10 +02:00
tychovrahe
6fe476a828 chore(core): fix typos in usb implementation
[no changelog]
2024-05-06 19:51:06 +02:00
tychovrahe
1ce694b7fc fix(core): fix usb configuration for FS peripheral (use 6 endpoints)
[no changelog]
2024-05-06 19:51:06 +02:00
matejcik
12725d9835 chore(core): bump bootloader / prodtest versions after release 2024-05-06 13:21:14 +02:00
matejcik
e8c65b9f24 chore(core): changelog for bootloader and prodtest 2024-05-06 13:20:39 +02:00
tychovrahe
6b31b8eec3 chore(core): change USB manufacturer and product strings for new models
[no changelog]
2024-05-06 13:10:36 +02:00
tychovrahe
8ebb8c2128 fix(core): fix prodtest WIPE on STM32U5
[no changelog]
2024-05-05 18:36:47 +02:00
Andrew Kozlik
f8be07b732 feat(core): Increase Optiga I2C timeout.
[no changelog]
2024-05-05 10:03:32 +02:00
Andrew Kozlik
d453dac45c feat(core): Measure Optiga response timeout in ms not number of attempts.
[no changelog]
2024-05-05 10:03:32 +02:00
Andrew Kozlik
594d7425cd feat(core): Retry getting Optiga response even when it doesn't seem to have one.
[no changelog]
2024-05-05 10:03:32 +02:00
Andrew Kozlik
62e3a414ad chore(core): Disable wait_random() for prodtest and VCP.
[no changelog]
2024-05-05 10:03:32 +02:00
matejcik
45a973b8f9 feat(core/prodtest): do not lock Optiga in non-production builds
[no changelog]
2024-05-03 09:49:37 +02:00
Andrew Kozlik
ed43a5bc5b feat(core): Don't lock Optiga in debug builds.
[no changelog]
2024-05-03 09:49:37 +02:00
matejcik
54c441a607 feat(core): enable Optiga logging in debug builds by default
[no changelog]
2024-05-03 09:49:37 +02:00
matejcik
8623e57f43 chore(core): add prodtest provisioning script
[no changelog]
2024-05-03 09:49:37 +02:00
Andrew Kozlik
4fb06815b5 feat(core): Set trust anchor data type in prodtest.
[no changelog]
2024-05-03 09:49:37 +02:00
Andrew Kozlik
182a9b1ce8 refactor(core): Refactor Optiga macros.
[no changelog]
2024-05-03 09:49:37 +02:00
Andrew Kozlik
9a5e9b25c7 feat(core): Add Optiga command logging macro.
[no changelog]
2024-05-03 09:49:37 +02:00
Ioan Bizău
7c97561565 chore(core): rename "seed" to "backup" 2024-05-01 09:23:40 +02:00
Ioan Bizău
8ec9545b89 chore(core): add an extra confirmation for non-1-of-1 Shamir backups 2024-05-01 09:23:40 +02:00
Ioan Bizău
4afe42a57e refactor(core): make 1-of-1 SLIP39 backups use same messaging as BIP39 2024-05-01 09:23:40 +02:00
Ioan Bizău
3006224bff feat(core): add ability to request backups with any number of groups/shares 2024-05-01 09:23:40 +02:00
Andrew Kozlik
d6b352befe core(feat): Add FIRMWARE VERSION command to prodtest. 2024-04-30 11:14:22 +02:00
M1nd3r
0d7fe7d643 chore(core): add colors to unittest prints
[no changelog]
2024-04-26 18:04:33 +02:00
tychovrahe
ea1c32f90e fix(core/rust): fix bindgen macros generation
[no changelog]
2024-04-26 13:36:58 +02:00
tychovrahe
91a783ee37 chore(core): fix flash_combine makefile command
[no changelog]
2024-04-26 12:36:45 +02:00
Andrew Kozlik
27f54eec9c feat(core): Add unit packaging variant field to Features.
[no changelog]
2024-04-25 15:51:52 +02:00
tychovrahe
d349c44a58 refactor(core): generate macros for rust bindgen automatically
[no changelog]
2024-04-25 13:20:07 +02:00
tychovrahe
c635b945e1 chore(core/boardloader): bump version after release
[no changelog]
2024-04-24 15:15:14 +02:00
tychovrahe
d9590cbe90 chore(core/boardloader): generate changelog
[no changelog]
2024-04-24 15:15:14 +02:00
tychovrahe
ab11afa442 fix(core): set proper VDD level for T3T1 boards
[no changelog]
2024-04-24 12:55:52 +02:00
matejcik
39e1085295 chore(core): add T3T1 QA bootloader 2.1.5 2024-04-22 10:56:25 +02:00
matejcik
66b96bc279 build(core): fix prodtest build from build-docker
build-docker.sh will unconditionally pass in a value for the
VENDOR_HEADER envvar. This is a problem if the user didn't specify one,
because the value inside the container is going to be empty string.

We make prodtest look at whether the value of VENDOR_HEADER is truthy
instead of a literal None. Which is a correct logic: if the user
deliberately sets the value to an empty string, the build will fail
anyway, so we ignore such value.
2024-04-22 10:56:25 +02:00
matejcik
f0c7cc4e8e chore(core): add signed vendor headers for T3T1 2024-04-22 10:56:25 +02:00
matejcik
c01302dd31 chore(core): add signed production T3T1 bootloader v2.1.5 2024-04-22 10:56:25 +02:00
tychovrahe
e5e40cf4a8 fix(core): ensure correctly programmed oem key option bytes
[no changelog]
2024-04-22 09:15:42 +02:00
tychovrahe
916dbdff9c fix(core): fix reboot to bootloader crash when display copying is in progress
[no changelog]
2024-04-18 10:50:46 +02:00
matejcik
90afd9c96a chore(core): bump versions of prodtest / bootloader after release 2024-04-17 14:40:30 +02:00
matejcik
4728b14bcc docs(core): add changelogs for prodtest and bootloader 2024-04-17 14:40:29 +02:00
matejcik
5b0b145f12 build(core): allow custom vendor header for prodtest
to facilitate building prodtest with unsigned VH and then replacing it
2024-04-17 14:40:29 +02:00
tychovrahe
dfe5ee67f1 fix(core): move OEM key check after display initialization so that error message can be displayed
[no changelog]
2024-04-17 14:23:09 +02:00
tychovrahe
457e5956c8 fix(core): fix sha256 calculation with hash processor
[no changelog]
2024-04-17 10:48:37 +02:00
Ondřej Vejpustek
e9f6eb0b2b fix(core/reflash): fix compile errors
[no changelog]
2024-04-16 17:41:30 +02:00
matejcik
89fdaed31e chore(core): add unsigned vendor headers with production keys 2024-04-12 16:13:52 +02:00
matejcik
0109ab2232 chore(core): make vendor_unsafe.toif small 2024-04-12 16:13:52 +02:00
matejcik
867300b8c6 chore(core): include T3T1 boardloader / bootloader production keys 2024-04-12 16:13:52 +02:00
matejcik
5d9bb0ebfc tools(core): nicer build_vendorheader for manual use
also will show you required header size
2024-04-12 16:13:52 +02:00
matejcik
729d7c59e1 fix(core/vendorheader): include correct backup key into trezor_btconly vendor header 2024-04-12 16:13:52 +02:00
Martin Milata
4baa4d95a4 fix(core): fix display fatal error screen (T3T1)
[no changelog]
2024-04-12 12:25:46 +00:00
Martin Milata
5c5433ada2 refactor(core/rust): use more Self
[no changelog]
2024-04-12 12:25:46 +00:00
Martin Milata
906c00e4e5 refactor(core): rename screen_boot_{empty,full} to screen_boot_stage_{1,2}
[no changelog]
2024-04-12 12:25:46 +00:00
Martin Milata
804d97c9d8 feat(core): bootloader: T3T1 startup UI
[no changelog]
2024-04-12 12:25:46 +00:00
tychovrahe
c277dbcfcb feat(core): T3T1 loader
[no changelog]
2024-04-12 12:25:46 +00:00
Martin Milata
cf00726152 feat(core): copy T2T1 bootloader UI for T3T1 2024-04-12 12:25:46 +00:00
Martin Milata
b5fa5a3f3a feat(core): add fonts for T3T1 bootloader
[no changelog]
2024-04-12 12:25:46 +00:00
tychovrahe
72146c2ae2 fix(core): fix display fatal error screen
[no changelog]
2024-04-11 19:16:23 +02:00
tychovrahe
165238b78e fix(core): fix T3T1 unsafe vendorheader
[no changelog]
2024-04-11 19:16:23 +02:00
tychovrahe
1600759457 refactor(core): simplify secret.h api, hide platform differences
[no changelog]
2024-04-11 16:13:58 +02:00
tychovrahe
89c6590e45 feat(core/prodtest): add commands TOUCH VERSION and VARIANT READ
[no changelog]
2024-04-11 10:05:13 +02:00
tychovrahe
c8e18dd4d2 fix(core): slow down SDIO communication in T3T1 prodtest
[no changelog]
2024-04-11 09:54:28 +02:00
Ondřej Vejpustek
548e329f9d fix(core): prevent negative-length array
[no changelog]
2024-04-09 14:29:46 +02:00
tychovrahe
a873a7064e chore(core): add comments to secret.h functions
[no changelog]
2024-04-08 21:41:30 +02:00
tychovrahe
8a18cfe0d4 feat(core): use U5 DHUK to encrypt optiga pairing secret in flash
[no changelog]
2024-04-08 21:41:30 +02:00
tychovrahe
e060ac68c5 feat(core): use U5 HW keys to additionally encrypt storage items
[no changelog]
2024-04-08 21:41:30 +02:00
cepetr
b1fb876709 fix(core): fix ts3 fonts
[no changelog]
2024-04-08 15:38:39 +02:00
Martin Milata
c7832c39ab refactor(core/rust/ui): use TString instead of StrBuffer when constructing layouts
[no changelog]
2024-04-06 20:31:36 +00:00
tychovrahe
256adc3567 refactor(core/rust) use TString in Label and Button
[no changelog]
2024-04-06 20:31:36 +00:00
tychovrahe
ed6aa48726 feat(core): use confidential section for confidential and sensitive data
[no changelog]
2024-04-05 18:54:30 +02:00
tychovrahe
535a052df4 refactor(core/rust): introduce UIFeaturesXXX trait as an abstraction over different UI implementation
[no changelog]
2024-04-05 18:16:59 +02:00
tychovrahe
ba741b81fd feat(core): use HSI as PLL source on T3T1
[no changelog]
2024-04-05 15:17:42 +02:00
tychovrahe
acb0e9fdc5 chore(core): set stack protector to strong
[no changelog]
2024-04-05 15:07:03 +02:00
cepetr
285b22e53e refactor(core): add ufmt, bump heapless from 0.7.6 - 0.8.0
[no changelog]
2024-04-04 15:02:28 +02:00
tychovrahe
ffccf849eb chore(core): fill T3T1 model full name
[no changelog]
2024-04-04 12:46:44 +02:00
matejcik
39b7b22777 refactor(core/rust): Paragraph is now based on TString 2024-04-04 10:04:00 +02:00
matejcik
9c287adf64 feat(core/rust): some useful traits for TString
string equality comparison and SkipPrefix
2024-04-04 10:04:00 +02:00
matejcik
f3b884bf93 refactor(core): improve safety of translation blobs
* the public interface to Translations is now completely safe
* it is more obvious that `map_translated` needs to work the way it does
* documentation is improved
2024-04-04 09:53:45 +02:00
tychovrahe
ba065c5b38 fix(core/prodtest): do not require sd detect pin for running SD card test
[no changelog]
2024-04-03 16:48:28 +02:00
Pavol Rusnak
4b189eb2cb fix(core): always zero-initialize structures in trezorhal
[no changelog]
2024-04-03 13:08:16 +02:00
tychovrahe
576ed7e04e chore(core): use SD hal driver from submodule
[no changelog]
2024-04-03 13:08:16 +02:00
tychovrahe
69ed626ca0 fix(core): slowdown i2c on u5 to 200kHz
[no changelog]
2024-04-03 11:01:35 +02:00
Andrew Kozlik
15e02be4e4 fix(core): Clean up when constructor fails to reduce memory fragmentation.
[no changelog]
2024-04-03 10:26:46 +02:00
Andrew Kozlik
49a64cb3a1 test(core): Add AES-GCM unit tests.
[no changelog]
2024-04-03 10:26:46 +02:00
Andrew Kozlik
703ea32ceb feat(core): Add aesgcm class to trezor.crypto Python module.
[no changelog]
2024-04-03 10:26:46 +02:00
tychovrahe
89147ef493 refactor(core): improve flash api by introducing flash_area_write_data function
[no changelog]
2024-04-03 10:18:40 +02:00
tychovrahe
39cfa7087a fix(core): set proper GPIO speeds for T3T1
[no changelog]
2024-04-03 10:18:16 +02:00
matejcik
45a4a1da99 fix(core/translations): correctly rename previous symbol
[no changelog]
2024-04-02 11:10:24 +02:00
matejcik
1c36c0927c style(core): fix (hopefully) the weird clippy warning about HOMESCREEN_TOIF_X_OFFSET
[no changelog]
2024-03-30 12:10:59 +01:00
matejcik
379737a9a5 chore(core): translate storage strings into supported languages 2024-03-30 12:10:59 +01:00
matejcik
de2fe3d6d6 feat(core/ui): unify progress.py code between models, implement storage translations
fixes #3520
2024-03-30 12:10:59 +01:00
matejcik
ed89215a79 feat(core): expose StorageMessage to micropython
[no changelog]
2024-03-30 12:10:59 +01:00
matejcik
0fa9860cf5 chore(core): sign translations for 2.7.0, including Czech blob 2024-03-28 22:10:15 +01:00
matejcik
b2649b0085 refactor(core): introduce Simplified trait
to abstract over some common operations between models

[no changelog]
2024-03-28 13:04:21 +01:00
tychovrahe
047c8a881b fix(core): fix order of loading BHK into SAES key register
[no changelog]
2024-03-28 13:02:17 +01:00
cepetr
1e3e7f808b fix(core): fix build on disc2 model 2024-03-27 10:44:56 +01:00
matejcik
b263dbc109 fix(all): improve Solana template generation 2024-03-26 15:22:32 +01:00
matejcik
6918b16313 feat(core/translations): add support for explicitly specifying blob version
so that it's possible to re-sign translation blobs on a specific commit
for older firmware version
2024-03-26 15:22:32 +01:00
matejcik
229a06d3a2 fix(core): store translation signatures directly into history section
without messing with the "current" entry at all
2024-03-26 15:22:32 +01:00
matejcik
63d1311509 fix(core): properly move old translation signature to history 2024-03-26 15:22:32 +01:00
matejcik
64e507e853 chore(core): add translation signatures 2024-03-26 15:22:32 +01:00
matejcik
9569968459 build(core): rebuild appropriate parts when translation data changes
fixes #3535
2024-03-26 15:22:32 +01:00
gabrielkerekes
b61ed7c02a fix(solana): round up transaction fee
If `unit_price * unit_limit / 1000000` didn't result in an integer `int()` would round the number down. However on the blockchain the resulting fee was be rounded up.
2024-03-25 16:31:01 +01:00