1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-16 11:28:14 +00:00
Commit Graph

3889 Commits

Author SHA1 Message Date
tychovrahe
6667f96911 fix(core): fix T2B1 display orientation south 2024-07-08 17:40:14 +02:00
cepetr
59961984c3 feat(core/embed): prepare backlight driver for low power mode
[no changelog]
2024-07-08 12:05:20 +02:00
cepetr
68911c972b chore(core/embed): remove unused code
[no changelog]
2024-07-08 12:04:49 +02:00
cepetr
076b476cf5 fix(core/embed): fix memory clearing in u5 boardloader
[no changelog]
2024-07-08 12:04:49 +02:00
cepetr
0ea965d07e fix(core/embed): fix touch driver on dev kits
[no changelog]
2024-07-08 12:04:29 +02:00
obrusvit
4fe4bb0bed chore(core): remove some unused assets and code
Removing model_t leftovers from mercury code.

[no changelog]
2024-07-03 14:16:10 +02:00
Andrew Kozlik
ff653f038e feat(core): Optimize Optiga counter initialization.
[no changelog]
2024-07-01 18:05:20 +02:00
Andrew Kozlik
869b6fe6dc refactor(core): Use remaining PIN attempts in Optiga API.
[no changelog]
2024-07-01 18:05:20 +02:00
Andrew Kozlik
fc09379877 refactor(core): Clean up Optiga error handling.
[no changelog]
2024-07-01 18:05:20 +02:00
Martin Milata
99c3d35e07 chore(core): bump version to 2.8.1
[no changelog]
2024-07-01 11:57:32 +00:00
Martin Milata
dd4671a510 docs(core): changelog for 2.8.0 2024-07-01 11:56:56 +02:00
Martin Milata
54441182ea chore(common): set definition timestamp to the current signed definitions
[no changelog]
2024-07-01 11:49:31 +02:00
gabrielkerekes
6f76ac3be6 fix(solana): allow AToken Create instruction to contain an optional rent_sysvar account
This is needed because some dApps (https://jup.ag/perps or http://solend.fi/) include the rent_sysvar account although it's not required anymore (it's also not a part of the [official docs](https://docs.rs/spl-associated-token-account/latest/spl_associated_token_account/instruction/enum.AssociatedTokenAccountInstruction.html#variant.Create)).
2024-07-01 09:46:40 +00:00
tychovrahe
23d31cc8b3 fix(core): fix lockscreen Not connected label hiding
[no changelog]
2024-07-01 09:07:07 +00:00
Martin Milata
106edd4309 feat(core/ui): T3T1: tutorial flow
[no changelog]
2024-07-01 09:35:11 +02:00
tychovrahe
b4200162ab fix(core): fix doubled touch clicks
[no changelog]
2024-07-01 09:33:40 +02:00
tychovrahe
283baa412a fix(core): fix backlight fading when first painting a layout
[no changelog]
2024-07-01 09:33:40 +02:00
tychovrahe
d08f5d05aa fix(core/mercury): improve handling and visual of swipes when displaying words 2024-07-01 09:33:40 +02:00
tychovrahe
e5fc1e1d42 fix(core/mercury): fix swipe animation when repeatedly touching display while the transition is already in effect 2024-07-01 09:33:40 +02:00
tychovrahe
56385f79c7 fix(core/mercury): disallow swipes when touch starts too close to an edge of the display 2024-07-01 09:33:40 +02:00
tychovrahe
bfbcecc085 fix(core/mercury): fix swipe effect duration when swipe is cancelled 2024-07-01 09:33:40 +02:00
tychovrahe
272b668feb fix(core/mercury): remove instant lock-trigger swipe behavior
[no changelog]
2024-07-01 09:33:40 +02:00
tychovrahe
a0e33d61bd fix(core/mercury): fix share words hold to confirm swipe effect 2024-07-01 09:33:40 +02:00
tychovrahe
e89ae8246d fix(core/mercury): do not block swipe on button press, abort press on swipe lock instead 2024-07-01 09:33:40 +02:00
tychovrahe
a4ff76e840 fix(core/mercury): adjust swipe effect direction when animating transition through python 2024-07-01 09:33:40 +02:00
obrusvit
2de8acc141 chore(core): remove CoSi functionality
trezorctl CoSi feature is removed from all models
2024-07-01 09:32:38 +02:00
obrusvit
665854cd9b chore(core): update translations
Translated copy for additional wallet backup info and some leftovers
from previous PRs.

[no changelog]
2024-06-30 12:07:09 +02:00
obrusvit
7adceec596 feat: use alternative numeral glyphs for T3T1
Numeral chars 0-9 mapped to glyphs indices 1298-1307.
This commit does not modify gen_font.py, see issue for that.
2024-06-30 12:07:09 +02:00
obrusvit
c73115df7b feat(core/ui): add PageCounter to T3T1 Footer
PageCounter sub-component is used within Footer to indicate progress in
screens, rendered e.g. as "1 / 20" for the first word in wallet backup.
2024-06-30 12:07:09 +02:00
obrusvit
aaa2ece3ba feat(core/ui): highlight repeated words on T3T1
ShowShareWords flow now informs the user if the word is repeated. The
most typical usecase in 1-of-1 shamir (SingleShare) where 3rd and 4th
word is "academic".
2024-06-30 12:07:09 +02:00
matejcik
6338ba994a docs(core): update Optiga-related changelogs 2024-06-25 13:37:54 +02:00
matejcik
8a3133bacc fix(core): include valid staging certificate for T3T1 emulator 2024-06-25 13:35:16 +02:00
Andrew Kozlik
4ee81daee7 feat(core): Add optiga_sec field to Features
[no changelog]
2024-06-25 12:45:00 +02:00
Andrew Kozlik
ca4bfa2ebd feat(core): Implement optiga.get_sec()
[no changelog]
2024-06-25 12:45:00 +02:00
Andrew Kozlik
4d4ee99716 fix(core): Increase Optiga MAX_RETRY_READ_MS to 6 sec. 2024-06-25 11:09:40 +02:00
tychovrahe
95c2cb2008 fix(core/mercury): show coinjoin authorized notification 2024-06-24 21:43:08 +02:00
tychovrahe
60add32e3b fix(core): T2B1 - left align title when changing homescreen
[no changelog]
2024-06-24 21:43:08 +02:00
tychovrahe
9ab2ba9157 feat(core/mercury): animated device label on homescreen/lockscreen 2024-06-24 21:43:08 +02:00
tychovrahe
3a3259b574 feat(core/mercury): change homescreen flow 2024-06-24 21:43:08 +02:00
Andrew Kozlik
f396d00c67 fix(core): Fix style and unix build.
[no changelog]
2024-06-24 16:04:03 +02:00
Andrew Kozlik
da068fb32e fixup! feat(core): Rework Optiga PIN slot configuration. 2024-06-21 18:55:01 +02:00
Andrew Kozlik
f393064ce7 feat(core): Improve PIN progress precision. 2024-06-21 18:55:01 +02:00
Andrew Kozlik
509e291118 feat(core): Rework Optiga PIN slot configuration. 2024-06-21 18:55:01 +02:00
Andrew Kozlik
9c50e15cf7 chore: Bump firmware and fix versions due to storage upgrade. 2024-06-21 18:55:01 +02:00
Andrew Kozlik
183e53d3c2 feat(storage): Rework PIN processing and upgrade storage. 2024-06-21 18:55:01 +02:00
Andrew Kozlik
7b636df35f feat(core): Rework Optiga PIN processing. 2024-06-21 18:55:01 +02:00
cepetr
a8f808822c fix(core/rust): shorten the ANIM_FRAME_TIMER deadline
[no changelog]
2024-06-19 16:40:23 +02:00
cepetr
bb310ad60d fix(core): improve framebuffer switching
[no changelog]
2024-06-19 16:40:23 +02:00
obrusvit
ed624e1cb8 feat(core/ui): use numerals in T3T1 checklist
[no changelog]
2024-06-19 16:02:24 +02:00
cepetr
bfedb96071 refactor(core/embed): prepare haptic driver for low power mode
[no changelog]
2024-06-19 14:05:35 +02:00
cepetr
3460c4b891 refactor(core/embed): prepare touch drivers for low power mode
[no changelog]
2024-06-19 14:03:38 +02:00
cepetr
089dc84f38 refactor(core/embed): remove unnecessary call to usb_stop
[no changelog]
2024-06-19 11:57:18 +02:00
cepetr
d8d6410284 refactor(core/embed): remove global deps from usb class drivers
[no changelog]
2024-06-19 11:57:18 +02:00
cepetr
baff1691a0 feat(core/embed): prepare usb driver for low power mode
[no changelog]
2024-06-19 11:57:18 +02:00
cepetr
a705335fe1 fix(core/embed): fix disc2 target build
[no changelog]
2024-06-19 11:57:18 +02:00
cepetr
0bc1d1f706 refactor(core/embed): refactor usb driver
[no changelog]
2024-06-19 11:48:06 +02:00
cepetr
8e429b0352 refactor(core/embed): move usb driver to its own folder
[no changelog]
2024-06-19 11:48:06 +02:00
cepetr
f5d35da635 fix(core/embed): fix random delays in usb driver
[no changelog]
2024-06-19 11:45:06 +02:00
obrusvit
a01a787113 refactor(core): remove StringType
This commit removes the last usage of StringType. In the future, we use
TString.

[no changelog]
2024-06-19 09:14:51 +02:00
matejcik
4e788aa2f5 fix(core/rust): more careful management of ShortString capacity 2024-06-19 09:14:51 +02:00
matejcik
8cf039740f style(core/rust): rustfmt 2024-06-19 09:14:51 +02:00
matejcik
8e52081d8a refactor(core/rust): unify String usage 2024-06-19 09:14:51 +02:00
matejcik
da37bce59d refactor(core/rust): drop ui::macros
removing inttostr!, build_string!, and relocating include_res!
2024-06-19 09:14:51 +02:00
matejcik
8134490e2e feat(core): introduce uformat!, use uDebug in favor of Debug
now that we have ufmt, this is just much nicer
2024-06-19 09:14:51 +02:00
matejcik
b406fc22f3 refactor(core/rust): clean up macro namespace 2024-06-19 09:14:51 +02:00
matejcik
567de6579e chore(core/rust): drop cstr_core dependency
now that we have c"..." literals in Rust
2024-06-19 09:14:51 +02:00
matejcik
ce2436245d chore(core/translations): add signatures for translation versions 2.7.1 and 2.7.2 2024-06-18 13:24:40 +02:00
matejcik
81d5cc29d5 fix(core/translations): properly update stored json version 2024-06-18 13:24:35 +02:00
Martin Milata
f2a2ddfd8d Merge branch 'release/24.06' 2024-06-17 22:14:02 +02:00
cepetr
ba56ff8483 refactor(core/embed): replace ensure(secfalse,... with error_shutdown
[no changelog]
2024-06-17 16:57:33 +02:00
cepetr
0f1cac9695 refactor(core): optimize assert/fatal_error for reduced flash footprint
[no changelog]
2024-06-17 16:57:33 +02:00
cepetr
06faae8f82 refactor(core/rust): replace panic! by fatal_error!
[no changelog]
2024-06-17 16:57:33 +02:00
cepetr
f5203011c5 feat(core/rust): introduce dbg_print and improve errors printing
[no changelog]
2024-06-17 16:57:33 +02:00
cepetr
5fc3c6e617 refactor(core): improve and simplify error handling
[no changelog]
2024-06-17 16:57:33 +02:00
Martin Milata
e7f083c3ca chore(core): bump version to 2.7.3
[no changelog]
2024-06-11 11:11:30 +00:00
tychovrahe
dfe6826101 fix(core): add missing swipe right to address QR screen - mercury ui 2024-06-10 14:50:28 +02:00
tychovrahe
84c182fdac fix(core): reduce animation frame requests when swiping
[no changelog]
2024-06-10 14:49:52 +02:00
matejcik
df051077ea chore(core/prodtest): bump version after release 2024-06-10 11:20:15 +02:00
matejcik
f556a1b4cc docs(core/prodtest): update changelog for v0.2.7 2024-06-10 11:17:20 +02:00
tychovrahe
b0b2ffd38f feat(core/prodtest): add reboot command 2024-06-10 11:10:33 +02:00
tychovrahe
000aa4ed21 fix(core/prodtest): fix touch_version command 2024-06-10 11:10:33 +02:00
matejcik
da75d8f4b6 chore(common): make unused fields optional
[no changelog]
2024-06-10 11:06:06 +02:00
Marek Polak
e90cf36624 chore(tests): remove params for unused checks
[no changelog]

(cherry picked from commit ff659a82d1)
2024-06-07 16:59:04 +02:00
Marek Polak
9a22d570f2 chore(core): remove unused checks
[no changelog]

(cherry picked from commit 8a7db4f1d3)
2024-06-07 16:59:04 +02:00
Marek Polak
ff659a82d1 chore(tests): remove params for unused checks
[no changelog]
2024-06-07 16:58:17 +02:00
Marek Polak
8a7db4f1d3 chore(core): remove unused checks
[no changelog]
2024-06-07 16:58:17 +02:00
Martin Milata
912535f6d2 Bump release version to 2.7.2 2024-06-07 16:04:56 +02:00
Ioan Bizău
731d6d0cdc chore(core): update copy and translate
[no changelog]

(cherry picked from commit b28e29cf4f)
2024-06-07 15:03:37 +02:00
Martin Milata
1d3ebd61c4 fix(core/ui): T3T1: wrong XPUB title
[no changelog]

(cherry picked from commit 3760dd307c)
2024-06-07 15:03:26 +02:00
tychovrahe
a3b6788967 fix(core): fix bootloader unlock check on STM32U5, fw only
[no changelog]

(cherry picked from commit 5a8989f00d)
2024-06-07 15:03:20 +02:00
obrusvit
c1e8c652a6 fix(core): TS3 device freeze
[no changelog]

(cherry picked from commit b560ce53c0)
2024-06-07 14:55:55 +02:00
obrusvit
b560ce53c0 fix(core): TS3 device freeze
[no changelog]
2024-06-07 14:35:08 +02:00
tychovrahe
5a8989f00d fix(core): fix bootloader unlock check on STM32U5, fw only
[no changelog]
2024-06-07 14:24:20 +02:00
Martin Milata
eff46b0d5c chore(core): bump version to 2.7.2
[no changelog]
2024-06-06 21:17:54 +00:00
Ioan Bizău
b28e29cf4f chore(core): update copy and translate
[no changelog]
2024-06-06 21:29:29 +02:00
Martin Milata
3760dd307c fix(core/ui): T3T1: wrong XPUB title
[no changelog]
2024-06-06 14:43:51 +00:00
Martin Milata
924492ce1b chore(common): set definition timestamp to the current signed definitions
[no changelog]
2024-06-06 14:30:14 +02:00
Martin Milata
d6186f105f docs(core): changelog for 2.7.1 2024-06-06 14:28:19 +02:00
matejcik
2bf2549a31 style(core): make newer pyrights happier 2024-06-06 14:00:13 +02:00
Martin Milata
cca066c476 fix(core/translations): remove unbreakable spaces for now 2024-06-06 14:00:13 +02:00
Martin Milata
e0dfa15e89 fix(core/ui): T3T1 confirm_action: hold implies prompt_screen 2024-06-06 14:00:13 +02:00
matejcik
ffe07f2ca6 feat(core): improve repeated backup
* allow upgrading from Single to Basic
* do not skip confirmation screen when sending BackupDevice from Suite
2024-06-06 14:00:13 +02:00
obrusvit
7b291725e2 fix: TypeError from SwipeUpScreen
This allows cancellable homescreen.

This commit also adds cancel to recovery homescreen.
2024-06-06 14:00:13 +02:00
obrusvit
e30de62adc tests: fix input_flows
Reset/recovery tests after adding Wallet created screen and separate
backup intro.

Regen signatures.json after rebase.

[no changelog]
2024-06-06 14:00:13 +02:00
obrusvit
fd59c2ce88 feat(core/ui): T3T1 backup cannot be skipped
This commit disallows the user to exit backup flow once initiated.

It also ensurer the  intro screen is shown when initiating backup via
protobuf msg after it was previously skipped during wallet creation.

[no changelog]
2024-06-06 14:00:13 +02:00
obrusvit
25a9ef3cf5 feat(core/ui): info screens before ShareWords
Inform the user about possible repeated words in 1-of-1 SLIP39.

Instruct the user to "repeat for all shares".

[no changelog]
2024-06-06 14:00:13 +02:00
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
gabrielkerekes
9b84ecf833 fix(solana): accept compute budget instructions at any position 2024-03-25 16:31:01 +01:00
RostarMarek
8b485de173 feat(solana): Hidden flag functionality for instructions 2024-03-25 16:31:01 +01:00
tychovrahe
a80959e50f feat(core): allow T3T1 to start without touch during testing
[no changelog]
2024-03-25 09:16:07 +01:00
tychovrahe
5e827e09c4 fix(core): fix haptic driver initialization
[no changelog]
2024-03-25 08:35:02 +01:00
obrusvit
54468abd89 feat(core/emu): handle arrow buttons as swipes
[no changelog]
2024-03-21 12:37:18 +01:00
Martin Milata
68ff90ccbd Merge branch 'release/24.03' 2024-03-20 23:51:47 +01:00
cepetr
a1165d9326 feat(core): introduce skip function for UzlibContext
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
9575c81bd3 feat(core): introduce new color functions
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
474484d249 feat(core): introduce new toif functions
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
254de49a62 feat(core): introduce new point & rect functions
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
9d6827e2fb refactor(core): remove unused ui components
[no changelog]
2024-03-20 17:04:25 +01:00
grdddj
3d386246be chore(core): update czech translations
[no changelog]
2024-03-20 14:38:21 +01:00
grdddj
50101c9882 chore(core): re-enable czech translations
[no changelog]
2024-03-20 14:38:21 +01:00
cepetr
dc715d7c0d refactor(core): prepare for non mutable paint function
[no changelog]
2024-03-19 17:57:38 +01:00
Pavol Rusnak
60333ca56c chore(core): fix whitespace in makefile
[no changelog]
2024-03-19 15:44:59 +01:00
cepetr
a54fe5e60f fix(core): fixed blurring algo panic in debug mode
[no changelog]
2024-03-19 14:54:54 +01:00
tychovrahe
70a673fabc feat(core): use flash bursts for faster flashing
[no changelog]
2024-03-19 13:17:25 +01:00
tychovrahe
e1161866da chore(core): fix typo 'capablities'
[no changelog]
2024-03-19 11:33:23 +01:00
tychovrahe
0a4a5feaa0 fix(core): fix TOCTOU in sd card bootloader update procedure
[no changelog]
2024-03-19 11:33:23 +01:00
tychovrahe
5c7c9c56a3 fix(core): add missing stm32u5 symlinks
[no changelog]
2024-03-19 11:33:23 +01:00
tychovrahe
6e2f5ff27d fix(core): improve bhk handling on STM32U5
[no changelog]
2024-03-19 11:33:23 +01:00
tychovrahe
fb2868d297 fix(core): setup option bytes for STM32U5
[no changelog]
2024-03-19 11:33:23 +01:00
tychovrahe
43fa92d953 fix(docs): fix prodtest SBU command documentation
[no changelog]
2024-03-18 19:51:22 +01:00
tychovrahe
4fe9294377 fix(core): fix prodtest mpu setting on U5 - allow read of MCU ID
[no changelog]
2024-03-18 19:50:54 +01:00
naiyoma
362958f906 [no changelog] refactor(core):Use utime.ticks_diff in src/boot.py for arithmetic operations 2024-03-18 11:59:32 +01:00
naiyoma
9f9354a820 [no changelog] Refactor arithmetic operations in fido2.py to use utime.ticks_add() and utime.ticks_diff() 2024-03-18 11:59:32 +01:00
naiyoma
d76829f817 [no changelog] refactor(core): Use utime.ticks_diff in verify_user_pin 2024-03-18 11:59:32 +01:00
dependabot[bot]
3dc5e9b2db chore(deps): bump shlex from 1.0.0 to 1.3.0 in /core/embed/rust/fuzz
Bumps [shlex](https://github.com/comex/rust-shlex) from 1.0.0 to 1.3.0.
- [Changelog](https://github.com/comex/rust-shlex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/comex/rust-shlex/commits)

---
updated-dependencies:
- dependency-name: shlex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 11:49:06 +01:00
dependabot[bot]
bd3b070942 chore(deps): bump shlex from 1.1.0 to 1.3.0 in /core/embed/rust
Bumps [shlex](https://github.com/comex/rust-shlex) from 1.1.0 to 1.3.0.
- [Changelog](https://github.com/comex/rust-shlex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/comex/rust-shlex/commits)

---
updated-dependencies:
- dependency-name: shlex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 10:41:53 +01:00
cepetr
ecd4465ab3 fix(core): fix mouse event processing in the simulator
[no changelog]
2024-03-17 14:04:33 +01:00
tychovrahe
e000b526cc refactor(core): extract common layout handling from bootloader ui implementations in rust
[no changelog]
2024-03-15 13:13:40 +01:00
tychovrahe
945382fbaa fix(core): fix flashing f4 firmware via debugger
[no changelog]
2024-03-15 13:13:05 +01:00
tychovrahe
1909d1ebdb feat(core): improve flexibility of combine script, add combine fw make targets
[no changelog]
2024-03-13 22:12:57 +01:00
Martin Milata
73a7223e7b test(core): add T3T1 support
[no changelog]
2024-03-12 20:55:23 +00:00
Martin Milata
ebb480ef29 fix(core): T3T1 emulator
[no changelog]
2024-03-12 20:55:23 +00:00
matejcik
b6e8567a49 fix(core): exclude altcoin functions from bitcoinonly build 2024-03-08 13:17:12 +01:00
matejcik
17678ef38d fix(core/rust): exclude altcoin strings from generated code 2024-03-08 13:17:12 +01:00
matejcik
ccf4b7e9eb fix(core/rust): convert bitcoin_only to an additive feature
universal_fw enables more features, as opposed to bitcoin_only removing features
2024-03-08 13:17:12 +01:00
matejcik
87894ae062 chore(core): add translation signatures 2024-03-07 12:26:58 +01:00
matejcik
fd3919254c refactor(core/ui): rename confirm_payment_request to should_...
Because confirm_* returns None and raises on false.

but this layout is actually a prompt akin to should_show_more
2024-03-07 09:53:00 +01:00
matejcik
34965ca2cb refactor(core/ui): use LayoutObj signatures in layout files
* make sure every confirm_* returns None
* prefer "def -> Awaitable[T]" to "async def -> T" everywhere (avoids one useless allocation per call)
* type-check return values from Rust layouts
2024-03-07 09:53:00 +01:00
matejcik
0304484ca6 docs(core): add method signatures for LayoutObj to mocks (fixes #2672)
feat(core): annotate CONFIRMED/CANCELLED/INFO as fake class UiResult
2024-03-07 09:53:00 +01:00
matejcik
99457bbcb0 refactor(core/ui): make request_number signature the same in TT and TR 2024-03-07 09:53:00 +01:00
matejcik
29863f84ca refactor(core): simplify context.wait() to only accept one task
Nobody was using the multi-task version and this is easier to properly
type-annotate.
2024-03-07 09:53:00 +01:00