Skip to content

Add MICOAIR743V2#1059

Open
haslinghuis wants to merge 1 commit into
betaflight:masterfrom
haslinghuis:MICOAIR743
Open

Add MICOAIR743V2#1059
haslinghuis wants to merge 1 commit into
betaflight:masterfrom
haslinghuis:MICOAIR743

Conversation

@haslinghuis
Copy link
Copy Markdown
Member

@haslinghuis haslinghuis commented Mar 20, 2026

This target does not comply with Betaflight Manufacturer Design Guidelines:

  • no schematics available
  • does not follow Betaflight Connector Standard
  • using BMI270 and SPA006
  • needs dshot_bitbang when using motor 7 & 8
  • perhaps we remove motor 5 - 8 and add AIO suffix.

Reference: https://micoair.com/flightcontroller_micoair743v2_aio_45a/

Summary by CodeRabbit

  • New Features
    • Added support for the MICOAIR743V2 flight controller board with full hardware configuration including accelerometer, gyro, barometer, SD card, and OSD capabilities.

@haslinghuis haslinghuis self-assigned this Mar 20, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Mar 20, 2026

Walkthrough

Added a new Betaflight board configuration header for the MICOAIR743V2 flight controller based on the STM32H743 MCU. The file defines pin mappings for motors, UARTs, I2C, SPI, ADC, and SD card interfaces, along with hardware feature flags for accelerometer, gyro (BMI270), barometer (DPS310), SD card support, and MAX7456 OSD.

Changes

Cohort / File(s) Summary
MICOAIR743V2 Board Configuration
configs/MICOAIR743V2/config.h
New board config header with MCU target (STM32H743), board identifiers, hardware feature flags (sensors, OSD, SD card), complete pin mappings for motors/LEDs/UARTs/I2C/SPI/ADC/SDIO, DMA/ADC/timer options, peripheral instance assignments, and TIMER_PIN_MAPPING macro.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Possibly related PRs

Suggested reviewers

  • ot0tot
  • nerdCopter
  • blckmn
🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The PR description explicitly documents non-compliance with Betaflight guidelines, missing schematics, and hardware limitations, but does not follow the required template structure with mandatory checklist items. Complete the PR template with all mandatory sections: add checklist items indicating schematics review status, hardware testing results, guideline compliance confirmation, and connector standard adherence. Clarify whether this PR is for approval or documentation of known issues.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title 'Add MICOAIR743V2' is concise and clearly summarizes the main change: adding a new board configuration for the MICOAIR743V2 flight controller.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Warning

CodeRabbit couldn't request changes on this pull request because it doesn't have sufficient GitHub permissions.

Please grant CodeRabbit Pull requests: Read and write permission and re-run the review.

👉 Steps to fix this

Actionable comments posted: 1

🧹 Nitpick comments (1)
configs/MICOAIR743V2/config.h (1)

108-131: LGTM!

Peripheral configuration is well-structured:

  • Gyro (SPI3) and MAX7456 OSD (SPI1) on separate SPI buses, avoiding blocking conflicts
  • Barometer and magnetometer properly distributed across I2C buses
  • Conditional UART assignments for HD OSD and GPS are appropriate
Nitpick: Add trailing newline
 `#define` USE_SPI_GYRO
 `#define` GYRO_1_SPI_INSTANCE SPI3
+
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@configs/MICOAIR743V2/config.h` around lines 108 - 131, The file ends without
a trailing newline; add a single newline character at EOF immediately after the
final preprocessor line (e.g., after "#define GYRO_1_SPI_INSTANCE SPI3") so the
file ends with a newline to satisfy POSIX/text-file conventions and prevent
tooling diffs.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@configs/MICOAIR743V2/config.h`:
- Around line 26-27: Add a maintainer comment to configs/MICOAIR743V2/config.h
near the top where BOARD_NAME and MANUFACTURER_ID are defined: include
maintainer name and contact (GitHub handle or email) in a single-line or block
comment directly above or below the `#define` lines (e.g., reference BOARD_NAME
and MANUFACTURER_ID) so the target contains required maintainer metadata.

---

Nitpick comments:
In `@configs/MICOAIR743V2/config.h`:
- Around line 108-131: The file ends without a trailing newline; add a single
newline character at EOF immediately after the final preprocessor line (e.g.,
after "#define GYRO_1_SPI_INSTANCE SPI3") so the file ends with a newline to
satisfy POSIX/text-file conventions and prevent tooling diffs.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: b8430fbc-3d0e-4ddf-9bbd-0b274feffecc

📥 Commits

Reviewing files that changed from the base of the PR and between edb8a26 and 4fe0cb3.

📒 Files selected for processing (1)
  • configs/MICOAIR743V2/config.h

Comment on lines +26 to +27
#define BOARD_NAME MICOAIR743V2
#define MANUFACTURER_ID MICO
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify MICO is a registered manufacturer
rg -n "^MICO#" Manufacturers.md || echo "MICO not found in Manufacturers.md"

Repository: betaflight/config

Length of output: 95


🏁 Script executed:

# Check Manufacturers.md format and content
head -50 Manufacturers.md
echo "---"
# Check if MICO appears anywhere in the repo
rg -i "mico" --type-list
rg -i "mico" configs/ -A 2 -B 2 | head -30

Repository: betaflight/config

Length of output: 4034


🏁 Script executed:

# Check the full config.h file to identify other potential issues
wc -l configs/MICOAIR743V2/config.h

Repository: betaflight/config

Length of output: 94


🏁 Script executed:

# Read the full new config.h
cat -n configs/MICOAIR743V2/config.h | head -40
echo "---"
# Check if MICOAIR743 (existing) has maintainer info
grep -i "maintainer\|author\|github" configs/MICOAIR743/config.h || echo "No maintainer info found in MICOAIR743"
echo "---"
# Check git log for MICOAIR743 to see if it was merged
git log --oneline --all -- configs/MICOAIR743/config.h 2>/dev/null | head -5

Repository: betaflight/config

Length of output: 1601


🏁 Script executed:

# Check if MICO should be added to Manufacturers.md - search for any documentation/PR about it
git log --oneline --all --grep="MICO" 2>/dev/null | head -10
git log --oneline --all -- Manufacturers.md 2>/dev/null | head -10

Repository: betaflight/config

Length of output: 671


🏁 Script executed:

# Search for MICO in Manufacturers.md with correct delimiter pattern
grep -n "MICO" Manufacturers.md
echo "---"
# Also check current state
cat Manufacturers.md | grep -E "^\|MICO\|"

Repository: betaflight/config

Length of output: 149


🏁 Script executed:

# Check the full Manufacturers.md to see all entries
wc -l Manufacturers.md

Repository: betaflight/config

Length of output: 81


Add maintainer information.

Maintainer information is required for target submissions according to the Requirements for Submission of New and Updated Targets. Please add a comment with maintainer details (name, GitHub handle, or email).

Note: The manufacturer ID MICO is properly registered in Manufacturers.md.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@configs/MICOAIR743V2/config.h` around lines 26 - 27, Add a maintainer comment
to configs/MICOAIR743V2/config.h near the top where BOARD_NAME and
MANUFACTURER_ID are defined: include maintainer name and contact (GitHub handle
or email) in a single-line or block comment directly above or below the `#define`
lines (e.g., reference BOARD_NAME and MANUFACTURER_ID) so the target contains
required maintainer metadata.


#define USE_ACC
#define USE_GYRO
#define USE_ACCGYRO_BMI270
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New targets with BMI270 not accepted

#define MOTOR6_PIN PB0
#define MOTOR7_PIN PD12
#define MOTOR8_PIN PD13
#define LED_STRIP_PIN PD14
Copy link
Copy Markdown
Contributor

@ot0tot ot0tot Mar 20, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Timer conflicts with M7 and M8

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could remove M5-M8 and add AIO suffix.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it an AIO?

Copy link
Copy Markdown
Member Author

@haslinghuis haslinghuis Mar 20, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AM32 included

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants