1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-01-02 03:20:59 +00:00
Commit Graph

380 Commits

Author SHA1 Message Date
Jan Pochyla
3cb89f3ae7 trezor.ui: send -> touch 2017-05-31 19:30:06 +02:00
Jan Pochyla
dc87e14334 trezor.workflow: reset backlight when starting workflow 2017-05-31 19:29:04 +02:00
Jan Pochyla
e0fc5fb5a5 trezor.main: disable periodic mem stats 2017-05-23 12:42:44 +02:00
Jan Pochyla
d9170740a5 trezor.loop: export syscalls also in lowercase
TODO: use only lowercase
2017-05-23 12:42:22 +02:00
Pavol Rusnak
4d4364f0b5
TrezorUi -> TrezorUI 2017-05-15 18:12:05 +02:00
Pavol Rusnak
3765fb734b
remove trezor.debug module, add trezor.io module 2017-05-15 15:48:47 +02:00
Pavol Rusnak
e3b2001c89
rebuild coins 2017-05-12 22:55:47 +02:00
Jan Pochyla
fb398d07cb touch: change iface num to 255 2017-05-09 16:13:40 +02:00
Pavol Rusnak
e6d93c5933
wallet: fix GetPublicKey msg, regenerate protobuf 2017-05-08 18:04:05 +02:00
Jan Pochyla
403d5344e2 trezor.msg: support new modtrezormsg API 2017-04-21 16:25:00 +02:00
Pavol Rusnak
eef147d810
modtrezorcrypto: add crypto.rfc6979 class 2017-04-03 21:29:52 +02:00
Pavol Rusnak
f13c122561
rebase micropython, min_time -> peektime 2017-03-31 11:30:31 +02:00
Pavol Rusnak
8a6b78187e
modtrezorconfig: don't use mock anymore 2017-03-30 20:57:46 +02:00
Peter Jensen
3daa18a5f1 trezor.ui: fading on swipe up 2017-03-30 17:35:26 +02:00
Peter Jensen
38c37da0c3 trezor.ui: reset device redesign 2017-03-29 14:46:47 +02:00
Peter Jensen
d47e9fb855 trezor.ui: prototype of seed setup 2017-03-28 19:08:59 +02:00
Peter Jensen
5cc87ecdce trezor.ui: fix container 2017-03-28 13:18:39 +02:00
Peter Jensen
36637c23f6 trezor.ui: remove PM colors and other visuals changes 2017-03-27 21:36:17 +02:00
Peter Jensen
4c206be585 trezor.ui: fix of fix confirmation 2017-03-22 15:15:12 +01:00
Peter Jensen
0723f6c198 trezor.ui: fix confirm 2017-03-22 15:01:16 +01:00
Peter Jensen
80b83add73 trezor.ui: text as widget 2017-03-22 14:47:08 +01:00
Peter Jensen
96020a4953 micro fix 2017-03-21 13:15:15 +01:00
Peter Jensen
8d4cd85659 minor design changes 2017-03-20 21:41:06 +01:00
Jan Pochyla
78d82386d1 trezorhal: adjust to new structure 2017-03-06 17:33:48 +01:00
Pavol Rusnak
9c3c19959b
modtrezorcrypto: add Blake2b 2017-02-28 18:47:27 +01:00
Jan Pochyla
bf878ff15e trezor.loop: support re-using Sleep and Wait objects 2017-02-20 11:36:28 +01:00
Jan Pochyla
a8f5738398 trezor.ui.keyboard: suggest more accurately 2017-02-09 13:03:10 +01:00
Jan Pochyla
4c8d3e4a35 trezor.ui.keyboard: add two keyboard prototypes 2017-02-08 16:21:32 +01:00
Jan Pochyla
d939cabcb5 trezor.ui.button: add disabled state 2017-02-08 16:21:32 +01:00
Jan Pochyla
e4af95e11b trezor.ui.confirm: support Widget content 2017-02-08 16:21:32 +01:00
Jan Pochyla
910033d71c trezor.ui: add Widget 2017-02-08 16:21:32 +01:00
Jan Pochyla
e86924d645 trezor.wire: fix unexpected message error 2017-01-24 14:14:03 +01:00
Jan Pochyla
fed8838545 trezor.ui.confirm: fix HoldToConfirmDialog 2017-01-20 15:51:06 +01:00
Jan Pochyla
ec49c2d97a trezor.wire: unexpected message should interrupt workflow silently 2017-01-18 18:00:38 +01:00
Jan Pochyla
4ab469d02d apps.wallet: add qr code to get_address
TODO: the widget system clearly needs some work
2017-01-18 17:59:11 +01:00
Jan Pochyla
8bdd59642f trezor.wire: print session ID as hex 2017-01-06 14:07:18 +01:00
Jan Pochyla
d30e565cb3 trezor.main: fix for new loop 2017-01-06 14:06:03 +01:00
Jan Pochyla
5173a87f3e trezor.loop: rewrite for utimeq, document
- faster, consumes less memory
- untangle loop and ui.refresh

