Releases: stanford-ssi/samwise-flight-software
Vibe Test V4
Vibe Test V4 Release
Overview
Vibe Test V4 introduces significant improvements to radio communications, comprehensive testing infrastructure, ADCS
integration, ground station capabilities, and numerous bug fixes. This release includes 20+ merged pull requests with
contributions across the entire flight software stack.
Changelog
Radio & Communications
- Radio TX Fix (#192): Simplified transmission logic to fix race condition when checking tx_done status
- Beacon Callsign (#181): Added KC3WNY callsign to beacon packets with updated KSY schema
- Transmission Logic: Improved LoRA transmission reliability and packet formatting
Ground Station Enhancements
- Raspberry Pi Compatibility (#190): Made ground station code compatible with RPI GPIO pins
- Debug Mode (#161): Added debug mode capabilities for ground station operations
- Remote Control (#123): Enhanced interactive mode with better packet unpacking and radiohead header stripping
- Command Payload Fixes: Fixed sizing issues on command payloads
Testing Infrastructure
- Test Framework (#155): Added comprehensive local test framework for non-embedded unit testing
- FSM Tests (#158): Added finite state machine tests for running state
- Beacon Task Tests (#164): Added basic harness for radio task testing
- Visualizer: Built satellite test visualizer with task execution logging, event filtering, and timeline view
- CI/CD: Added GitHub Actions workflow for automated test execution
- CTest Integration: Refactored CMakeLists.txt to use ctest for test discovery and execution
ADCS Integration
- ADCS Task (#139): Added ADCS task to running state
- ADCS Telemetry (#128): Implemented new architecture with PiCubed-initiated telemetry
- MRAM Driver (#168): Added MRAM driver for ADCS with proper header includes (#170)
Build System & Development
- PICUBED-DEBUG Build (#194): Added PICUBED-DEBUG configuration and updated CI workflow
- SWD Debug Probe (#184): Added script for SWD loading of SAMWISE binary
- strlcpy Compatibility: Fixed compatibility issues across the codebase
Burn Wire Task
- Persistent Counter (#135): Added persistent counter for burn wire task attempts
- State Management: Added override state for resetting burn wire attempts
- GPIO Improvements: Fixed burn wire GPIO control with proper HIGH/LOW logic and switching delays
Commands & Features
- PING Command (#129): Implemented ping command to check payload status
- Boot Count Logging: Added boot count emission in logs for debugging
Bug Fixes & Improvements
- Device Status GPIO: Moved GPIO initialization earlier in main to properly read RBF pins
- MRAM Header: Fixed MRAM driver header includes
- Beacon Offset: Fixed byte offset issues in beacon packets
- Neopixel: Reduced LED intensity and removed logging neopixel for cleaner logs
- Dependencies: Updated visualizer dependencies (esbuild, vite) via dependabot
Documentation
- Onboarding (#156): Updated ONBOARDING.md with improved installation paths
- Test Infrastructure: Added comprehensive test infrastructure documentation
- Ground Station: Added README for new ground station code usage
Testing Notes
This release has been validated with:
- Automated CI/CD pipeline running all unit tests
- FSM state machine tests
- Radio transmission and beacon task tests
- Ground station RPI compatibility testing
Merged Pull Requests (20+)
#194, #192, #190, #184, #181, #170, #168, #164, #163, #161, #158, #156, #155, #144, #140, #139, #138, #136, #135, #129, #128,
#123
Vibe Test V3
Stable build of debug_v3.
Beacon has more details now and we're checking for RBF pin. Still only a 5s timeout initially.
Added ADCS UART task for telemetry polling in samwise_adcs.uf2
Only telemetry & watchdog task in samwise_telemetry_only.uf2 for isolation & testing. Includes:
- fixed solar charger/faulty status
- mppt stats
- battery voltage & current
No WD version of debug_v3 for verifying Watchdog circuit: samwise_no_watchdog.uf2
Vibe Test V2
2 builds:
- burn_wire_bypass: sets burn_wire to activate as the first task. Retries up to 5 times, 5s intervals. Defaults to running_state afterwards.
- burn_wire_task runs: Light up WHITE | wait 1s | BURN_A for 5s | BURN_B for 5s | wait 4s (loop back)
- debug_v2 with lights! neopixel lights up a different color each task it executes (debugging latest build)
- debug_v2_15min: this version has the full 15min delay which we set during FLIGHT as well
Bringup release v0.0.2
New Bringup uf2 build.
What's Changed
- Drivers/payload uart merge by @QuackWifHat in #70
- feat: integrate TinyCrypt library for packet authentication by @developStorm in #67
- Parallelization for GitHub Build Action by @developStorm in #79
- Update c_lint.yaml by @devYaoYH in #83
- Add MPPT drivers and telemetry_task.c to poll each hardware component. by @devYaoYH in #68
- feat: packet replay protection by @developStorm in #95
- Add minor 5s delay before boot. by @devYaoYH in #90
- Command Processing by @HaileThomas in #99
New Contributors
- @QuackWifHat made their first contribution in #70
- @developStorm made their first contribution in #67
- @HaileThomas made their first contribution in #99
Full Changelog: dev...dev-v0.0.2
Initial Vibe Test Release
Manual release for PICUBED-BRINGUP and PICUBED-DEBUG binaries for vibe test.