Skip to content

0.8.7-plus.2 — SeedSigner Plus (unofficial fork)

Choose a tag to compare

@paulscode paulscode released this 24 Aug 00:44
· 118 commits to dev since this release

⚠️ Unofficial fork — not an official SeedSigner release

This is an unofficial fork of SeedSigner, customized for SeedSigner Plus hardware. It is not produced, endorsed, or supported by the SeedSigner project. Please do not report issues with this image to upstream.

If you have ordinary 240x240 SeedSigner hardware, use the official upstream release instead — this image will boot to the wrong display geometry on that hardware.

Supersedes 0.8.7-plus.1, which corrected only the display. This release also corrects the camera orientation. Plus users should flash this one.


What's different from upstream 0.8.7

Two SettingsEntry default values in src/seedsigner/models/settings_definition.py, and nothing else:

Setting Upstream default This fork
display_config st7789_240x240 st7789_320x240 — the Plus panel
camera_rotation 180 0 — the Plus camera is mounted 180° from upstream's assumption
- default_value=SettingsConstants.DISPLAY_CONFIGURATION__ST7789__240x240
+ default_value=SettingsConstants.DISPLAY_CONFIGURATION__ST7789__320x240

- default_value=SettingsConstants.CAMERA_ROTATION__180
+ default_value=SettingsConstants.CAMERA_ROTATION__0

On a clean boot that means the large screen renders correctly and the scan preview is right side up, with:

  • no persistent settings required — nothing is written to the SD card, at build time or at startup;
  • no Settings QR to scan and no trip into the Settings menu;
  • a reboot returning to these defaults, since persistence stays disabled.

The 320x240 ST7789 support and the camera rotation setting are both upstream SeedSigner functionality (the display support landed upstream in v0.8.6). This fork adds no display driver, no rendering code, and no camera handling — it only changes which existing values are the defaults.

Both settings remain available in the UI (Settings > Advanced > Hardware > Display type and Settings > Advanced > Camera rotation), and every upstream option is still supported.

Changes since 0.8.7-plus.1

  • Default camera_rotation 180 → 0, fixing the upside-down scan preview on Plus hardware. Verified on device.

Note that SeedSigner offers camera rotation only — there is no mirror/vertical-flip option. Camera renders each frame with rotate(90 + camera_rotation), so upstream's 180 gives an effective 270° and this fork's 0 gives an effective 90°.

Intended hardware

Raspberry Pi Zero v1.3 + SeedSigner Plus (320x240 ST7789). Use the pi0 image.

Build record

Source repo https://github.com/paulscode/seedsigner.git
Source tag 0.8.7-plus.2
Source commit ef3f17c3548a1d72d011ad9f15c669cfe4a70aba
Upstream base SeedSigner 0.8.7 (e0a80d4b33b8eb7fb1e9fd14a27b7cd11c7d2cd6)
Builder SeedSigner/seedsigner-os tag v0.8.7 (buildroot submodule bf2a2858)
Board target pi0
Image seedsigner_os.0.8.7-plus.2.pi0.img (52,428,800 bytes)
SHA-256 201bfdfea35201db9096e87b266979261bf1356e2ec0304cf033b0f63c3d9f2c

Built with the upstream reproducible build process, unmodified apart from pointing --app-repo at this fork:

git clone --recursive https://github.com/SeedSigner/seedsigner-os.git
cd seedsigner-os
git checkout v0.8.7
git submodule update --init --recursive

export DOCKER_DEFAULT_PLATFORM=linux/amd64
SS_ARGS="--pi0 --app-repo=https://github.com/paulscode/seedsigner.git --app-branch=0.8.7-plus.2" \
  docker compose up --force-recreate --build

Verify your download

Check the image against the published checksum:

sha256sum -c SHA256SUMS

SHA256SUMS is signed with a detached, armored PGP signature (SHA256SUMS.asc). Verify the signature before trusting the checksum:

gpg --verify SHA256SUMS.asc SHA256SUMS

These artifacts are signed with the paulscode key, not the SeedSigner project's GPG key — deliberately so, because they are not SeedSigner releases. My public key is available on my website at paulscode.com. If you require an image signed by the SeedSigner project, build from source yourself using the command above, or use the official upstream release.

Licensing

MIT, unchanged from upstream. All upstream attribution is intact. See LICENSE.md and docs/seedsigner_plus_fork.md.