TODO: msg.select could fill a pre-allocated list/bytearray just like utimeq.pop does
TOOD: we could move to a readyness-based async model and let the consumers readinto() the messages right into the target buffers, to avoid allocating tuples inside msg.select()
2017-01-02 15:45:56 +01:00
Jan Pochyla
58612f14d2 trezor.config: fix for stmhal 2016-12-13 16:03:00 +01:00
Jan Pochyla
b8968e7387 minor perf changes 2016-12-12 15:26:49 +01:00
Jan Pochyla
a4f103755b minor api changes 2016-12-08 16:19:09 +01:00
Jan Pochyla
d56dc88861 wire: refactoring
- prefer importing modules instead of module members
- session_id is always first argument
- prefer much shorter names, don't expect users to import module members
- shuffle around session-specific code
- reduce allocations
2016-12-08 16:19:09 +01:00
Jan Pochyla
0b7874ad43 loop: rename Future to Signal
Future semantics were changed to allow multiple deliveries to avoid allocating more future objects than neccessary, and Signal describes this behaviour more accurately.
2016-12-08 16:19:09 +01:00
Jan Pochyla
1b27bb480d trezor.wire: rename modules 2016-12-08 16:19:09 +01:00
Jan Pochyla
05f832cae7 storage: remove pbuf, add pin lock 2016-11-23 15:06:39 +01:00
Jan Pochyla
be7ee61ddd config: always use bytes() for default value 2016-11-23 15:06:39 +01:00
Pavol Rusnak
a66d0b2e40
trezor.config: fix config_mock syntax 2016-11-21 20:57:16 +01:00
Pavol Rusnak
6575b8059e
trezor.config: use mock implementation on stmhal again 2016-11-21 20:50:41 +01:00
Pavol Rusnak
c6ea71901d
trezor.config: use norcow 2016-11-21 19:56:23 +01:00
Pavol Rusnak
533aebdf6d
trezor.utils: add halt function 2016-11-19 15:23:58 +01:00
Pavol Rusnak
f615e5f97f
trezor.crypto: more type annotations 2016-11-19 15:00:18 +01:00
Pavol Rusnak
88e46ca66f
trezor.crypto.rlp: add type annotations 2016-11-18 19:05:40 +01:00
Pavol Rusnak
ddd46f6f53
trezor.crypto: add RLP 2016-11-18 18:13:24 +01:00
Jan Pochyla
722cc2d63b apps.common: add client-side pin input method 2016-11-16 14:28:56 +01:00
Jan Pochyla
02d615ff06 wire: convert to bytearray every time 2016-11-15 18:55:38 +01:00
Jan Pochyla
e556aea42b wire: fix when the footer is too short 2016-11-15 18:09:45 +01:00
Jan Pochyla
5d7c2ac4e2 loop: make it possible to re-use Future instances 2016-11-15 13:47:36 +01:00
Jan Pochyla
5889d0c932 loop: use ticks_add, ticks_diff 2016-11-15 11:59:27 +01:00
Pavol Rusnak
32e699efdb
trezor.crypto.der: convert -> encode
small cleanup to new unit test
2016-11-08 20:25:55 +01:00
Pavol Rusnak
9fb6e328a0
trezor.crypto: add der module 2016-11-08 16:59:08 +01:00
Pavol Rusnak
33b5436dcc
tests: move to /tests to avoid freezing 2016-11-06 17:04:25 +01:00
Pavol Rusnak
c95ed063db
trezor.crypto.hashlib: remove HashIO (lives as HashWriter somewhere else) 2016-11-06 16:19:25 +01:00
Pavol Rusnak
8092be211c
trezor.messages: regenerate messages 2016-11-06 15:51:52 +01:00
Pavol Rusnak
6891c3c463
trezor.config: add wipe method
tests: add tests for config, debug, utils
2016-11-06 12:39:04 +01:00
Pavol Rusnak
192fc5f1ef
trezor.crypto: add sha1, regenerate mocks 2016-11-05 15:26:28 +01:00
Jan Pochyla
783fddf749 messages: do not use const() 2016-11-02 01:03:16 +01:00
Pavol Rusnak
34ba0ccd72
trezor.crypto: add key option for blake2s, add unit tests for blake2s 2016-11-01 18:22:29 +01:00
Pavol Rusnak
56eb351816
trezor.crypto: add hashlib.HashIO 2016-11-01 15:23:37 +01:00
Jan Pochyla
83043f7aef wire: update to latest changes in protobuf 2016-10-26 17:36:11 +02:00
Jan Pochyla
a16e02a3d8 messages: regenerate 2016-10-26 17:36:11 +02:00
Pavol Rusnak
df5e770dec
trezor.crypto: refactor base58; allow custom digest function 2016-10-25 14:22:35 +02:00
Pavol Rusnak
6e658ff2f1
trezor.messages: regenerate classes 2016-10-24 15:45:05 +02:00
Jan Pochyla
507d9bdf68 wire: add tests for v1 codec 2016-10-24 15:40:34 +02:00
Pavol Rusnak
7f5fa78f35
modtrezorcrypto: add ECDH for nist256p1, secp256k1, curve25519 (multiply method) 2016-10-22 00:51:52 +02:00
Jan Pochyla
d0b29d4caa wire: add tests, fix missing 0-padding 2016-10-21 15:02:20 +02:00
Jan Pochyla
688d293b01 wire: use memoryview() asap in the parsing process 2016-10-20 15:14:40 +02:00
Jan Pochyla
ad2955aaab ui: code style, make header icon optional 2016-10-20 15:14:40 +02:00
Jan Pochyla
74b2170e3f ui.swipe: make constants private
Private const() can be inlined properly.
2016-10-20 15:14:40 +02:00
Jan Pochyla
4e290cc6df ui.loader: add is_active method 2016-10-20 15:14:39 +02:00
Jan Pochyla
d94dd32816 ui.text: code style, add color support 2016-10-20 15:13:47 +02:00
Pavol Rusnak
3067bfa003
modtrezorui: add yoffset parameter to display.loader 2016-10-18 16:27:13 +02:00
Jan Pochyla
a44e16a9ca rework high-level storage
We don't use Storage protobuf message anymore, and instead all keys are as granular as possible.

