-
Notifications
You must be signed in to change notification settings - Fork 161
Add HUMMINGBIRD_200RS #805
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?
Conversation
""" WalkthroughA new configuration header file for the HUMMINGBIRD_200RS flight controller board has been added. This file defines board-specific hardware settings, including MCU type, sensor and peripheral usage, pin assignments, timer mappings, default feature flags, and hardware resource allocations. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant Board_Config
participant MCU
participant Sensors
participant Peripherals
User->>Board_Config: Load HUMMINGBIRD_200RS/config.h
Board_Config->>MCU: Define AT32F435G as target MCU
Board_Config->>Sensors: Enable ICM42688P (gyro/accel) via SPI
Board_Config->>Peripherals: Configure flash (M25P16, W25Q128FV, W25N01G), MAX7456 OSD, UART, I2C, SPI, ADC
Board_Config->>Board_Config: Set pin assignments and timer mappings
Board_Config->>Board_Config: Enable default features (DSHOT, serial RX, blackbox, etc.)
Possibly related PRs
Suggested reviewers
📜 Recent review detailsConfiguration used: .coderabbit.yaml 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
✨ Finishing Touches
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
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: 0
🧹 Nitpick comments (3)
configs/HUMMINGBIRD_200RS_AT32F435/config.h (3)
43-56
: Pin assignments are accurate but could be clearer.
All motor, LED, and UART pins appear correct. For maintainability, group related definitions under comments (e.g.// Motor pins
,// LED pins
,// UART pins
) to improve readability.
59-67
: SPI pin definitions are consistent.
Each SPI bus has its SCK/SDI/SDO mapping defined. Consider grouping or adding section headers per SPI instance for easier navigation.
103-105
: User box configuration could use inline documentation.
PINIO1_BOX
,PINIO1_CONFIG
, andBOX_USER1_NAME
are defined correctly, but adding a brief comment explaining their roles and valid value ranges would aid future maintainers.
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
configs/HUMMINGBIRD_200RS_AT32F435/config.h
(1 hunks)
🔇 Additional comments (7)
configs/HUMMINGBIRD_200RS_AT32F435/config.h (7)
22-28
: Target MCU and board identifiers look correct.
Values forFC_TARGET_MCU
,BOARD_NAME
, andMANUFACTURER_ID
follow existing conventions and align with the hardware naming scheme.
29-42
: Sensor and peripheral enable flags are properly defined.
All requiredUSE_*
macros for accelerometer, gyroscope, GPS, magnetometer, barometer, flash, and OSD (MAX7456) are present and correctly spelled.
69-76
: ADC and chip-select pins appear correct.
Verify thatPINIO1_PIN
used for the “VTX 10V” feature matches the schematic and board silkscreen.
77-83
: Timer pin mapping macro is well-formed.
The multi-lineTIMER_PIN_MAPPING
macro correctly omits a trailing backslash on the last entry to close the definition.
84-86
: ADC instance and DMA option are valid.
ADC_INSTANCE = ADC1
withADC1_DMA_OPT = 12
aligns with other STM32F4 configurations.
87-96
: Clock and peripheral instances need verification.
EnsureSYSTEM_HSE_MHZ = 8
matches the external crystal on the board, and confirm thatSPI1
,SPI2
,SPI4
,I2CDEV_2
,SERIAL_PORT_USART1
, andUSART2
assignments correspond to the actual hardware wiring.
97-103
: Default features and meter scales require calibration.
TheDEFAULT_VOLTAGE_METER_SCALE (110)
andDEFAULT_CURRENT_METER_SCALE (307)
should reflect the ADC divider and shunt resistor on this board—please verify these values with a test bench.
Co-authored-by: ot0tot <[email protected]>
Co-authored-by: ot0tot <[email protected]>
Co-authored-by: ot0tot <[email protected]>
Co-authored-by: ot0tot <[email protected]>
Co-authored-by: ot0tot <[email protected]>
I'm still afraid this looks like a duplicate of the It has the same board name ("HummingBird 200 RS"), the same processor (AT32F435G) and seems to be made by the same manufacturer (NewBeeDrone). Just other pinouts. Is the board you're adding now a "v2" version of the board added back in february perhaps?
|
Please remove the NBD_HUMMINGBIRD 200 RS; it's deprecated and replaced by this current version. I apologize for not having specified this earlier – that was my error. Thanks for the reminder, @osirisinferi ! |
Suggest renaming board to not conflict with existing board.
Add HUMMINGBIRD_200RS target
Summary by CodeRabbit
Summary by CodeRabbit