Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mnemonic Editor, East Asian Translations and WonderMV #446

Merged
merged 67 commits into from
Sep 9, 2024
Merged

Conversation

odudex
Copy link
Member

@odudex odudex commented Aug 24, 2024

Description

This PR addresses the feature requests from issues #401 and #380 with the new mnemonic edition page. It introduces Simplified Chinese and the long-awaited Korean translation and implements the necessary infrastructure to support different form factors for glyphs, such as those used in East Asian languages. Additionally, this PR adds support for a new device, the WonderMV, from a new manufacturer, Hiwonder.

What is the purpose of this pull request?

  • Bug fix
  • New Feature
  • Documentation update
  • Other

tests/test_display.py Outdated Show resolved Hide resolved
tests/test_display.py Outdated Show resolved Hide resolved
src/krux/display.py Outdated Show resolved Hide resolved
@tadeubas
Copy link
Contributor

tadeubas commented Sep 6, 2024

RAM at the menu screen, sequence executed from left to right in one boot only – Yahboom (locale pt-BR previous saved)

Login (after boot) Tools Tools > generate QR code - str: a Settings Settings > HW > Printer > CNC Load mnemonic Load mnemonic > Manual > Tiny Seed Load mnemonic > Manual > Tiny Seed > 12w > Load Wallet Home (right after load) Backup Backup > Other formats > Number
develop 1429728 1425088 1421056 1417664 1409920 1420640 1413248 1375168 1378400 1375520 1371840
wonder_mv 1419872 1415232 1411200 1407808 1400064 1410784 1403520 1363424 1367136 1364352 1359552
diff 9856 9856 9856 9856 9856 9856 9728 11744 11264 11168 12288

@odudex
Copy link
Member Author

odudex commented Sep 6, 2024

This PR introduces two new languages and would greatly benefit from the implementation of #451.

@tadeubas
Copy link
Contributor

tadeubas commented Sep 6, 2024

Sure! I was just running the same tests because you were concerned about RAM usage... did you see that the 11KB reduction in free memory in HOME increases with an additional 1KB by going to the Backup > Other Formats > Number menu? You said in #449 that this was a direction you weren't willing to follow... Have you tested #451 in this PR to see if there is a significant reduction in the RAM issue you're concerned about?

@odudex
Copy link
Member Author

odudex commented Sep 6, 2024

Sure! I was just running the same tests because you were concerned about RAM usage... did you see that the 11KB reduction in free memory in HOME increases with an additional 1KB by going to the Backup > Other Formats > Number menu? You said in #449 that this was a direction you weren't willing to follow... Have you tested #451 in this PR to see if there is a significant reduction in the RAM issue you're concerned about?

I haven't noticed the memory gain after going to Backup->Numbers. Do you have a clue on what could be happening?
I'm sure there are many things to learn and opportunities to improve RAM usage!

I have tested #451 on this, and it rocks! It goes from +10K to -29K in comparison with develop branch

@tadeubas
Copy link
Contributor

tadeubas commented Sep 6, 2024

No, I don't 😞 ... I'm sure there are a lot of things to optimize, but for what purpose? Why do we need to look at KB of memory when we still have MB free?

@odudex
Copy link
Member Author

odudex commented Sep 6, 2024

To get the signing capacity from 10 to 100+ inputs, it was a byte-by-byte effort. It's a scarce asset we will always want available to implement new features. Even if were running on a computer, RAM efficiency is essential and goes hand in hand with simplicity, speed, and security.

@tadeubas
Copy link
Contributor

tadeubas commented Sep 6, 2024

So we shouldn't aim to test RAM usage for every little piece of code, as that takes a lot of time and effort, but rather to unimport things, especially when we'll need the most RAM, i.e. when the user signs a PSBT. That's where we should focus on looking at the available RAM. This is easily achieved by removing the signing process from the Home Page and creating some logic at boot to handle the exit of the Page to do the signing process, then return to the Home Page at the respective menu when the signing finishes.

@odudex odudex marked this pull request as ready for review September 7, 2024 17:38
@odudex odudex merged commit 4495164 into develop Sep 9, 2024
7 checks passed
@odudex odudex deleted the wonder_mv branch September 26, 2024 10:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants