Skip to content

Releases: RD2W/rustsheng

Release v0.1.1-beta2

Release v0.1.1-beta2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 24 Jul 14:14

What's New

Fixed: PY32F071 (V3/K1) CPU detection

The detect_cpu() heuristic now uses the Reset vector address (offset 0x04
in the ARM vector table) instead of SysTick. PY32F071 bootloader sits at flash
start (0x08000000–0x080027FF), so the firmware Reset vector is always ≥
0x08002800. Rule: Reset >= 0x08002000 → Py32f071. Works on all tested
images — stock, custom, live-flashed.

Fixed: strict per-CPU flash size limits

The auto-extension logic that allowed oversized images (up to 0x14000 / 80KB) has
been removed. Per-CPU limits are now strictly enforced to protect the bootloader:

CPU Revision Flash limit Bootloader location
DP32G030 V1 0xF000 (60KB) End of flash (from 0xF000)
PY32F030 V2 0x10000 (64KB) End of flash
PY32F071 V3/K1 0x12000 (72KB) Start of flash (0x0000–0x27FF)

Images exceeding the limit are rejected with FirmwareError::TooLarge.

--force-cpu flag

The flash subcommand now accepts --force-cpu <CPU> (dp32g030 / py32f030 /
py32f071). Now optional for normal use (auto-detection is correct), still
available for non-standard builds. Works in both --dry-run and live mode.

Cross-platform Python test scripts (test-scripts/)

Three self-contained scripts (Python 3.12+, stdlib only). Auto-discover the
rustsheng binary. Tee-logging to report.txt, byte-level diff for write tests.

Hardware validation

All scripts tested on real hardware — Windows 10, COM4.

Revision Read Write Flash
V1 (DP32G030, fw 2.01.39, bl 2.00.06) OK OK OK (2.01.26)
V3 (PY32F071, fw 7.00.11, bl 7.00.07) OK OK OK (auto-detected)

What's Changed

  • fix: strict per-CPU flash size limits, removed auto-extension by @RD2W
  • fix: PY32F071 CPU detection via Reset vector instead of SysTick by @RD2W
  • feat: --force-cpu flag for flash command by @RD2W
  • feat: cross-platform Python test scripts (test-scripts/) by @RD2W
  • chore: bump clap from 4.6.1 to 4.6.2 by @dependabot[bot] in #8
  • chore: bump thiserror from 2.0.18 to 2.0.19 by @dependabot[bot] in #7
  • chore: bump anyhow from 1.0.103 to 1.0.104 by @dependabot[bot] in #6

Full Changelog: v0.1.1-beta...v0.1.1-beta2

Release v0.1.1-beta

Release v0.1.1-beta Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 13 Jul 14:43

What's Changed

  • ci: bump actions/download-artifact from 4 to 8 by @dependabot[bot] in #3
  • ci: bump actions/upload-artifact from 4 to 7 by @dependabot[bot] in #1
  • ci: bump softprops/action-gh-release from 2 to 3 by @dependabot[bot] in #2
  • ci: bump actions/checkout from 4 to 7 by @dependabot[bot] in #4
  • feat: add V2/V3/K1 multi-revision firmware and CPU detection by @RD2W in #5

New Contributors

Full Changelog: https://github.com/RD2W/rustsheng/commits/v0.1.1-beta