Important
Please note the release is now a PWA (progressive web app).
You may add it as an "application" after going to the app online.
There has been a huge change in the way in which we release the Betaflight App. It is now a Progressive Web App (PWA). For more details on this change and what it means for you, we have added extensive details on betaflight.com.
An Android APK is now also available for testing (YMMV).
What's Changed
Features
- Feat/web virtual mode by @chmelevskij in #3882
- Add DFU support for PWA by @haslinghuis in #3949
- Add support for gyro_cal_on_first_arm by @haslinghuis in #3938
- Add bluetooth support by @haslinghuis in #4024
- Added notifications for long actions by @YarosMallorca in #4134
- Add websocket support and fix port override by @haslinghuis in #4187
- Added LED Brightness Adjust by @jpmreece in #4105
- Added virtual blackbox option for SITL firmwares build by @demvlad in #4409
- hover point throttle curve adjustment by @marc-frank in #4245
- adding TFNOVA - which requires firmware update by @LarryKarhu in #4485
- Feature: Add modified loader to load arbitrary html as Vue apps by @VitroidFPV in #4518
- Add support for IMU3+ (Gyro Fusion) by @haslinghuis in #4490
- TARGET: Implement simple ability to flash UF2 for PICO by @blckmn in #4583
- Adds support for Airbot Theia OSD by @freasy in #4476
Improvements
- Add clipboard feature to web app by @McGiverGim in #3887
- Adjust header bar in mobile devices by @McGiverGim in #3925
- Expose [local] firmware build options by @haslinghuis in #3931
- New led functions gps bar battery bar altitude by @jonas-becker in #3823
- Add manual connection option by @haslinghuis in #3703
- Cli on web by @chmelevskij in #3913
- Make port_handler work with PWA by @McGiverGim in #3958
- Add auto-connect checkbox again by @McGiverGim in #3970
- Auto-detect for PWA by @haslinghuis in #3971
- Add Acro center sensitivity to Betaflight Rates by @haslinghuis in #3927
- Sort rate models by @haslinghuis in #3975
- Add CLI file functions for PWA by @haslinghuis in #3976
- Use the "show manual" preference in the porthandler to show or hide the option by @McGiverGim in #3968
- Add FileSystem API to read/write files and use it by @McGiverGim in #3977
- Refactor port handler by @McGiverGim in #3984
- Add DFU devices to the port handler by @McGiverGim in #3991
- Move some code of portOverride from serial_backend to vue by @McGiverGim in #3992
- Add web API support for flashing by @haslinghuis in #3996
- Refactor auto-backup in flashing tab for PWA by @haslinghuis in #4005
- Extract auto-detect from firmware flasher for PWA by @haslinghuis in #4006
- Increment minimal supported API to 1_44 (firmware 4.3) (1/4) by @haslinghuis in #4008
- Increment minimal supported API to 1_44 (firmware 4.3) (2/4) by @haslinghuis in #4009
- Increment minimal supported API to 1_44 (firmware 4.3) (3/4) by @haslinghuis in #4010
- Remove experimental backup and restore by @haslinghuis in #4007
- Increment minimal supported API to 1_44 (firmware 4.3) (4/4) by @haslinghuis in #4011
- Use object-fit for sponsor logos by @haslinghuis in #4015
- Fix tethered logging under PWA by @McGiverGim in #4029
- Style: UI Refresh by @VitroidFPV in #3956
- Some adjustments to the VTX tab UI by @McGiverGim in #4042
- Fix UI toolbar buttons at tethered logging by @McGiverGim in #4043
- Fix some UI glitches in servos tab by @McGiverGim in #4040
- Remove space for hidden buttons in the toolbar by @McGiverGim in #4041
- Update debug by @haslinghuis in #4044
- Several little UI adjustments by @McGiverGim in #4045
- Request permission before connect in USB flashing by @McGiverGim in #4046
- Fix CLI autocomplete background color by @McGiverGim in #4049
- Auto flashing without asking permissions if possible by @McGiverGim in #4048
- Style: Fix jBox tooltip colors by @VitroidFPV in #4054
- Make msc-not-support expert only by @haslinghuis in #4056
- Adjust RX Plot graph elements by @McGiverGim in #4060
- Change Vite register type to prompt for PWA by @McGiverGim in #4059
- Fix disabled state of autodetect button by @McGiverGim in #4062
- Fix firmware flasher tab toolbar by @McGiverGim in #4063
- Fix presets UI buttons bar by @McGiverGim in #4066
- Fix button toolbar in motors and modes tabs by @McGiverGim in #4067
- Add altitude variant by @haslinghuis in #4052
- Add capacitor android by @McGiverGim in #3955
- Add APM32 device support by @haslinghuis in #4069
- CLI Text dark font on dark background fix. by @Six6siX in #4072
- Aesthetic CLI dropdown menu by @Six6siX in #4073
- Fix hide of dataflash element by @McGiverGim in #4076
- Fix botton toolbar again in modes an flasher tab by @McGiverGim in #4077
- Fix typos by @themrleon in #4079
- Detect GitHub branch name automatically from URL by @YarosMallorca in #4081
- Fixes text legibility by @YarosMallorca in #4083
- Style Fix: Adjust layout for fixed toolbar by @VitroidFPV in #4086
- Fixed text color in motors & PID tabs for light mode by @YarosMallorca in #4092
- Fix menu overflow by @haslinghuis in #4090
- Extract out virtual serial by @chmelevskij in #3998
- Hide firmware version dropdown for virtual mode by @haslinghuis in #4097
- Enforce preset mutally exclusive option groups by @Stampede10343 in #3940
- Remove cordova logic by @chmelevskij in #4000
- Add ELRS SPI Model Match ID by @haslinghuis in #4104
- Update TPA debug fields by @haslinghuis in #4109
- Change displaying of instruments in the setup tab. by @bfmvsa in #4108
- Vertically centered label and its radiobutton in OSD tab by @bfmvsa in #4112
- Use basic less functions to generate repeated css by @bfmvsa in #4113
- Adjust contrast ratio for sidebar links. Add flexible colors for svg. by @bfmvsa in #4115
- Remove right margin for .helpicon in .gui_box_titlebar by @bfmvsa in #4117
- Stick landing page footer to the bottom of the page by @bfmvsa in #4121
- Style: Fix graph layout in Sensors tab by @VitroidFPV in #4122
- Style: Fix contrast issues by @VitroidFPV in #4125
- Add DEBUG2 OSD element by @haslinghuis in #4124
- Update FFT-FREQ & add SPA and TASK debug modes by @haslinghuis in #4085
- Voltage help-tips by @nerdCopter in #4129
- Fixed dataflash indicator in the top row by @YarosMallorca in #4135
- Style: Fix modes range and link overflow by @VitroidFPV in #4140
- Fix color of helpicon on hover by @bfmvsa in #4146
- Made VTX Frequency Input bigger by @YarosMallorca in #4147
- Fixed race transponder icon by @YarosMallorca in #4148
- Warn when selected rx protocol is not in build configuration by @her01n in #4150
- Add altitude hold debug and update parameters by @haslinghuis in #4130
- Restore failsafe modename CSS by @haslinghuis in #4159
- fix motor tab representation by @haslinghuis in #4180
- Refactor dMin to dMax by @mituritsyn in #4173
- Styled progress bar on preset apply screen by @YarosMallorca in #4191
- Fix build options unreadable in dark mode by @YarosMallorca in #4190
- Add language option by @haslinghuis in #4174
- Altered checkbox/radio accent color & size by @YarosMallorca in #4195
- Motor wizard fix by @YarosMallorca in #4197
- Fixed CLI load modal title background color by @YarosMallorca in #4200
- Adding support for CLI commands over an active MSP port. by @blckmn in #4189
- Update color for rx protocol warning by @haslinghuis in #4198
- Deprecate minthrottle to use motor_idle by @haslinghuis in #4196
- Add CLI console by @haslinghuis in #4207
- Update debug (replace GPS_RESCUE_THROTTLE_PID with AUTOPILOT_ALTITUDE) by @haslinghuis in #4208
- Add softserial as build option by @haslinghuis in #4202
- Styled the cloud build progress bar by @YarosMallorca in #4218
- Fixed color of BBL Progress Bar by @YarosMallorca in #4220
- Remove gyro_scaled by @haslinghuis in #4224
- Update browser check by @haslinghuis in #4214
- Add tooltip for altitude hold by @haslinghuis in #4222
- add ToolTip for AirMode by @nerdCopter in #4206
- Fix deprecation of slider-vertical by @haslinghuis in #4234
- substitue
aircraftforcraft,drone, orquadby @nerdCopter in #4232 - Add STMicroelectronics STLink Virtual COM Port by @ledvinap in #4244
- Fix gps color by @haslinghuis in #4241
- Only show first line of commit message by @haslinghuis in #4249
- Enforce OSD option by @haslinghuis in #4251
- Fix vtx tab presentation by @haslinghuis in #4257
- Attitude field added to blackbox fields list by @demvlad in #4248
- Update TPA debug (Wing) by @haslinghuis in #4211
- Add Gimbal debug by @haslinghuis in #4260
- Add WING_SETPOINT debug by @haslinghuis in #4261
- Show SDC in DataFlash component by @haslinghuis in #4267
- Update messages by @haslinghuis in #4270
- add Servo debug disable field by @haslinghuis in #4271
- Adjust 3D boxmode by @haslinghuis in #4273
- Style: Fix contrast issues on dark mode by @VitroidFPV in #4277
- Add custom osd msg support from external device by @haslinghuis in #4281
- Add AUTOPILOT_POSITION and OPTICALFLOW debug modes by @demvlad in #4284
- Adding support for UART0 by @blckmn in #4283
- Update IMU (remove legacy) by @haslinghuis in #4276
- Add position hold build option by @haslinghuis in #4292
- Execute prettier by @haslinghuis in #4291
- Add gyro and magnetic custom alignment MSP by @haslinghuis in #4294
- pre-arm recommendation by @nerdCopter in #4297
- Add IIM42653 IMU by @haslinghuis in #4302
- Add GNNS VIRTUAL device option by @haslinghuis in #4298
- Add binary sub protocol to allow communication with websockify. by @CodinMoldovanu in #4303
- Add MCU_INFO MSP support by @haslinghuis in #4306
- Update sonar elements by @haslinghuis in #4305
- Dynamic βreturn altitudeβ field in GPS Rescue tab by @hntirgeam in #4308
- Add 230K4 baudrate support for GPS by @haslinghuis in #4317
- modify ALTITUDE_HOLD mode verbiage by @nerdCopter in #4329
- Ports-tab SerialRX help-tip by @nerdCopter in #4324
- Improve sensor handling and add configuration for sonar and opticalflow by @haslinghuis in #4327
- Add support for conditional number of rate profiles (msp) by @haslinghuis in #4331
- update virtualFC version and accompanying modes for modes-tab by @nerdCopter in #4332
- Add CHIRP debug mode by @haslinghuis in #4340
- Add magnetic declination info by @haslinghuis in #4336
- Add array mutation helper and add missing arming disable flags by @haslinghuis in #4334
- Add visual info about pdop quality by @haslinghuis in #4343
- Reducing the minumum mmix number of motors for the warning to appear in the "Custom Airplane" mixer by @hntirgeam in #4319
- Add missing tooltips (ALTHOLD, POSHOLD) by @haslinghuis in #4341
- Disable motor stop feature when airmode is enabled by @haslinghuis in #4326
- Improve configuration for MSP GNSS by @haslinghuis in #4344
- Fix Three.js no WebGL mode by @jesuslg123 in #4351
- Improve debug logging by @haslinghuis in #4354
- Update latlon by @haslinghuis in #4349
- Need expert mode for reset by @haslinghuis in #4357
- Add info overlay about gyro status over model view by @jesuslg123 in #4358
- group altitude fields in failsafe tab by @haslinghuis in #4370
- Make backup on flash an option by @haslinghuis in #4360
- Visual feedback on OSD elements hover by @BoldBigflank in #4372
- Improve readability of the #header_buttons - simpler structure, black icons, green connect button by @sEver in #4371
- Disable motor protocols not included in build by @haslinghuis in #4373
- Disable port elements depending on build options by @haslinghuis in #4374
- Add assistance for OSD selection by @haslinghuis in #4385
- Fix spacing in display of arming disable flags by @haslinghuis in #4389
- Add message for flashing not continuing after backup cancelled by @haslinghuis in #4393
- Add serial facade by @haslinghuis in #4402
- Serial refactor part 2 by @haslinghuis in #4404
- Add search to osd elements list by @sEver in #4416
- Fix DFU port handler event by @haslinghuis in #4420
- Motor direction is saved upon selection by @haslinghuis in #4427
- Add OSD variant for RTC element by @haslinghuis in #4428
- feat: open options-tab on first visit by @haslinghuis in #4426
- modify flasher tab layout by @nerdCopter in #4429
- Add GD32 VCP support by @haslinghuis in #4441
- modify wing mixer preview to be legible in darkmode by @bkleiner in #4446
- Add Firmware/Download to Setup tab, add ':', formatting (#4444) by @DavidAnson in #4450
- Add DroneBridge Bluetooth LE device definition by @seeul8er in #4454
- Fix serial by @haslinghuis in #4449
- Update OS check by @haslinghuis in #4456
- Fix GNSS status icon when fix is attained without sat info by @haslinghuis in #4461
- Update Setup tab to hide build type/info/firmware when not available (#4459) by @DavidAnson in #4460
- Remove last references to chrome.app by @haslinghuis in #4469
- Allow execution when either Web Serial, Bluetooth or USB API is present by @haslinghuis in #4470
- Include support ID when saving to file by @haslinghuis in #4483
- Add support for ICM45605 and ICM45686 by @haslinghuis in #4432
- Upgrade Three.js to r176 & Adopt GLTF for 3-D Assets by @anwarminarso in #4496
- Update sensor_types.js (ICM40609D) by @haslinghuis in #4492
- Represent OSD font characters using text/SVG instead of canvas/PNG for better performance (OSD tab loads in roughly half the time on an older Chromebook). by @DavidAnson in #4497
- Add IMM42652 by @haslinghuis in #4513
- cleanup and explicit use web prefix for protocols by @haslinghuis in #4500
- UI: Reduce size of switchery selectors by @blckmn in #4525
- REFACTOR: Removing a number of tracking events (superfluous) and combining others. by @blckmn in #4524
- Show vtx tab only when vtx build option used by @mituritsyn in #4526
- PICO: Adding USB serial filter for PICO boards by @blckmn in #4521
- UI : Preset positioning for elements in OSD by @syahmizul in #4516
- Replace all 4 instances of jBox-style modal dialog boxes with HTML dialog element by @DavidAnson in #4484
- Refactor GYRO debug modes (rename to MULTI_GYRO) by @haslinghuis in #4541
- Add support ID to clipboard by @haslinghuis in #4544
- Refactor: Use serial path by @haslinghuis in #4548
- Add beeper-config controls by @haslinghuis in #4557
- π Add CLI Only Mode as development option by @haslinghuis in #4559
- π Add connection timer by @haslinghuis in #4562
- π§ Update GPS map UI by @haslinghuis in #4563
- REFACTOR: Implement Fetch over $.ajax by @blckmn in #4564
- Clarify cli (dev only) mode by @haslinghuis in #4570
- Deprecate feedforward cutoff by @haslinghuis in #4569
- Hide MAG custom alignments when using presets by @haslinghuis in #4577
- Replace jBox tooltips with Tippy.js tooltips, remove jBox assets and references by @DavidAnson in #4582
- Updating Privacy Policy for App by @blckmn in #4585
- Adding version output using text via MSP by @blckmn in #4586
- Add OSD preview rulers by @haslinghuis in #4567
- PICO: Add new PIOUART range by @haslinghuis in #4588
- Remove IMU alignment from UI by @haslinghuis in #4590
- Add FLASH_TEST_PRBS debug mode by @haslinghuis in #4606
- Reduce Tippy font size by @haslinghuis in #4610
- Fix: Update/remove usage of the "4.6" version string within Virtual Mode labels by @VitroidFPV in #4613
- Style Fix: Re-implement headerbar expanding for mobile by @VitroidFPV in #4615
- Style: Fix various small UI inconsistencies by @VitroidFPV in #4616
- Add missing GPS Rescue Throttle PID debug fields by @haslinghuis in #4630
- Improve msp send by @haslinghuis in #4510
- Update gyro sensor info by @haslinghuis in #4626
- Add RC smoothing throttle configuration to UI by @haslinghuis in #4644
- Add MAVLink Telemetry debug mode by @haslinghuis in #4645
- Added MAVLink serial RX provider settings by @demvlad in #4643
- Add support for 460K8 telemetry baudrate by @haslinghuis in #4658
- Add support for API 1.48 by @haslinghuis in #4668
- Responsive layout in Adjustments tab by @YarosMallorca in #4675
- Add Save and Erase button for onboard logging by @haslinghuis in #4673
- Change GNSS map button order by @haslinghuis in #4677
- Replace jQuery tab visibility with Vue reactivity (Fixes #4700) by @Erics1337 in #4701
- Update compatibility check by @haslinghuis in #4711
- Update compatibility error page to use hexagon as background by @blckmn in #4716
- feat: Migrate Help and Landing tabs from jQuery to Vue by @Erics1337 in #4723
- feat: Migrate Options tab from jQuery to Vue by @Erics1337 in #4724
- feat: Migrate Ports Tab to Vue by @Erics1337 in #4726
- Update the DNS name for firmware presets by @blckmn in #4715
- feat: Vue Migration: Servos by @Erics1337 in #4725
- Refactor: Move reinitializeConnection to GUI.js by @Erics1337 in #4734
- HOUSEKEEPING: more use of app versus configurator by @blckmn in #4738
- Add virtual dual IMU support for 1.47 by @haslinghuis in #4742
- Capacitor BLE plugin using Nordic library by @haslinghuis in #4735
- feat: Migrate Configuration Tab to Vue 3 by @Erics1337 in #4727
- Only use semver, no need for semver.min dependency by @haslinghuis in #4752
Fixes
- Fix virtual mode after serial connection by @haslinghuis in #3916
- Fix dual telemetry in receiver tab for local builds by @haslinghuis in #3923
- Fix virtual reboot and auto-connect by @haslinghuis in #3933
- Fix AT32 detection by @haslinghuis in #3935
- Fix reset options by @haslinghuis in #3932
- Fix MSP Radio emulator in PWA by @McGiverGim in #3939
- Fix background color activation in modes tab in dark mode by @McGiverGim in #3961
- Use BATTERY_STATE for cellCount by @haslinghuis in #3964
- Fix detection of port at boot by @haslinghuis in #3978
- Fix baudrate by @haslinghuis in #3985
- Fix reboot by @haslinghuis in #3986
- Prevent closing serial twice on reboot by @haslinghuis in #3990
- Fix noselection and not closing dfu after flashing by @haslinghuis in #3993
- Move hex_parser.js worker to an async function in a module by @McGiverGim in #4004
- Define default values for options in the port handler by @McGiverGim in #4003
- Update messages.json typo fix by @GabrielKronfeld in #4016
- Fix dual permission dialog when flashing by @haslinghuis in #4013
- Fix crashing of presets and vtx tab by @haslinghuis in #4018
- Fix board name in logo and status bar by @McGiverGim in #4019
- Fix port selection blank under some situations by @McGiverGim in #4026
- Fix autobackup by @haslinghuis in #4033
- Fix CLI executeCommands by @McGiverGim in #4050
- Fix servo tab not shown by @haslinghuis in #4053
- Disable vbat-sagcompensation if voltage source is not ADC by @haslinghuis in #4025
- Fix auto_disarm_delay being reset by @haslinghuis in #4082
- Fix CLI buttons by @haslinghuis in #4094
- Fix ELRS UUID by @haslinghuis in #4096
- Fix feedforward smooth factor range by @haslinghuis in #4098
- Update GPS Positional DOP using polling timer by @haslinghuis in #4106
- Fix usage of splice by @haslinghuis in #4118
- Fix file extension blackbox logging and show flash space bar by @haslinghuis in #4132
- Fix deadband and getSerialRxTypes by @haslinghuis in #4167
- Fix notification by @haslinghuis in #4175
- Fix invocation and permissions for notifications by @haslinghuis in #4176
- Add metered connection and usability check by @haslinghuis in #4168
- Fix clipboard by @haslinghuis in #4183
- Fix motor reorder and direction dialogs: use IdleOffset value by @haslinghuis in #4181
- Fix: stop motors on save while testing by @haslinghuis in #4188
- Make telemetry default for jeti by @haslinghuis in #4201
- Fix HID mode connection by @haslinghuis in #4199
- Allow keyboard shortcuts by @haslinghuis in #4205
- Fix handling of custom configuration with 8 motors, enabling motor testing on octocopters by @Patronics in #4213
- Fix sensors and battery cellcount by @haslinghuis in #4221
- Fix BT uncaught and port-picker by @haslinghuis in #4223
- Fix i18n interpolation by @haslinghuis in #4235
- Fix [missing] build options by @haslinghuis in #4236
- Fix debug ATTITUDE by @haslinghuis in #4233
- Fix motor slider values by @haslinghuis in #4238
- Fix sponsor loading by @haslinghuis in #4250
- FIx missing crashflip arming disable flag by @haslinghuis in #4265
- Resolved attitude log disabled flag enum position issue by @demvlad in #4268
- Fix for preset options that are outside of any groups by @limonspb in #4285
- Display either flash or sdcard by @haslinghuis in #4290
- Updating MCU type list to maintain sync with firmware by @blckmn in #4299
- Fix socket reset by @haslinghuis in #4304
- Remove unused MSP message by @haslinghuis in #4325
- Fixed collapsed sidebar by @YarosMallorca in #4356
- Fix macOS useragentdata check by @haslinghuis in #4363
- Fix motorIdle being hidden in previous versions by @haslinghuis in #4364
- Remove platform from browser dependency check by @haslinghuis in #4366
- Fix intermittent backup corruption by @haslinghuis in #4392
- Fix flasher stylesheet hierarchy by @bigspeedfpv in #4398
- Add tab_container reveal/hide behavior by @ramonsaraiva in #4399
- Fix initialization of build options when MSP timeout occurs by @haslinghuis in #4400
- Fix OSD selection in firmware flasher by @haslinghuis in #4405
- Fix autoconnect by @haslinghuis in #4407
- Fix backwards compatibility for hover point by @haslinghuis in #4419
- Fix download button when offline button canceled by @haslinghuis in #4421
- Prevent multiple calls to handleDisconnect by @kedeng in #4431
- Fix caching issue by @haslinghuis in #4425
- Do not use OSD selection for 4.3.x by @haslinghuis in #4437
- Fix dfu permissions by @haslinghuis in #4438
- add x sampling to throttle curve preview to match firmware by @marc-frank in #4439
- Fix AT32 Configuration can't be saved on MacOS by @kedeng in #4455
- Fix throttle curve backwards compatibility by @haslinghuis in #4478
- Fix alignment backwards compatibility by @haslinghuis in #4481
- Reduce confusion selecting VTX by @haslinghuis in #4489
- Fix camera angle not being saved by @haslinghuis in #4487
- Fix violation in motor slider events by @haslinghuis in #4514
- Fix range for angle_limit by @haslinghuis in #4512
- Fix intermittent mouseover handler undefined issue by @haslinghuis in #4507
- Fix: Add null checks for search parameters, allowing proper functiona⦠by @VitroidFPV in #4517
- Fix missing callback by @haslinghuis in #4509
- Fix auto-connect by @haslinghuis in #4523
- Fix webserial device not found by @haslinghuis in #4529
- Fix virtual modes / messages by @haslinghuis in #4532
- Fix OSD search by @haslinghuis in #4533
- Prevent GATT operation in progress by @haslinghuis in #4540
- docs (motorsTelemetryHelp): spelling fix and add of denomination info⦠by @SH2282000 in #4546
- Fix: Handle BT-11 BLE boards by @VitroidFPV in #4547
- Fix manual protocol selection by @haslinghuis in #4554
- Fix TPA breakpoint range by @haslinghuis in #4558
- π§ Abort when already connected by @haslinghuis in #4560
- Add MSP_STATUS_EX to catch rate profile number by @haslinghuis in #4565
- Fix custom defines sometimes not applying in firmware flasher by @ggmaniack in #4575
- Fix Port Utilization by @haslinghuis in #4576
- Fix: Add fallback values to navigator.connection to prevent freezing on browsers that don't support it out of the box by @VitroidFPV in #4572
- Fix warnings by @haslinghuis in #4593
- Fix OSD elements search by @haslinghuis in #4591
- Fix for Chromium v140 select issue by @haslinghuis in #4597
- Workaround for Chrome 140 issues by @haslinghuis in #4600
- fix local en craft_name by @nerdCopter in #4609
- Fix gyro enable box by @haslinghuis in #4611
- Chrome v140 workaround - Replace multiple select in onboard logging by @haslinghuis in #4614
- Add missing VTXPOWER tooltip message by @haslinghuis in #4620
- Fix custom mag_alignment by @haslinghuis in #4624
- Fix THREE import by @haslinghuis in #4631
- Fix failsafe bug: Show return altitude field for fixed altitude mode on first load by @Copilot in #4629
- Fix GPS tab by @haslinghuis in #4633
- Enable servo tab for WING define by @haslinghuis in #4635
- Fix RC smoothing by @haslinghuis in #4637
- Fix intermittent invalid state error in loadfile (cli) by @haslinghuis in #4642
- Fix firmware flasher board clearance while switching releases by @haslinghuis in #4652
- Fix flash state by @haslinghuis in #4653
- Set focus and fix i18n by @haslinghuis in #4648
- Fix cleanup of autodetect event handlers by @haslinghuis in #4664
- Fix triggering firmware flasher tab twice by @haslinghuis in #4666
- Fix MSP callback on crc error by @haslinghuis in #4665
- Fix firmware flasher event cleanup by @haslinghuis in #4667
- Fix star (favorite) button not working in preset card by @YarosMallorca in #4678
- Fix autoconnect for plugins by @haslinghuis in #4674
- Slider grammatical fixes by @CarviFPV in #4605
- Guard MSP messages not included in build by @haslinghuis in #4721
- Set default port on permission request failure by @haslinghuis in #4719
- Fix wiki board info by @haslinghuis in #4744
- Fix: Virtual callback is handled in serial.js already by @haslinghuis in #4743
- Fix default_lang message by @haslinghuis in #4747
- Fix connection on new install / devices without permission by @haslinghuis in #4746
Translation
- don't translate single variable messages by @nerdCopter in #4338
Known Issues
New Contributors
- @SergiiGoncharov made their first contribution in #3922
- @jonas-becker made their first contribution in #3823
- @GabrielKronfeld made their first contribution in #4016
- @Six6siX made their first contribution in #4072
- @themrleon made their first contribution in #4079
- @YarosMallorca made their first contribution in #4081
- @Stampede10343 made their first contribution in #3940
- @bfmvsa made their first contribution in #4108
- @her01n made their first contribution in #4150
- @Patronics made their first contribution in #4213
- @ledvinap made their first contribution in #4244
- @GitHubEmploy made their first contribution in #4255
- @demvlad made their first contribution in #4248
- @jpmreece made their first contribution in #4105
- @CodinMoldovanu made their first contribution in #4303
- @hntirgeam made their first contribution in #4308
- @jesuslg123 made their first contribution in #4351
- @BoldBigflank made their first contribution in #4372
- @sEver made their first contribution in #4371
- @bigspeedfpv made their first contribution in #4398
- @ramonsaraiva made their first contribution in #4399
- @marc-frank made their first contribution in #4245
- @kedeng made their first contribution in #4431
- @bkleiner made their first contribution in #4446
- @DavidAnson made their first contribution in #4450
- @seeul8er made their first contribution in #4454
- @LarryKarhu made their first contribution in #4485
- @anwarminarso made their first contribution in #4496
- @syahmizul made their first contribution in #4516
- @SH2282000 made their first contribution in #4546
- @ggmaniack made their first contribution in #4575
- @Copilot made their first contribution in #4629
- @CarviFPV made their first contribution in #4605
- @purpole made their first contribution in #4691
- @Erics1337 made their first contribution in #4701
Full Changelog: 10.10.0...2025.12.1