trezor.storage provides high-level function interface.
2016-10-14 15:35:44 +02:00
Jan Pochyla
0a5e43723f utils: export TrezorUtils.memcpy 2016-10-11 17:18:31 +02:00
Pavol Rusnak
a9131f26e7
debug: fix variable name 2016-10-11 14:01:32 +02:00
Pavol Rusnak
882efbf21b
modtrezormsg: use interfaces index internally, usage_page externally 2016-10-11 13:15:13 +02:00
Pavol Rusnak
a423d4602f
modtrezormsg: store assigned used pages internally, add get_interfaces method 2016-10-11 12:33:02 +02:00
Pavol Rusnak
3f44dfedb5
modtrezormsg: use usage_page to identify interfaces 2016-10-11 12:14:17 +02:00
Pavol Rusnak
d9546d45b9
ui: proper size for loader 2016-10-11 11:29:31 +02:00
Pavol Rusnak
ad6c274e07
modtrezorui: loader icon is now 64x64; reorganize icons 2016-10-10 14:51:52 +02:00
slush0
ac726746b9 Changed dimming constants (tested on hw) 2016-10-08 12:06:56 +02:00
slush0
cf38b58a73 Reworked homescreen (no blinking, only diming)
Added ui.alert()
2016-10-08 11:47:28 +02:00
chren
78efd4f2e0 minor color changes in pin dialog 2016-10-06 17:59:46 +02:00
chren
cb2399197f fixed wipe device header 2016-10-06 16:35:36 +02:00
chren
5a20a48745 added ui header and icons 2016-10-06 16:17:11 +02:00
Jan Pochyla
abd20741f6 add seed module, GetPublicKey now works 2016-10-06 15:05:14 +02:00
Jan Pochyla
492e71f147 workflow: less verbose naming 2016-10-06 15:05:14 +02:00
Jan Pochyla
6d5514ac4a make logging less verbose 2016-10-06 15:05:14 +02:00
Jan Pochyla
c019741c33 wire: fix write_message, pbuf dumps is sync now 2016-10-06 15:05:14 +02:00
Jan Pochyla
4b0da8677a wire: fix read_message for v1 protocol 2016-10-06 15:05:14 +02:00
Jan Pochyla
c3ee7dd709 loop: refresh display after every step 2016-10-06 15:05:14 +02:00
Pavol Rusnak
7dc53219d2
extract common bootloader stuff into bl_common.py 2016-10-05 21:09:45 +02:00
Pavol Rusnak
e405a6305d
use bar_radius where needed 2016-10-05 20:36:28 +02:00
Pavol Rusnak
a536e2d6a5
loader is now smaller 2016-10-05 15:15:21 +02:00
Pavol Rusnak
2e2534585b
call ui.display.refresh in loop.py 2016-10-04 16:33:38 +02:00
slush0
97522be434 Added new messages 2016-10-03 15:41:38 +02:00
Jan Pochyla
f2b509b591 use micropython.const() in trezor.messages 2016-09-29 12:37:40 +02:00
Jan Pochyla
407169af01 import qualified const() 2016-09-29 12:29:43 +02:00
Jan Pochyla
c93133026e autopep8 and minor cosmetics 2016-09-28 23:28:53 +02:00
Jan Pochyla
fb7b85e479 move protobuf to a single module 2016-09-28 23:17:11 +02:00
slush0
cb1dcc965d TREZOR v1 protocol codec 2016-09-28 22:59:30 +02:00
slush0
e8850e4aa5 Fixing generator startup in read_message. 2016-09-28 22:57:45 +02:00
slush0
8a160becb9 Added support for TREZOR v1 protocol (acts as session 0 internally). 2016-09-28 22:34:12 +02:00
Pavol Rusnak
281070492d
fix bootloader, extract FONT_* constants 2016-09-28 18:21:29 +02:00
Pavol Rusnak
ed975398d9
move ui.clear into ui.display.clear 2016-09-28 17:00:27 +02:00
Jan Pochyla
c952500552
fix ui.rotate_coords, remove pulse_animation 2016-09-27 17:26:18 +02:00
Jan Pochyla
35d53ad7fc
simplify the Text interface 2016-09-27 17:26:18 +02:00
chren
69fa5acf8b
limit pin length 2016-09-27 17:26:17 +02:00
Jan Pochyla
3f4365eda6
add Text, move Loader to ui.loader 2016-09-27 17:26:16 +02:00
Jan Pochyla
0637987c09
change wipe_device to use long-press confirm 2016-09-27 17:26:16 +02:00
chren
4d672fee28
added some backgrounds and change color vars 2016-09-27 17:26:15 +02:00
Pavol Rusnak
a3ec1c082a
add log to wire.io 2016-09-27 17:26:14 +02:00
chren
dbfb06d30e
experimenting with ui in reset_device 2016-09-27 17:26:14 +02:00
Pavol Rusnak
299c616d1b
fix __import__ call 2016-09-27 17:26:14 +02:00
chren
cc35a00639
removed old playground and some color changes 2016-09-27 17:26:14 +02:00
Jan Pochyla
096bfbaf2a
fix Swipe on stmhal 2016-09-27 17:26:13 +02:00
Jan Pochyla
883b392fdb
adopt wire dispatching, log removed modules 2016-09-27 17:26:13 +02:00
Jan Pochyla
e9c7a67c73
make imports more local, remove trezor.workflows, minor tweaks 2016-09-27 17:26:13 +02:00
Jan Pochyla
01ac17440d
wipe_device workflow, pin API work 2016-09-27 17:26:12 +02:00
Jan Pochyla
dd713fe6e2
add Storage to reset_device, stub session support in config 2016-09-27 17:26:12 +02:00
Jan Pochyla
34ed2fb86a
workflow monitor, reset_device layout work
- request/response manner of usual protobuf workflows is enforced, workflows are expected to either return a valid protobuf response, or raise an exception
- added wire.FailureError exception that allows workflow to provide Failure code & message
- pin workflows simplified

