1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-02-07 05:02:38 +00:00
Commit Graph

1953 Commits

Author SHA1 Message Date
M1nd3r
c33c2c19f3 fix style after rebase 2025-01-30 15:06:27 +01:00
M1nd3r
e453962397 fixup! fixup! fixup! fixup! fixup! wip: single packet decryption (not finished) [no changelog] 2025-01-30 15:06:27 +01:00
M1nd3r
b4443c87f6 fixup! fixup! fixup! fixup! wip: single packet decryption (not finished) [no changelog] 2025-01-30 15:06:27 +01:00
M1nd3r
6670793528 WIP: try simplify message handler, might break something
[no changelog]
2025-01-30 15:06:27 +01:00
M1nd3r
6788888f44 chore: fix incomplete enum change
[no changelog]
2025-01-30 15:06:27 +01:00
M1nd3r
432da41565 chore(core): remove TODO comment from received_message_handler
[no changelog]
2025-01-30 15:06:27 +01:00
M1nd3r
1556ac8edc chore(core): remove management session code from handle_ThpCreateNewSession
[no changelog]
2025-01-30 15:06:27 +01:00
M1nd3r
6e0f2146e5 fixup! fixup! fixup! wip: single packet decryption (not finished) [no changelog] 2025-01-30 15:06:27 +01:00
M1nd3r
e6d63e72d1 chore(core): make wipe device proceed even if sending of success message fails
[no changelog]
2025-01-30 15:06:27 +01:00
M1nd3r
e869c48e5c fixup! fixup! wip: single packet decryption (not finished) [no changelog] 2025-01-30 15:06:27 +01:00
M1nd3r
034dddc628 fixup! wip: single packet decryption (not finished) [no changelog] 2025-01-30 15:06:27 +01:00
M1nd3r
047acb4bf9 wip: single packet decryption (not finished)
[no changelog]
2025-01-30 15:06:27 +01:00
M1nd3r
3a7edc9186 fix: return InvalidSessionError when trying to access cache of Seedless session
[no changelog]
2025-01-30 15:06:27 +01:00
M1nd3r
a124f49805 wip buffer locking-
[no changelog]
2025-01-30 15:06:27 +01:00
M1nd3r
32c9605cf5 wip - change session behavior
[no changelog]
2025-01-30 15:06:27 +01:00
M1nd3r
c960312a15 wip 2025-01-30 15:06:27 +01:00
M1nd3r
345e7701be fixup! feat(core): implement THP 2025-01-30 15:06:27 +01:00
M1nd3r
10928cde9c wip 2025-01-30 15:06:27 +01:00
M1nd3r
274c737a83 refactor(core): move handling of ThpCreateNewSession message into base.py
[no changelog]
2025-01-30 15:06:27 +01:00
M1nd3r
7cff2646e6 refactor(core): move wire buffer handling completely to memory_manager
[no changelog]
2025-01-30 15:06:27 +01:00
M1nd3r
ec8700df44 refactor(core): move exclude list from wipe to wipe_cache
[no changelog]
2025-01-30 15:06:26 +01:00
M1nd3r
b5f5707eff refactor(core): clean channel and received_message_handler
[no changelog]
2025-01-30 15:06:26 +01:00
M1nd3r
694929187f refactor(core): improve readability and logging in channel.py
[no changelog]
2025-01-30 15:06:26 +01:00
M1nd3r
53e07188e4 refactor(core): improve readability of channel_manager
[no changelog]
2025-01-30 15:06:26 +01:00
M1nd3r
ba75e7fd69 feat(core): implement THP 2025-01-30 15:06:26 +01:00
tomasklim
78768950fd chore(core): use label for evm networks generation 2025-01-28 14:17:46 +01:00
obrusvit
15967a312b fix(core): explicitly delete keyboard layout
- seems that keyboard LayoutObj was not properly deallocated resulting
in MemoryError. Fix by calling the dunder `del` method explicitly fixes
the issue
- the problem was on Model T (Bolt), but applying it for all layouts to
prevent similar problem
2025-01-27 23:43:33 +01:00
tychovrahe
69a61e98e0 feat(core): adjust codec_v1 to work with differently sized RX and TX packets
[no changelog]
2025-01-23 16:46:12 +01:00
tychovrahe
5fd773757c fix(core): fix fading issues 2025-01-23 15:24:00 +01:00
Ioan Bizău
5a13b4560d fix(core): get rid of colon in some TS5 descriptions
[no changelog]
2025-01-23 12:46:54 +01:00
Ioan Bizău
e99beaf486 refactor(core): merge confirm_blob and confirm_value
[no changelog]
2025-01-23 12:46:54 +01:00
obrusvit
00740b560c refactor(core): consistent naming of UI layouts
- follow-up on 862c987779
- layout_bolt stays the same
- layout_samson -> layout_caesar
- layout_quicksilver -> layout_delizia
- use super for importing rust modules in layout code

