-
Notifications
You must be signed in to change notification settings - Fork 205
Add AXISFLYINGH7MINI #822
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Add AXISFLYINGH7MINI #822
Conversation
WalkthroughAdds a new board configuration header for the AXISFLYINGH7MINI flight controller, declaring MCU/board identifiers and exhaustively mapping sensors, peripherals, pins, timers, DMA, UART/I2C/SPI instances, default device settings, beeper and pin-IO configurations. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
participant Build as Build System
participant Firmware as Firmware Core
participant Config as configs/AXISFLYINGH7MINI/config.h
Build->>Firmware: target=AXISFLYINGH7MINI
Firmware->>Config: #include board config
Note right of Config: Provides MCU, pins,\nperipherals, timers, DMA, defaults
Config-->>Firmware: compile-time macros & pin defines
Firmware->>Hardware: initialize drivers using defines
Hardware-->>Firmware: peripherals ready
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🧹 Nitpick comments (3)
configs/AXISFLYINGH7MINI/config.h (3)
68-71: Document I2C bus usage.Add inline comments indicating which sensors use I2C1 vs. I2C2 (e.g., barometer vs. external magnetometer) to aid future maintainers.
130-133: Reconsider default DSHOT implementation.Hardware DSHOT support is available on STM32H7—using bitbang by default may underutilize built-in timers. Consider defaulting to hardware DSHOT or document why bitbang is preferred.
143-143: Add trailing newline.Ensure the file ends with a newline to comply with POSIX text file conventions.
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
configs/AXISFLYINGH7MINI/config.h(1 hunks)
🧰 Additional context used
🧠 Learnings (1)
configs/AXISFLYINGH7MINI/config.h (1)
Learnt from: haslinghuis
PR: betaflight/config#0
File: :0-0
Timestamp: 2025-06-02T16:16:20.197Z
Learning: In STM32F405-based flight controller configurations, timer pin mappings must be carefully analyzed for DMA stream conflicts, especially between motor timers, LED strip timers, and SPI DMA assignments. Changes to TIMER_PIN_MAPPING should include verification that all required peripherals (motors, LED strip, blackbox SPI) can coexist without DMA conflicts.
🔇 Additional comments (8)
configs/AXISFLYINGH7MINI/config.h (8)
1-20: Skip license header review.Standard GPL header appears consistent with other Betaflight configs.
22-28: Verify BOARD_NAME and MANUFACTURER_ID formatting.Ensure these macros use the same literal style (e.g., quoted strings) as existing board configs for consistency in build scripts and UI display.
39-50: Validate motor & LED pin mappings against schematic.Double-check that
MOTOR1_PIN–MOTOR8_PINandLED_STRIP_PINassignments match the physical PCB silk-screen and that no GPIO remapping conflicts exist.
52-67: Missing UART5 pin assignments?You specify TX/RX for USART1–4 and UART6–8 but skip USART5. Verify if USART5 is unavailable on STM32H743 or if its pins were overlooked.
103-112: Validate timer pin mapping against DMA streams.Per retrieved learnings, confirm that the timers for motors (channels 0–7) and the LED strip (channel 8) do not share DMA streams used by SPI (flash, gyros, OSD) to avoid runtime collisions.
114-117: Confirm ADC DMA channel selections.Ensure
ADC1_DMA_OPT = 9,ADC2_DMA_OPT = 10, andADC3_DMA_OPT = 11correspond to the correct stream/channel mapping on STM32H743 so ADC sampling isn’t lost.
135-138: Verify PINIO box IDs.Confirm that
PINIO1_BOX = 40andPINIO2_BOX = 41align with the Betaflight UI/config schema for these configurable pins.
139-142: SPI instance assignments look correct.
GYRO_1_SPI_INSTANCE = SPI1(PA5),GYRO_2_SPI_INSTANCE = SPI4(PE12),FLASH_SPI_INSTANCE = SPI3(PB3), andMAX7456_SPI_INSTANCE = SPI2(PB13) align with the SCK pin definitions.
Checklist
Summary by CodeRabbit