OneKeyHQ / OneKeyHQ/firmware-pro
Signing Using Forge with Trezor Compatibility Fails
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 32
- Forks
- 20
- PR merge metrics
- No merged PRs in 30d
Description
Describe the bug
Signing transaction using OneKey Pro's trazor compatibility and Foundry script call fails with unexpected interaction request: Button
It seems there may be a compatibility issue between OneKey firmware and the signer-trezor crate (used by Foundry), particularly around multi-step interactive signing flows.
Firmware version and revision
OneKey Pro, FW 4.19.0, Bluetooth 2.3.3, Bootloader 2.8.3
Desktop/smartphone setup (please complete the following information):
- Wallet software: Foundry Suite (forge, cast) 1.4.4-stable
- OS: macOS ARM
- Browser N/A
To Reproduce
Steps to reproduce the behavior:
- Run forge script with trezor support forge script ** --trezor using their latest stable version
- The wallet shows two prompts on-device; first passes, second fails after approval.
Expected behavior
The transaction should be signed and sent using forge script.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Originally this issue has been reported to Foundry and Trezor but both indicated it is likely not on their side.
https://github.com/foundry-rs/foundry/issues/13490
https://github.com/trezor/trezor-firmware/issues/6485
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the failure with forge script ** --trezor on the reported OneKey Pro firmware and record the two device prompts. Read the linked Foundry issue #13490 and Trezor issue #6485 for compatibility findings. Done means the second approval completes and the transaction is signed and sent.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, rust
- Domain
- blockchain, embedded-iot
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100