Skip to content

coldcard: bump firmware, add edge, display taproot address, restore test_signtx (ex. multisig) - #849

Open
Sjors wants to merge 12 commits into
bitcoin-core:masterfrom
Sjors:2026/08/edge
Open

coldcard: bump firmware, add edge, display taproot address, restore test_signtx (ex. multisig)#849
Sjors wants to merge 12 commits into
bitcoin-core:masterfrom
Sjors:2026/08/edge

Conversation

@Sjors

@Sjors Sjors commented Aug 18, 2026

Copy link
Copy Markdown
Member

The Edge firmware supports displaying taproot single sig addresses, and more importantly MuSig2.

Rather than blowing up the CI matrix, this PR only adds it for Python 3.14. It can be easily be dropped again if all Edge features we care about land in their regular firmware.

The first commit re-enables test_signtx, which was already possible. It achieves this by dropping multisig for ColdCard in that these. This can be re-introduced by #792.

The multisig patch is adjusted or Edge. Alternatively after #847 it could be dropped entirely. It builds, but CI won't cover it until #792. I did test it locally.

Sjors and others added 6 commits August 18, 2026 17:18
Restrict the Coldcard transaction cases to singlesig inputs, which do
not require multisig wallets to be preloaded in the simulator.
Drop note to keep COLDCARD_VERSION in sync, because the install action
consumes the simulator artifact built by setup_environment.sh.
Initialize only the firmware submodules needed by simulator setup
instead of recursively fetching unrelated embedded dependencies.

Build against the system libffi rather than MicroPython's bundled copy,
which current Autoconf rejects.

Apply the multisig fixture with git apply rather than git am, so
updating the firmware checkout does not require resetting a fixed number
of commits.
Extract the Coldcard firmware setup into a helper for reuse by other
firmware variants.

Review hint:
git show --color-moved=dimmed-zebra \
  --color-moved-ws=allow-indentation-change
Add an Edge target to simulator setup and include its output in the
Coldcard simulator build matrix.

Reuse Edge's valid multisig policy under the HWI fixture name.

Co-authored-by: scgbckbone <scgbckbone@proton.me>
Expose the Edge simulator through the device test runner and account
for its unsupported multisig display behavior.

Co-authored-by: scgbckbone <scgbckbone@proton.me>
Sjors and others added 3 commits August 18, 2026 18:18
Keep the existing test modes while allowing callers to select Python
versions.
Install the cached Edge simulator in GitHub Actions and run all source
and distribution test modes on Python 3.14.

Co-authored-by: scgbckbone <scgbckbone@proton.me>
Co-authored-by: scgbckbone <scgbckbone@proton.me>
@Sjors

Sjors commented Aug 18, 2026

Copy link
Copy Markdown
Member Author

Looks like Azure is on strike, with Jade and ColdCard simulator build jobs being stuck.

@Sjors Sjors mentioned this pull request Aug 18, 2026
@Sjors

Sjors commented Aug 18, 2026

Copy link
Copy Markdown
Member Author

Added e1442a0 to stop needlessly downgrading to PSBT v0.

Update checkout and artifact actions to their latest major versions.
This avoids the Node.js 20 fallback warning on current runners.
@Sjors

Sjors commented Aug 19, 2026

Copy link
Copy Markdown
Member Author

The edge builder job consistently gets stuck during apt update. The other builders sometimes do. It's probably an infrastructure issue, but I added a commit to set max retries and timeouts to apt update and install. That way fail early instead idling until the runner times out hours later.

I also bumped the actions versions. That avoids some existing warnings about old nodejs, but I would not expect it to fix anything.

GitHub-hosted runners can hang while accessing the prioritized Azure
Ubuntu mirror. Retry transient failures, bound connections to 30
seconds, and bound the full update and install commands.
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.

ColdCard: test_signtx broken Support displaying Taproot addresses on Coldcard Edge (6+) firmware

1 participant