ci: publish .uf2 test builds (RP2350) alongside .hex in PR releases - #11858
ci: publish .uf2 test builds (RP2350) alongside .hex in PR releases#11858sensei-hacker wants to merge 293 commits into
Conversation
…cceleration function
…driver support on the STM32Fxxx series.
…ALs do not support it.
… the MATEKF765SE. Allocate memory for the bxCan write and read messages.
…dle to the CAN instance to avoid a dangling pointer.
…fer and the task reads from the ring buffer. Fix missing include for math.h
Expand dronecan_messages_unittest.cc from 5 to 14 tests covering NodeStatus, Fix v1, Auxiliary, boundary values, and data type verification. Create canard_unittest.cc with 30 tests for the libcanard core: init/node ID, memory pool, CRC-16/CCITT, float16 conversion, transfer ID logic, DLC conversion, single/multi-frame TX, RX frame processing, and pool statistics. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The BatteryInfo message already contains current data which was being stored in dronecanBattSensorGetAmperage(), but this wasn't integrated with INAV's battery metering system. Changes: - Add CURRENT_SENSOR_CAN enum value in battery_config_structs.h - Add case handler in battery.c to read current from DroneCAN - Update settings.yaml to expose CAN option for current_meter_type Users can now select 'CAN' as the current_meter_type in CLI when using DroneCAN-compatible battery sensors. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
PLL1 VCI input is HSE/M = 2 MHz on all H7 targets, which falls in the 2-4 MHz range (VCIRANGE_1). The previous VCIRANGE_2 (4-8 MHz) was incorrect and affected PLL charge pump calibration. Fixes iNavFlight#11602
Remove redundant prose that duplicated the assert, remove board-specific name from shared init code, and shorten the assert slug to match codebase conventions.
…SP changes not in scope)" This reverts commit 92cf6ab.
…rning" This reverts commit 3b393c5.
…' into fix/11594-pll2-dynamic-m-divider
…mic-m-divider fix: make PLL2M dynamic to keep VCO=800MHz for any HSE frequency (closes iNavFlight#11594)
Fix: Prioritize Airspeed over GPS for turn acceleration compensation
…2688-devhw Fix ICM42688 bus device hardware type on GEPRC targets
…ftrf Basic support for softRF
…x_fixed_value VTOL.md: Rename smix max fixed value
* Add new target: AEDROXH7 (Airbot Systems AEDROX H7) STM32H743 flight controller with ICM42688P gyro, W25N01G NAND flash, DPS310 baro, MAX7456 analog OSD, HD OSD via MSP DisplayPort, and 8 motor outputs split across TIM1 and TIM8. SPI3 MOSI on PB2 requires explicit GPIO_AF7_SPI3 override. Magnetometer enabled on I2C1 (hardware present, not in BF config). * AEDROXH7: replace UART4 with DroneCAN on PD0/PD1 PD0/PD1 connect to the CAN transceiver (CANL/CANH pads visible on board), not to a user-accessible UART4 header. Replace UART4 with USE_DRONECAN defines. CAN standby pin TBD pending INAV syntax confirmation. * AEDROXH7: add CAN1_STANDBY PD3 (not yet tested) * CI: re-trigger build to pick up fc_msp.c sign-compare fix in maintenance-9.x
…nance-10.x Removes the DroneCAN DSDLC library (lib/main/Dronecan -- entirely new in 10.x) and reverts STM32F4/F7/H7 HAL libraries to their maintenance-9.x versions. 932 files. No post-merge commits touched lib/ -- this is a clean mechanical revert.
Reverts 319 STM32CubeF7 SDK extraction files introduced by the accidental maintenance-10.x merge. No post-merge commits touched this directory -- this is a clean mechanical revert.
…-merge Revert accidental merge of maintenance-10.x into maintenance-9.x
Removed redundant phrases and clarified manufacturer information.
…e-ordering-stdperiph drivers: fix DMA request disable ordering in timer IRQ handlers and stop functions
Add support for XTX XT25F128F nor flash chip
JHEMCUF435: enable UART2
…WINGMINI Add FlyingRC F4Wing Mini target updates
Backport of iNavFlight#11856 to maintenance-9.x: the pr-test-builds workflow runs from master (workflow_run default-branch behavior), and master is fed from maintenance-9.x, so this needs to land on 9.x to take effect for PR builds. - ci.yml: upload ./build/*.uf2 alongside *.hex in the firmware matrix and single-target jobs (upload-artifact unions the globs and defaults if-no-files-found: warn, so jobs without a .uf2 are unaffected). - pr-test-builds.yml: attach hexes/*.uf2 to the PR test-build release when present (guarded so PRs with no .uf2 don't pass a literal unmatched glob), and mention it in the release notes. The .uf2 itself is produced by RP2350 targets via the in-tree elf2uf2.py (python3, always on runners); no picotool dependency.
|
ⓘ Qodo reviews are paused because the subscription is no longer active. Ask your workspace admin to reactivate the subscription to resume reviews. Manage billing |
PR Summary by QodoPublish RP2350 UF2 Assets in PR Test Releases
AI Description
Diagram
High-Level Assessment
Files changed (2)
|
Code Review by Qodo🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)
Great, no issues found!Qodo reviewed your code and found no material issues that require reviewTip of the day💡 Did you know, you can add REVIEW.md to your repo root and Qodo follows it on every PR |
|
Closing — target should be release/9.1 (master is fed from release/9.1, not maintenance-9.x); reopening against release/9.1. |
Summary
Backport of #11856 (already merged to
maintenance-10.x) tomaintenance-9.x.The
PR Test Buildsworkflow is triggered byworkflow_run, which executes from the default branch (master). Since master is fed frommaintenance-9.x, this change must land on 9.x (and then ride 9.x → master) before PR test-build releases can attach.uf2images.RP2350_PICO targets (see #11854) generate a
.uf2for BOOTSEL drag-and-drop flashing in addition to the.hexthat pr-test-builds publishes.Changes
.github/workflows/ci.yml./build/*.uf2alongside./build/*.hexin the firmware matrix and single-target jobs (multiline path;upload-artifact@v4unions the globs and defaultsif-no-files-found: warn, so jobs without a.uf2are unaffected)..github/workflows/pr-test-builds.ymlhexes/*.uf2to the PR test-build release when present, guarded so PRs without a.uf2don't pass a literal unmatched glob togh release create..uf2in the release notes.The
.uf2is produced by RP2350 targets via the in-treeelf2uf2.py(python3, always on runners) — no picotool / apt dependency (picotool isn't packaged in Ubuntu 24.04).Notes
maintenance-10.xversion of the change forpr-test-builds.yml;ci.ymlcarries only the.uf2upload-glob hunks (9.x lacks the size-report steps that 10.x has)..uf2-producing target: upload glob matches nothing (warn-only), release asset list stays.hex-only.