Skip to content

Byte Blaster v1.1.22

Latest

Choose a tag to compare

@parkerg16 parkerg16 released this 30 Sep 21:59
· 15 commits to main since this release

Byte Blaster v1.1.22 Release

Firmware and configurator are updated together. Flash the firmware and reload the configurator.

1. Fixed: "Cold" Tuning Launches Started on a Coasting Flywheel

  • Driven to a Stop: In a cold tuning baseline, decel glide keeps the ESC actively driven down to 400 RPM (instead of 2,500 RPM) bounded to 1.5 s, ensuring the ESC maintains phase tracking all the way down to a genuine stop. Normal blaster operation and idle-baseline tuning maintain the standard 2,500 RPM freewheel cutoff.
  • Time at STOP Required: A cold baseline now requires 300 ms with outputs at DShot STOP, preventing residual rotor momentum from being treated as stopped.
  • Flying-Start Check: Early in a launch from a stop, the rotor must lag its reference trajectory. If it reads faster than reference by $\max(500\text{ RPM}, 15% \text{ of target})$ for 5 consecutive samples, the launch is flagged as a flying start, discarded without grading, and re-executed after a 2.5 s rest at STOP (up to 2 retries).
  • Measured Start Speed: startRpm in tuning results is now explicitly measured (fastest reading in the first 80 ms) instead of assumed to be zero.

2. New: Resumable Autotune Sessions

  • When a tuning run encounters a fault (low voltage, telemetry dropout, stall), fails a validation check, or is cancelled by the operator, progress is preserved in RAM. The previous validated tune remains active on the blaster.
  • Retry: Re-runs the single measurement that failed or stopped the run.
  • Re-Tune Failed Validation Points:
    • Validate FF: Re-measures feed-forward at the failed knot, verifies it, and resumes the sequence.
    • Validate PID: Re-tunes PID at the failed target, re-evaluates candidate gains across preset targets, and re-validates all targets.
  • Start Over / Discard: Explicit options to reset or discard saved progress (autotune discard).
  • Safety & Consistency Checks: Refuses resume if launch, motor, or preset settings changed while paused. RPM runaway faults and flash save errors are never resumable.
  • Serial Commands & Telemetry: Added autotune resume retry, autotune resume retune, and autotune discard with status indicators (resume, resumeStage, resumeTarget, warn).

3. Changed: Fairer Validation Grading

  • Preset vs Range Target Policy: Only preset RPM targets (targets nearest configured blaster presets) strictly require passing Validate PID. Non-preset range targets (e.g. 2k/5k floor) that encounter launch limits (rise time, settle, overshoot) generate non-blocking warnings instead of aborting the entire tune.
  • Overshoot Floor: Overshoot only triggers if it exceeds both 5% and 300 RPM, preventing telemetry quantization noise from tripping false failures at low RPM.
  • Informative Failure Detail: Failure messages now include the specific RPM target (e.g., M1 overshoot 35.2>5% @2k).

4. Configurator & Diagnostics Enhancements

  • Tuning Run Export v2: "Download run" exports format v2 with per-sample phase, test target, pass numbers, board-time status timestamps, run options, firmware version, and formatted file names.
  • Runaway Fault Display: Decodes faults 0x60 / 0x61 (ERR_RPM_RUNAWAY) and displays live health warning RPM RUNAWAY - CUT.
  • Resume Control Panel: Web UI automatically presents Retry, Re-tune, Discard, and Start Over controls when a resumable session is detected.

5. Automated Tests

  • Added tests/tuning_resume_tests.js testing retry, single-point re-tune, discard, stale settings refusal, validation warnings, and flying-start detection.
  • Updated production_tuning_path_tests.js, guided_tuning_ui_tests.js, tuning_native_tests.js, and glide_freewheel_tests.js.
  • All 30 test suites pass cleanly.

Assets

  • Byte_Blaster_RP2040_v1.1.22.uf2: Drag-and-drop firmware binary for RP2040 bootloader.
  • Byte_Blaster_RP2040_v1.1.22.bin: Raw flash binary.
  • AM32_F4A_4IN1_F421_2.21_v1.1.22.hex: Pre-built verified AM32 ESC firmware.
  • AM32_F4A_4IN1_F421_2.21_v1.1.22.bin: Pre-built verified AM32 ESC firmware binary.
  • manifest.json: Checksums and release asset metadata.