Martin Milata
d99e1eedd2
refactor(core/ui): clear display on rust side
...
[no changelog]
2023-10-16 13:18:50 +02:00
Martin Milata
fca82273cf
Merge branch 'release/23.09'
2023-10-11 23:34:06 +02:00
tychovrahe
c937f21447
refactor(core): change the way USE_OPTIGA is added to build
...
[no changelog]
2023-10-02 20:59:50 +02:00
Martin Milata
040f6c2c8e
Merge branch 'master' into release/23.09
2023-09-29 16:42:23 +02:00
matejcik
d913181079
docs(core): add docstrings to modtrezorutils constants
...
[no changelog]
2023-09-29 16:27:27 +02:00
matejcik
c892d4b0ba
refactor(core): inject full model name from build script
...
so that we don't have to do awkward string operations when we need it
[no changelog]
2023-09-29 16:27:27 +02:00
Andrew Kozlik
dee559f4f9
feat(core): Integrate Optiga into PIN verification.
2023-09-27 17:17:09 +02:00
matejcik
bb5b91b920
Merge branch 'master' into release/23.09
2023-09-27 12:58:22 +02:00
tychovrahe
3c1236bf82
refactor(core): setup single-place layout selection
...
[no changelog]
2023-09-18 18:05:37 +02:00
Martin Milata
07027a69e9
Merge branch 'master' into release/23.09
2023-09-15 14:33:20 +02:00
Andrew Kozlik
c48b606867
feat(core): Add bootloader_locked flag to Features message.
...
[no changelog]
2023-09-15 14:08:02 +02:00
Andrew Kozlik
686aa78aa7
feat(core): Use Optiga as a source of randomness.
2023-09-15 11:16:57 +02:00
grdddj
76c6e9cd9d
feat(all): implement support information for T2B1
...
WIP - change trezor{1,2} to their internal names, add support for model R
WIP - add EOS and NEM features Capability only for TT
WIP - not include EOS and NEM into TR
WIP - choose between device models when generating coininfo
WIP - regenerate coininfo.py
WIP - skip NEM, EOS, Dash, BGold and Decred device tests for TR
WIP - fix python support
WIP - fix unit tests
WIP - import bitcoin-like code only when needed
WIP - remove ignored coins for TR in fixtures.json
WIP - make all the external references to models UPPERCASE
WIP - do the model separation in mako script also for tokens and networks
WIP - hot-fixing non-supporting RELEASES_URL for new model names
WIP - support.py releases CLI command takes a list of -r key-value pairs DEVICE=VERSION
WIP - run `python support.py release`
WIP - use utils.MODEL_IS_T2B1 to ignore NEM and EOS
WIP - change all the docs and commands to have UPPERCASE model names
[no changelog]
2023-09-14 13:54:09 +02:00
matejcik
afa6f84174
feat(core): custom exception types for Optiga
2023-09-13 15:45:48 +02:00
Andrew Kozlik
db6630a5a3
feat(core): Support Optiga in Trezor firmware.
2023-09-13 15:45:48 +02:00
Andrew Kozlik
8010cfb5b6
feat(core): Add utils.USE_OPTIGA.
2023-09-13 15:45:48 +02:00
tychovrahe
bd0b0b2d15
refactor(core): move model specific norcow config to model header
...
[no changelog]
2023-08-29 11:17:19 +02:00
tychovrahe
c9a657b074
feat(core): set final name for Safe 3
...
[no changelog]
2023-08-18 16:14:47 +02:00
tychovrahe
238e3fd7c1
refactor(core): add abstraction over flash memory layout
...
[no changelog]
2023-07-25 10:25:20 +02:00
matejcik
78a8b48f1e
refactor(core): generate trezorproto module straight from Rust
2023-07-12 10:09:36 +02:00
tychovrahe
ebbd7f9d35
refactor(core): restructure trezorhal, prepare to support more platforms
...
[no changelog]
2023-07-07 22:09:56 +02:00
Martin Milata
edcdb97613
fix(core): backlight on frozen emulator
...
[no changelog]
2023-06-29 12:10:41 +02:00
tychovrahe
539420cac8
refactor(core): make backlight/fading optional
...
[no changelog]
2023-06-27 16:18:30 +02:00
Andrew Kozlik
21f4aec8de
refactor: Unify secp256k1_zkp usage.
...
[no changelog]
2023-06-21 08:36:20 +02:00
tychovrahe
d3284baf21
feat(core): support STM32F429 discovery board
2023-06-15 17:08:14 +02:00
tychovrahe
8d812ca36e
feat(core): support device variants
...
[no changelog]
2023-06-07 19:48:53 +02:00
Martin Milata
e928568339
build: emulator darwin fixes
...
[no changelog]
2023-06-06 11:32:02 +02:00
tychovrahe
a2f8cb9d1c
feat(core): add internal model field to features
...
[no changelog]
2023-06-06 09:39:45 +02:00
Martin Milata
3fb3f108cc
chore(vendor): bump micropython to 1.19.1
...
Relevant micropython commits:
01374d941f9d7398e35990b574769b20c6779457 py/mpconfig.h: Define initial templates for "feature levels".
7b89ad8dbf432ab51eea6d138e179bf51394c786 py/vm: Add a fast path for LOAD_ATTR on instance types.
68219a295c75457c096ac42dbe8411b84e1e1a51 stm32: Enable LOAD_ATTR fast path, and map lookup caching on >M0.
e0bf4611c3a8b23b3c52e6a7804aac341ac3a87d py: Only search frozen modules when '.frozen' is found in sys.path.
f2040bfc7ee033e48acef9f289790f3b4e6b74e5 py: Rework bytecode and .mpy file format to be mostly static data.
926b554dafffa1e9bd80aa12fea5c621221c9d79 extmod/moduos: Create general uos module to be used by all ports.
2b409ef8a46015f8f3bd20bc44e644637dbe9bd3 unix/moduos: Convert module to use extmod version.
47f634300c5572571816817f16836113c98814ae py: Change makemoduledefs process so it uses output of qstr extraction.
0e7bfc88c6ac6b5d64240f91183a3cfe2ab67ade all: Use mp_obj_malloc everywhere it's applicable.
2a6ba47110be88ff1e1f5abd1bd76c353447884c py/obj: Add static safety checks to mp_obj_is_type().
2023-04-21 13:14:07 +02:00
tychovrahe
83500487b8
refactor(core): improve conditional compilations based on model
...
[no changelog]
2023-04-19 21:36:51 +02:00
tychovrahe
eb72fb4241
refactor(core): remove unused functions
...
[no changelog]
2023-04-19 21:36:51 +02:00
tychovrahe
6ea68baf34
refactor(core): move files out of extmod
...
[no changelog]
2023-04-19 21:36:51 +02:00
Martin Milata
69bc442c90
fix(core/ui): replace RobotoMono Regular with RobotoMono Medium
...
[no changelog]
2023-04-04 00:15:12 +02:00
tychovrahe
0fb55553b7
fix(core): increase work buffer size for jpeg decompression
...
[no changelog]
2023-03-29 21:39:05 +02:00
Martin Milata
19a2ea21b6
fix(core/ui): Model T style update
...
[no changelog]
2023-03-23 20:16:22 +01:00
Martin Milata
4199d4ad41
fix(core/ui): style update: fonts
...
[no changelog]
2023-03-23 20:16:22 +01:00
Martin Milata
4622aec0f1
refactor(core): switch to Rust implementation of QR-Code-generator
...
[no changelog]
2023-03-09 23:36:36 +01:00
tychovrahe
ead61d1e90
refactor(core): improve flexibility of build, allow different touch panel driver, allow STM32F429
...
[no changelog]
2023-03-02 15:56:33 +01:00
tychovrahe
9f7edf210e
feat(core/rust): basic marquee implementation
...
[no changelog]
2023-02-10 19:33:12 +01:00
tychovrahe
52cd43bf29
fix(core): improve tearing effect prevention
...
[no changelog]
2023-02-07 19:05:01 +01:00
tychovrahe
8f7cbf7b9d
fix(core): update fat fs library to R0.15
2023-02-02 16:22:23 +01:00
grdddj
571bb79e33
chore(core): delete unused bip39/slip39 micropython/C bindings
...
[no changelog]
2023-01-25 19:17:56 +01:00
tychovrahe
d00e87ea80
feat(core/rust): homescreen background image
...
[no changelog]
2023-01-19 14:11:42 +01:00
matejcik
615c8a0e64
fix(core/embed): better clamping of coordinates
...
[no changelog]
2022-11-24 13:03:34 +01:00
tychovrahe
0d733d8e22
feat(core): change display type for model R
...
[no changelog]
2022-11-24 11:37:52 +01:00
matejcik
f1c7129d06
feat(core/model_r): only refresh screen on display_refresh
...
Given that on Model R we have a frame buffer, let's not push out pixels
one by one.
[no changelog]
2022-11-08 15:03:21 +01:00
Dusan Klinec
26711857e8
refactor(xmr): remove old BP code
2022-10-25 21:36:03 +02:00
Martin Milata
18352acce8
feat(core/rust/ui): replace TT Hoves Medium with DemiBold style
...
[no changelog]
2022-10-22 01:39:53 +02:00
tychovrahe
d0f1095842
fix(core): expose USB_CHECK for all models
...
[no changelog]
2022-10-19 11:31:03 +02:00
Andrew Kozlik
d815a7d6de
chore(core): Use C implementation of Bech32 decode.
2022-10-17 15:20:46 +02:00
tychovrahe
f7b9bb4ef8
feat(core/rust): use dma2d to improve rendering performance, implement text over image and icon over icon functions
2022-09-29 21:50:10 +02:00
tychovrahe
223d1b20fb
refactor(core): change fonts organization
2022-09-29 21:50:10 +02:00
tychovrahe
b9647d1296
fix(core): fix flashing usb disconnected error
...
[no changelog]
2022-09-26 13:31:04 +02:00
Ondrej Mikle
a0287698d5
feat(core): show blue dot when USB data not connected
2022-08-25 16:42:29 +02:00
Pavol Rusnak
c962d3520b
Merge branch 'release/22.08'
2022-08-22 11:10:45 +02:00
tychovrahe
107e22c814
feat(core/rust): glyph and text rendering in rust
2022-08-12 13:30:24 +02:00
Andrew Kozlik
fa5e7feda6
fix(crypto): Fix nonce bias in CoSi signing.
2022-08-02 20:38:04 +02:00
matejcik
a6410693b3
Revert "feat(core): implement firmware dumping"
...
This reverts commit 37c61c1381
.
2022-08-02 17:12:07 +02:00
Christian Reitter
c5d22b4395
fix(core): correct range in error message
2022-07-01 14:50:19 +02:00
Martin Milata
24a1f2e25e
refactor(core): remove unused parameter from display_qrcode
...
[no changelog]
2022-06-28 18:01:02 +02:00
Andrew Kozlik
892f3e348d
fix(crypto): Remove public key from the ed25519 signing API.
...
[no changelog]
2022-06-27 18:59:08 +02:00
matejcik
57b12c2807
feat(core): expose display pixeldata accessors from C
2022-06-14 15:09:03 +02:00
tychovrahe
61482d0795
feat(core/rust): expose raw pixel access to rust
2022-06-14 15:09:03 +02:00
Jan Pochyla
c3b82fd651
feat(core/rust): add trezorhal bindings
2022-06-08 14:42:04 +02:00
Ondrej Mikle
c563c987e1
feat(core): jump back and stay in bootloader for TT via reverse SVC call trampoline
2022-06-01 14:50:59 +02:00
Dusan Klinec
14e08ca9db
fix(xmr): remove 8192B from firmware image so it can fit to the memory
...
- old BP GI, HI constants are shortened to reduce firmware size
2022-05-16 12:37:24 +02:00
Dusan Klinec
25d32a8144
feat(xmr): implement bp+, refactor, code cleanup
...
- implement BulletProof plus verifier and prover
- use bulletproof exception to signalize proof generation failed and should be tried again. More robust, fixes bug that was not triggered yet (return tuple did not work properly in all situations)
- precomputed 2**i vector is removed as it can be easily computed
- BP code cleanup, minor optimizations, comments
2022-05-16 12:37:24 +02:00
Dusan Klinec
33c174491f
refactor(core/monero): Monero code cleanup
...
* remove support for HF12 and below
* remove MLSAG support
* clean up monero cryptography naming
* get rid of "optional first argument" pattern, in favor of mandatory argument that is allowed to be None
(and fix several bugs related to this feature)
Co-authored-by: grdddj <jiri.musil06@seznam.cz>
Co-authored-by: Martin Milata <martin@martinmilata.cz>
Co-authored-by: matejcik <ja@matejcik.cz>
2022-05-16 12:37:24 +02:00
matejcik
99c817bad4
fix(core/emulator): make sure SDL keyboard and quit events are always processed
...
fixes #973
2022-05-16 10:59:48 +02:00
tychovrahe
8a092bde21
feat(core): add smaller loader for model R
2022-05-10 16:49:23 +02:00
tychovrahe
bd476769cc
feat(core): add reset state on display clear on model R. Added to rest of the models as noop.
2022-05-10 16:49:23 +02:00
tychovrahe
58041036f5
feat(core): set colors for monochromatic displays
2022-05-10 16:49:23 +02:00
tychovrahe
0e778cf16d
fix(core): fix display_icon function - incorrect boundaries checks
2022-05-10 16:49:23 +02:00
tychovrahe
f7a3aad9bd
feat(core): initial Model R display implementation with framebuffer
2022-05-10 16:49:23 +02:00
grdddj
6b5f578d02
feat(core): implement basic R emulator
...
Can be built by `TREZOR_MODEL=R make build_unix`, `make build_unix_frozen` does not work yet.
All the dialogs are not very pretty, they are just meant to work.
2022-05-06 11:44:52 +02:00
matejcik
37c61c1381
feat(core): implement firmware dumping
2022-05-03 19:00:04 +02:00
Andrew Kozlik
485ee6e209
feat(core): Show progress in GetFirmwareHash.
2022-05-03 19:00:04 +02:00
Andrew Kozlik
822b1c344f
feat(core): Return fw_vendor in firmware Features message.
2022-05-03 19:00:04 +02:00
Andrew Kozlik
106ab65e21
feat(core): Implement GetFirmwareHash message.
2022-05-03 19:00:04 +02:00
TychoVrahe
7912a7d0d3
build(core,storage): fix conditional compilation for different Trezor models
...
* build(core,storage) - Fix conditional compilation for different trezor models
* build(core) - Rename MODEL_* macro to TREZOR_MODEL_*, remove the original TREZOR_MODEL macro (replaced by conditional compilation for QSTR generation)
* build(core) - fixed missing TREZOR_MODEL to TREZOR_MODEL_x changes
[no changelog]
2022-04-26 13:47:40 +02:00
Martin Milata
38f4ab0983
feat(core/rust/ui): return Layout results as singleton objects
...
[no changelog]
2022-04-04 13:32:07 +02:00
Pavol Rusnak
9a8e257619
fix(core): fix SDL2 include path
...
[no changelog]
2022-03-29 12:22:11 +02:00
Martin Milata
4eefaffac9
fix(core/rust/ui): recovery/passphrase keyboard fixes
...
[no changelog]
2022-03-23 13:40:45 +01:00
Martin Milata
efe25a6ab4
fix(core/rust/ui): pin keyboard tweaks
...
[no changelog]
2022-03-23 13:40:45 +01:00
Pavol Rusnak
6052e71bbb
fix(core): fix build with FEATURE_FLAGS.SECP256K1_ZKP=False
...
[no changelog]
2022-03-18 12:03:41 +01:00
Pavol Rusnak
c6667fa0c2
feat(core): verify bip340 pubkeys used in p2tr addresses
...
Co-Authored-By: Ondřej Vejpustek <ondrej.vejpustek@satoshilabs.com>
2022-02-16 10:25:15 +01:00
Martin Milata
f2b8822d76
refactor(core): improve build-time option for old/new UI
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
b64c69c3ff
feat(core/rust/ui): implement confirm_action
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
b46901bc8b
feat(core): add TT Hoves fonts, introduce medium variant
...
Co-authored-by: Pavol Rusnak <pavol@rusnak.io>
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
8fb28e4af5
feat(core/rust): impl Paginate for Paragraphs
...
[no changelog]
2022-02-08 15:40:37 +01:00
Pavol Rusnak
37bd121394
chore(core/embed): check for negative values in trezor_get_uint
...
[no changelog]
2022-01-26 16:22:50 +01:00
Andrew Kozlik
49ae8848db
fix(core): Fix memory leaks in emulator.
...
[no changelog]
2022-01-19 15:22:03 +01:00
Andrew Kozlik
39b64b8569
fix(core): Fix stack-use-after-scope in display.c.
...
[no changelog]
2022-01-19 15:22:03 +01:00
Pavol Rusnak
4a71d15b1d
chore(core/embed): refactor trezor_obj_get_uint64 into trezorobj.h
...
[no changelog]
2022-01-19 11:16:47 +01:00
matejcik
45787307ca
style(core): support AnyStr in all hash function arguments
2022-01-07 21:41:17 +01:00
grdddj
9fc5bb546b
style(core): full pyright-based type-checking
...
Changes many fields to required -- as far as we were able to figure out,
signing would fail if these fields aren't provided anyway, so this
should not pose a compatibility problem.
Co-authored-by: matejcik <ja@matejcik.cz>
2022-01-07 21:41:17 +01:00
Pavol Rusnak
56f0e2c5de
fix(core): add missing include
...
we were using `FILE` and `fprintf` without including the stdio header
2021-12-14 19:57:21 +01:00
Martin Milata
afd7cb3b01
feat(core/rust): add example layout for T1
...
[no changelog]
2021-11-24 15:36:34 +01:00
Martin Milata
d656f88572
style(all): reformat with clang-format 13.0
2021-11-19 10:54:31 +01:00
Ondřej Vejpustek
f918cf9a27
fix(core): fix typos in modtrezorcrypto-bip340.h
2021-11-18 19:05:40 +01:00