← Back to Home
✅ Release Checklist - VR Simulator
Step-by-step checklist for every release.
Pre-Release Validation
☐ All changes committed to main branch
☐ Run full test build: pio run
☐ Verify on real hardware: oscilloscope check GPIO25/26
☐ Test frequency input: Connect PWM to GPIO4, verify RPM changes
☐ Check serial output: 115200 baud, RPM updates every 1 second
☐ Review all commits since last release
Build and Extract Binaries
☐ Clean build: pio run -c
☐ Verify build succeeds: All objects compiled
☐ Extract firmware.bin from .pio/build/esp32/
☐ Extract bootloader.bin
☐ Extract partitions.bin
☐ Copy all three to docs/ folder
Copy Commands
# From project root:
cp .pio/build/esp32/firmware.bin docs/firmware_latest.bin
cp .pio/build/esp32/bootloader.bin docs/
cp .pio/build/esp32/partitions.bin docs/
Git Tagging
☐ Decide version number (semantic versioning: vX.Y.Z)
☐ Create annotated tag: git tag -a v1.2.0 -m "Release 1.2.0"
☐ Verify tag: git tag -l -n1
☐ Push tag to GitHub: git push origin v1.2.0
GitHub Release Creation
☐ Go to GitHub Releases → Create New Release
☐ Select the tag you just created
☐ Write release notes (what changed, what's new, known issues)
☐ Attach three binaries:
- firmware_latest.bin
- bootloader.bin
- partitions.bin
☐ Mark as "Latest Release"
☐ Publish Release
Web Flasher Updates
☐ Update docs/index.html version display
☐ Update docs/manifest.json with new release info
☐ Update docs/README.md version number in header
☐ Test web flasher locally (Chrome/Chromium)
☐ Verify dropdown shows new firmware version
☐ Flash to test board and verify functionality
Version Update Commands
# Update docs/index.html
sed -i 's/v1\.1\.0/v1.2.0/g' docs/index.html
# Update docs/README.md
sed -i 's/1\.1\.0/1.2.0/g' docs/README.md
Final Verification
☐ Web flasher loads correctly in Chrome
☐ Binary URLs resolve (no 404 errors)
☐ Test flash to ESP32 succeeds
☐ ESP32 boots and shows correct firmware version in serial output
☐ All documentation links work
Documentation Sign-Off
Release: 1.2.0
Date: 2026-07-02
Built By: [Your Name]
Tested On: ESP32-DEVKITC-32
Verification: ✓ Hardware test passed ✓ Web flasher working ✓ All binaries attached
Sign-off: [Signature/Date]
Pro Tip: Use this checklist as a GitHub issue template so it can be tracked and checked off during each release.
⚠️ Never Skip:
- Testing on real hardware before release
- Creating Git tags for version control
- Attaching all three binaries to GitHub Release
- Updating web flasher version display