Grin ledger hardware wallet progress thread by @markhollis

Update for weeks May 24 to June 7,

  • I couldn’t work further much because of being unwell. At the moment I also have covid. I reorganized my client library to connect with the ledger device, according to how the company Zondax is structuring their client libraries. See for example: GitHub - Zondax/ledger-filecoin-rs.
9 Likes

Update for weeks June 7 to June 21,

  • I started working on the Ledger Live wallet app. I made a library to communicate with the Ledger app in TypeScript.
11 Likes

Awesome! Is it possible to estimate where the implementation roughly is from 0/project Idea to 100/ready for end user? I am a bit lost by just reading the individual updates, because I have no clue what is actually needed.

1 Like

The project consists largely of these parts:

  • Ledger app wallet
  • grin-wallet integration
  • Live Ledger wallet app (TypeScript and React are used in the starter project)
  • integration tests (I do these in Rust)

These are the main actions that the hardware wallet should be involved with:

  • Build coinbase
  • Build output
  • Getting slatepack proof address

It is hard to estimate or put a number percentage on it. I am not done with the previous elements, far from it. I have ‘lost’ quite some time on issues that weren’t as important; some issues with the handling of errors and traits in Rust.
For example (this can sound too technical), I wanted to make my integration test functions generic enough that it can use the hardware wallet client library, as wel as a Speculos wrapper). But this turns out to be a bit more difficult/time consuming for me at the moment, so I decided to do a more ‘back to basics’ approach.

12 Likes

Update for weeks June 21 to July 5,

  • I worked further on the firmware, some little things. I did some further manual testing of the firmware and I wrote some tests.

I am taking some weeks off from work.

10 Likes

When will we be able to send our smirks to the ledger wallet?

2 Likes

This is hard to say. I’m getting back into development.
Recently, Ledger has changed the Ledger SDK. I like the improvements, but it will take some time to adapt my code. I need to work on the user interface of the Ledger app. It is also hard to estimate how long the integration with grin-wallet and the Ledger Live wallet will take. I started working on that a while ago, I am trying to work towards a point where I can see better how to do the remaining part these integrations, and estimate better the amount of time it will take.

8 Likes

Thanks Mark. Is your code public anywhere?

No, at the moment, it is not ready to make it public.

I’ve been working the last months on incorporating changes the the Ledger rust SDK, resolving errors in the integration tests. I try to come to a point where I can run the integration tests and the Ledger app with most issues resolved. I wait with the integration for grin-wallet and Ledger Live wallet now.

9 Likes

I’m going to think about how I could assign something more developer oriented, but it’s hard at the moment to divide this now in well rounded tasks.

Is this the same thing?

No, this is another project.