Releases: WingFlight/wingflight-firmware
Release list
Wingflight Snapshot 0.0.22
Add a descriptive role tag to mixer rules, with per-role adjustment functions (ADJUSTMENT_FLAP_COMPENSATION_GAIN, ADJUSTMENT_DIFF_THRUST_YAW_GAIN) and fixes for role-adjusted rules losing their Reverse flag.
Add TRADITIONAL flight mode: stabilized with I-term forced to zero.
Block first arm until a configured backup RX has linked.
Hold Auto Hover's roll axis against disturbance drift (e.g. torque roll) once the stick centers, instead of leaving it a bare pass-through the whole time.
Change default servo refresh rate to a safe 50Hz.
Wingflight Snapshot 0.0.21
Tag CLI errors raised while replaying a target's embedded custom-defaults blob (e.g. on defaults/defaults nosave) with "(custom defaults)", so they're no longer indistinguishable from an error in whatever command the user actually typed.
Wingflight Snapshot 0.0.20
Fix MANUAL mode losing its rates/expo shaping on fast stick moves and ignoring the configured rate profile's authority, both of which pushed it toward full-deflection passthrough.
Wingflight Snapshot 0.0.19
Add RX and ESC telemetry serial wiring auto-detect trial modes to help diagnose signal-inversion and pin-swap mismatches.
Fix RX/TX invert and pin-swap settings sticking across UART reopens.
Fix Spektrum satellite bind pin selection to honor serial pin-swap.
Wingflight Snapshot 0.0.18
Add Thrust Vector profiles (6 independently-switchable profiles).
Generalize the backup RX from SBUS-only into a provider-selectable input, adding FBUS, FPort, FPort2, Jeti EX Bus, and CRSF support alongside SBUS.
Wingflight Dev Build: feature/crsf-sensors
Automatic development build from feature/crsf-sensors @ cb7a01d
fix: accept any byte as a CRSF sensors frame start, not a fixed address list
Same follow-up as rotorflight-firmware#497: the explicit address
whitelist still rejected valid CRSF frame starts (ESC addresses
0x90-0x97, the dynamic NAT range 0x20-0x7F, and others this repo's own
crsf_protocol.h doesn't even enumerate). Drop the whitelist and treat
every byte as a candidate start; the length-byte range check and the
CRC8 check at frame-end are what actually validate a frame.
Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com
Rebuilt on every push to this branch -- this release is replaced, not
accumulated. Not for production use.
Wingflight Snapshot 0.0.17
Add Thrust Vector Attitude Hold.
Add SBUS-In Fallback Receiver (Serial Rx (Backup, SBUS)).
Fix servo-center snap when continuously slewing a SERVO_TRIM_* adjustment.
Add bus servo PWM-clone mode (bus_servo_clone_pwm, default ON) so bus servo channels mirror the matching PWM output without separate mixer rules.
Fix an init glitch on the Spektrum satellite receiver bind pin.
Wingflight Snapshot 0.0.16
Add XACT servo programming support: multi-servo discovery over FBUS, per-servo background reads, and a field set aligned to FrSky's own configuration tool.
Fix XACT parameter reads hanging forever on a field an unsupported servo doesn't answer.
Fix XACT writes silently reprogramming the wrong servo when two servos share an App ID.
Fix XACT servo tracking losing a servo after its Physical ID is renamed.
Fix SRXL2 telemetry seqlock read.
Fix Hard lock on governor disabled
Wingflight Dev Build: feature/fclink
Automatic development build from feature/fclink @ 792a613
dev-build: use a valid-semver, alphanumeric-only version suffix
The dev/fclink prerelease this workflow just published used
"dev_fclink_" as its version suffix -- underscores aren't valid
semver prerelease characters. The configurator's semver comparisons
in processBoardOptions() run inside an unguarded forEach over every
release from the API; hitting one invalid version string throws and
aborts the whole loop, so this silently broke board discovery in
Development build-type mode for every release, on every branch, not
just this one.
Semver prerelease identifiers only allow [0-9A-Za-z-]; the
configurator's own filename regex (FILENAME_EXPRESSION in
firmware_flasher/util.js) only allows [0-9A-Za-z_] in this position.
The only character set satisfying both is plain alphanumeric, so
strip separators entirely for the version suffix (dev,
e.g. "devfclink074c379") instead of substituting one. The release/tag
name itself has no such constraint, so it keeps a readable hyphenated
slug (dev/fclink) -- just renamed the existing SLUG var split into
SLUG (tag) and VER_SLUG (version suffix) so both jobs stay in sync.
Rebuilt on every push to this branch -- this release is replaced, not
accumulated. Not for production use.
Wingflight Snapshot 0.0.15
Add support for Spektrum SRXL2 ESC (throttle and telemetry over a single bidirectional bus).
Support Spektrum full-size receivers (e.g. AR6610T) by sending an early SRXL2 handshake at boot.