TODO: all this workflow work does not really belong in trezor.wire
2016-09-27 17:26:11 +02:00
Jan Pochyla
70110187cc
overload __iter__ in loop.Wait
This will automatically exit child tasks in case of close() or throw() on the waiting task, but only if run through `await` or `yield from`
2016-09-27 17:26:11 +02:00
Jan Pochyla
02b13af526
fix session id range 2016-09-27 17:26:11 +02:00
Jan Pochyla
64746d01b4
use memoryviews in wire_codec 2016-09-27 17:26:11 +02:00
Pavol Rusnak
f727cab942
rework aes module, add summary to test script 2016-09-27 17:26:09 +02:00
Pavol Rusnak
dd78f83576
update docu strings in aes 2016-09-27 17:26:09 +02:00
Pavol Rusnak
fc05f25255
trezor.crypto.aes work in progres 2016-09-27 17:26:07 +02:00
Jan Pochyla
d5942d664c
add the generated wire type index 2016-09-27 17:26:07 +02:00
Jan Pochyla
6991286f8b
use __iter__ instead of wait 2016-09-27 17:26:06 +02:00
Jan Pochyla
b8dd8ed90c
wire fixes 2016-09-27 17:26:06 +02:00
Jan Pochyla
97d402eba8
unify unimport_func and unimport_gen, asyncify 2016-09-27 17:26:06 +02:00
Jan Pochyla
099767d592
session/workflow overhaul
- lazy loading and importing of protobuf messages
- workflow dispatching through codec pipeline on the first message report

HACK: workflow killing
TODO: cap on concurrent sessions
TODO: ui locking/queuing
TODO: session storage
TODO: tests
2016-09-27 17:26:06 +02:00
Pavol Rusnak
f42b62fa40
use mock config for stmhal, setup hid in boot 2016-09-27 17:26:05 +02:00
Pavol Rusnak
7aa8593941
store config in /var/tmp 2016-09-27 17:26:05 +02:00
Jan Pochyla
312859ba71
add experimental animation with async for 2016-09-27 17:26:03 +02:00
Jan Pochyla
3eaf001eef
add a broken PoC of wire/protobuf stream reading 2016-09-27 17:26:03 +02:00
Jan Pochyla
d6592a48e6
fixes for v2 wire 2016-09-27 17:26:03 +02:00
Jan Pochyla
096f3f898f
move pagination primitives to trezor.ui.scroll 2016-09-27 17:26:03 +02:00
Jan Pochyla
455a436123
autopep8 2016-09-27 17:26:02 +02:00
Jan Pochyla
a4d1b27541
test async/await support in homescreen layout 2016-09-27 17:26:02 +02:00
Jan Pochyla
c8c34c875b
simplify loop.py, add loop.Future, supoort await 2016-09-27 17:26:02 +02:00