[no changelog]
2025-01-20 12:29:24 +01:00
matejcik
38e362cd5b fix(core): improve ButtonRequest.name in backup confirmation
[no changelog]
2025-01-17 11:28:12 +01:00
matejcik
8b6d8e7572 fix(all): make more protobuf fields required
[no changelog]
2025-01-17 11:28:12 +01:00
tychovrahe
b2a4db1463 feat(core): expose BLE functionality to micropython
[no changelog]
2025-01-14 09:15:12 +01:00
tychovrahe
eef2f4113f refactor(core): improve USB events handling, more extensible implementation
[no changelog]
2025-01-13 18:46:11 +01:00
tychovrahe
e4f4985584 refactor(core): split polling can_read and reading from USB
[no changelog]
2025-01-13 17:42:30 +01:00
obrusvit
862c987779 refactor(core): consistent naming of UI layouts
- UI layouts name changes:
  - model_tt -> layout_bolt
  - model_tr -> layout_samson
  - model_mercury -> layout_quicksilver
- rust features `model_xyz` freed for different use, now it's
`layout_xyz`
- input_flow function names are based on UI layout and not internal
model name (i.e. quicksilver instead of t3t1)
- directory names and commentary changed accordingly

[no changelog]
2025-01-09 22:57:14 +01:00
matejcik
e0b4cab2db fix(core): retry creation of homescreen layout
For reasons unknown, a previous homescreen layout can sometimes survive
a GC cycle in main's unimport loop. Two homescreen layouts can't exist
simultaneously, so creating a new one would fail.

It _seems_ that after restarting the session, the homescreen object
still exists but is not reachable anymore, so a second GC cycle properly
disposes of it.

So what we do is simply catch the possible MemoryError, invoke GC
explicitly, and try again.
2025-01-03 14:15:14 +01:00
Ondřej Vejpustek
1a62cc8a59 fix(core): fix serialization of signatures and witnesses in multisig
[no changelog]
2025-01-02 15:07:25 +01:00
Andrew Kozlik
01a1f479a0 feat(core): Implement entropy check workflow in ResetDevice. 2025-01-02 13:44:36 +01:00
Andrew Kozlik
df97d8d958 feat(common): Add messages for entropy check workflow.
[no changelog]
2025-01-02 13:44:36 +01:00
obrusvit
e9ecbbc5e8 refactor(core): consistent use of confirm_address
- use `confirm_address` trait fn in both `confirm_output` and
`confirm_address` layout functions

[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
0e1696b3ed chore(core): cleanup warnings and clippy errors
[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
9caf540e16 refactor(core): remove trezorui2 module
- also remove "check" scripts which seem outdated

[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
dd9ac038d0 refactor(core): port functions to FirmwareUI
- keyboards
- standalone functions
  - disable_animations
  - check_homescreen_format
- confirm_action
- selectors
- confirm_firmware_update
- show_homescreen/lockscreen
- confirm_homescreen
- confirm_homescreen of mercury changed according to Figma
- set_brightness
- show_wait_text
- show_progress
- request_number
- show_checklist
- show_mismatch
- confirm_reset
- tutorial
- confirm_coinjoin
- confirm_modify_output/fee
- show_group_share_success
- show_remaining_shares
- show_success/warning/error/danger
- show_simple
- continue_recovery
  - confirm_recovery of model_t and model_r merged with
flow_continue_recovery of mercury into a continue_recovery_homepage
trait function, parameters renamed to be more descriptive
- show_share_words moved and refactored
  - model_t version was moved from using plain Paragraph to a dedicated
component `ShareWords` so that it's consistent with other models. This
allowed to move formatting to Rust and allowed the trait function to
have `words` parameter of type `Vec<TString, 33>`
  - model_r ShareWords::render slightly refactored to be consistent with
the new model_t version
  - mercury uses a unique version. The reason is that mercury SwipeFlow
contains also the initial screen with instructions and prompt screen at
the end.
- confirm_with_info
- show_info_with_cancel
- confirm_blob
- confirm_value
- confirm_properties
- confirm_more
- confirm_address
- prompt_backub
- confirm_emphasized
- show_address_details
- confirm_summary
- TR removed:
  - confirm_output_address and confirm_output_amount replaced with
confirm_blob. UI diff is minimal.
  - confirm_joint_total, replaced a TR-specific function with a generic
`confirm_properties` with no UI changes
- confirm_multiple_pages_texts
  - the function is TR specific and is used only in confirm_set_new_pin,
it would be better to use something different
- remaining mercury flows with no counterpart
  - confirm_blob_intro
  - flow_confirm_set_new_pin
  - flow_confirm_output
  - flow_get_address

[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
b2c6b09bfc feat(core): introduce FirmwareUI trait
- the commit introduces a trait defining high level UI building blocks,
common for all models.
- trezorui_api module exposes these functions to MicroPython world.
- `show_info` is implemented as a first function.

[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
091a0e8550 feat(core): introduce trezorui_api
- the new module is the place for type definitions of the interface
between rust and micropython world.
- the new module will replace `trezorui2` with `trezorui_api`

[no changelog]
2024-12-19 00:09:20 +01:00
Lukas Bielesch
6de0e5de0f chore(core): change display orientation labels [no changelog] 2024-12-09 15:03:57 +01:00
obrusvit
61ebb19515 refactor(core): mercury confirm_summary
- old confirm_total removed
- flow_confirm_summary refactored to confirm_summary

[no changelog]
2024-12-04 14:47:53 +01:00